Как оба клиента знают закрытые ключи? - PullRequest
0 голосов
/ 29 мая 2018

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

Джон отправляет Алисе сообщение «Hello World».

Сообщение зашифровывается с помощью открытого ключа и отправляется

Алиса расшифровывает его с помощью закрытого ключа.

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

Мне просто интересно, и было бы здорово, если кто-нибудь может объяснить, пожалуйста, спасибо!

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

В простейшей модели:

  • Алиса генерирует пару ключей Apub / Apriv.
  • Бобу не нужны ключи, если это RSA.
  • Алиса отправляет Апуба Бобу.Она делает это безопасно (упражнение оставлено читателю).
  • Боб шифрует некоторые данные, используя Apub.
  • Боб отправляет свои зашифрованные данные Алисе.
  • Алиса знала a priori (простой сценарий, помните?), Какой ключ использовался, и использует Apriv для восстановления данных.

В более сложных моделях объекты могут иметь много закрытых ключей.Помимо «попробовать все» мы можем добавить некоторую структуру.

  • Алиса создает пару ключей Apub / Apriv.Она надежно сохраняет их (упражнение оставлено читателю).
  • Алиса получает сертификат открытого ключа X.509 с Apub в качестве субъектного открытого ключа.
    • Самостоятельная подпись - это хорошо, или CA-выдача - это всегда хорошо.
  • Боб все еще счастливый человек, которому не нужно управлять ключами.Это облегчает его аудит соответствия FISMA / PCI / etc.
  • Алиса отправляет свой сертификат Бобу.Она делает это безопасно (ELTTR).
  • Боб (использует программное обеспечение, которое) извлекает Apub из сертификата и шифрует данные, используя его.
  • Боб (программное обеспечение) создает форматированное сообщение, котороевключает в себя способ определить, какой сертификат был использован, и что такое зашифрованный контент.
    • Может быть, он просто отправляет весь сертификат обратно.(Вероятно, нет)
    • Возможно, он отправляет сертификату значения Имя эмитента и серийный номер.
    • Может быть, он отправляет значение расширения идентификатора ключа субъекта из сертификата.
    • У него многоопций, если Алиса понимает, что он делает.
  • Боб отправляет это отформатированное сообщение Алисе.
  • Алиса определяет, какой из ее нескольких сертификатов был адресован в отформатированномсообщение.
  • Алиса имеет систему управления ключами и может выяснить, какой закрытый ключ использовать на основе сертификата.
  • Алиса использует Apriv для восстановления данных.

Более сложная модель - это упрощенная форма Enveloped CMS (синтаксиса криптографических сообщений) со стороны Боба.Алиса прочитала сообщение и использовала что-то вроде хранилища сертификатов Windows (которое может переносить идентификаторы в хранилища криптографических ключей Windows для закрытых ключей), чтобы определить сертификат и, в конечном итоге, закрытый ключ.

Множество разных вещей может бытьсделано на «более сложном» слое.Если Алисе действительно нравится управлять ключами, она может создать разные ключи для каждого человека, с которым общается, а затем из сообщений «Бобнесс» или «Давиосити» узнать, что ей следует использовать закрытый ключ, соответствующий открытому ключу, который она дала Бобу или Дейву..

0 голосов
/ 29 мая 2018

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

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

Этот ответ в некоторой степени предполагает, что мы говорим о RSA.Существует много асимметричных криптосистем, использующих закрытые / открытые ключи, которые могут не совсем соответствовать смыслу используемой мной терминологии.

...