Как работает криптография с открытым / закрытым ключом, кто генерирует пару ключей?

1751
Steve Ward

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

Мое "базовое" понимание заключается в том, что я могу генерировать открытый и закрытый ключи, кодировать файл с использованием открытого ключа, а наш партнер может расшифровать с помощью предоставленного нами секретного ключа. Но это звучит немного странно для меня, что мы будем делиться секретным ключом. Есть только один надежный партнер.

Я что-то пропустил?

5
Нет; Вы генерируете 2 ключа; Ваш друг генерирует 2 ключа; Они посылают вам открытый ключ; вы посылаете им свой ключ publix; Теперь вы шифруете файл их открытым ключом, а они расшифровывают его своим закрытым ключом, и отправляете вам зашифрованное сообщение с вашим ключом publix, а вы дешифруете его своим закрытым ключом, любой другой метод не является безопасным .... Ramhound 8 лет назад 2
[Руководство для начинающих по PGP] (http://www.bitcoinnotbombs.com/beginners-guide-to-pgp/) DavidPostill 8 лет назад 0
Вы делитесь только своим открытым ключом, и именно этим они шифруют данные перед тем, как отправлять их вам. Вы шифруете данные для них с помощью их открытого ключа, прежде чем отправить их им. Открытый ключ - это просто открытый ключ, так что любой может безопасно шифровать файлы, но никогда не будет закрытым. Как будто вы даете им блокировку для блокировки файла, но только у вас есть ключ; открытый ключ подобен замку (любой может использовать замок), а закрытый ключ подобен ключу, с помощью которого его могут разблокировать только те, кто предназначен для его разблокировки; так что с шифрованием на уровне файлов PGP, по крайней мере, это простая аналогия. Pimp Juice IT 8 лет назад 0
Почему это было отвергнуто? Честный вопрос - мое понимание было неверным - вот почему я разместил сообщение, и это может помешать другим совершить ошибку. Спасибо тем, что предложили конструктивный ответ. Steve Ward 8 лет назад 0
@JUICED_IT Не могли бы вы добавить свой комментарий в качестве ответа, это правильно. Paul 8 лет назад 0
Если это однократная передача, и у вас есть безопасный способ отправки ключевой фразы, вы можете использовать обычное (`-c`) шифрование только с помощью ключевой фразы ... или даже службу веб-передачи с шифрованием (например, mega.nz). * если вы доверяете им * Xen2050 8 лет назад 0
Всякий раз, когда вы создаете пару ключей, выбор которых является открытым, а другой - произвольным, любой из них расшифрует данные, зашифрованные с помощью другого. Мы просто называем тот, который открыт каждому, открытым ключом. Если вы просто используете их для одного сообщения, имя не имеет значения. Barmar 8 лет назад 0

3 ответа на вопрос

11
Pimp Juice IT

PGP Encryption - как работают открытые и закрытые ключи

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

Открытый ключ - это просто [открытый], так что любой может безопасно иметь его для шифрования файлов, но никогда не частный, поскольку он всегда остается закрытым для человека, которому необходимо расшифровать файлы.

Обычно вы настраиваете программное обеспечение PGP и генерируете пару ключей. По сути, у вас будет личный ключ и открытый ключ, и это пара ключей.

Вы должны хранить закрытый ключ в безопасном месте с ограниченным доступом, и вы можете делиться открытым ключом с другими объектами, которые имеют функциональность шифрования / дешифрования PGP, чтобы вы могли обмениваться файлами с помощью этой технологии.


PGP File-Level Encryption Простая аналогия

Как будто вы даете им блокировку для блокировки файла (ваш открытый ключ), но только у вас есть ключ, чтобы разблокировать его (ваш закрытый ключ).

  • Открытый ключ похож на замок, и каждый может использовать замок для [шифровать] файлы блокировки
  • Закрытый ключ, как ключ к замку, и только те, предназначенных для [расшифровывает] разблокировать его можно и закрытый ключ, чтобы сделать это.

Примеры

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

  3. Вы шифруете файлы с помощью открытого ключа другого объекта, а затем отправляете им файлы, и только они могут расшифровать эти файлы с помощью своего закрытого ключа из своей пары ключей.

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


Дальнейшее чтение

5
Jens Erat

Рассмотрим закрытый ключ и реальный ключ, а открытый ключ - замок. Кто бы вы ни передавали замок, он может что-то закрыть (например, хранилище с секретным сообщением), и только вы (сохраняя личный ключ в безопасности) можете открыть его снова.

Example for public/private key cryptography

И помните, что замок является цифровым: его легко копировать неограниченное количество раз. На самом деле, вы часто делитесь им в каком-то общедоступном каталоге со всеми, кто хочет его иметь.

Мое "базовое" понимание заключается в том, что я могу генерировать открытый и закрытый ключи, кодировать файл с использованием открытого ключа, а наш партнер может расшифровать с помощью предоставленного нами секретного ключа. Но это звучит немного странно для меня, что мы будем делиться секретным ключом. Есть только один надежный партнер.

И наоборот: получатель генерирует пару ключей и передает вам открытый ключ («замок»). Теперь только получатель может расшифровать сообщение, так как он единственный, кто владеет закрытым ключом.

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

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

2
Lenne

Дополнительное использование: 5: вы (дополнительно) шифруете файл с помощью своего закрытого ключа. Он может быть расшифрован только вашим открытым ключом. Получатель может быть уверен, что вы отправитель.

Похожие вопросы