2013-10-13 2 views
2

Я пытаюсь понять эту страницу от Microsoft http://technet.microsoft.com/en-us/library/ms189586.aspx.Почему асимметричные ключи более безопасны?

Согласно документации «... они обеспечивают более высокий уровень безопасности, чем симметричное шифрование». Я получаю, что вы сначала шифруете данные с помощью симметричных, а затем шифруете этот ключ, используя другой метод (симметричный или асимметричный), чтобы избежать необходимости повторного шифрования данных и преимуществ скорости.

То, что я не понимаю, - это то, почему выбор асимметричного симметричного для этого второго уровня более безопасен? Это просто потому, что асимметричный может быть затем зашифрован основным ключом базы данных? Возможно ли, чтобы один пользователь зашифровал данные другому пользователю в той же базе данных? Я не вижу другого преимущества, которое вы имели бы в базе данных.

+0

Этот вопрос не соответствует теме, поскольку речь идет о криптографии, а не о программировании. –

+0

Не знаете, почему вопрос темы был изменен. Мой вопрос касался того, как асимметричные ключи SQL Server функционируют среди пользователей в базе данных. – ElPresidente

ответ

4

Учитывая отсутствие контекста на указанной странице я бы предположить, что они имели в виду:

В ключевых кто-симметричном режиме, который имеет общих секретный ключ может зашифровать или расшифровать что-нибудь. При использовании асимметричного ключа нет единого общего секрета.

Как Wikipedia notes, то «... требование, что обе стороны имеют доступ к секретному ключу является одним из главных недостатков ключа шифрования симметричного ...»

добавлен в ответ на комментарий:

Предположим, у меня есть привязка D, которую я хочу зашифровать с помощью симметричного общего ключа. Я вычислил S(D), чтобы получить D'. Если у вас есть ключ, необходимый для дешифрования D', у вас также есть ключ для вычисления E ⇔ E', где E и E' - любые произвольные простые и строчные тексты.

в асимметричных Наоборот крипт, если я использовал свой секретный ключ для вычисления P(D), чтобы получить D'' все, что вы доступны для вас мой открытого ключа, который позволяет вычислить Q(D'') → D но P(x) не доступна для вас, так что вы не можете создать новый cyphertext. Вы не можете использовать свой закрытый ключ, потому что у вас его нет. Вы не можете отдать свою тайну или использовать ее сами, потому что у вас ее никогда не было. Это то, что делает криптографию с общим ключом (симметричной) принципиально менее безопасной, чем криптоалгоритм с открытым ключом (асимметричным).

+0

Я получаю информацию о том, как отправлять информацию другим, почему асимметричность в этом отношении лучше. Но внутри SQL Server, кто является второй стороной? Это просто, что другой может зашифровать информацию, которая только расшифровывается вашей учетной записью? – ElPresidente

+0

Спасибо за добавление. Из того, что я вижу из контекста SQL Server, асимметричные ключи должны принадлежать определенному вводу SQL Server, и поэтому дешифрование может происходить только из этой учетной записи. И наоборот, симметричный ключ может использоваться несколькими учетными записями. Хотя он выглядит, есть параметр AUTHORIZATION для симметричных ключей SQL, вы действительно хотите контролировать это с помощью сертификата или асимметричного ключа. Я надеюсь, что мое понимание правильное – ElPresidente

+0

Я полагаю, что это действительно зависит от того, будет ли ваша зашифрованная информация использоваться третьими лицами, если нет, то открытый ключ становится менее полезным. – bendataclear

Смежные вопросы