1)🏠 ............🚌->........................................... 🏣[🔑🎫]
Вы отправляете на вокзал пустой автобус, водителя которого просите привезти сертификат с публичным ключом вокзала.
2) 🏠 ...................................<-🚌[🎫]........... 🏣[🔑]
Вокзал присылает автобус к вам домой, в нём лежит сертификат вокзала.
3) 🕵️ [🎫] => ✅ 🏠🚌............................. 🏣[🔑]
Вы проверяете, чтобы сертификат был красивым и ровно от того вокзала, в который вы отправляли автобус. Так же проверяете лицензионную голограмму (корневой сертификат, выданный надёжным центром сертификации) и срок годности.
4) 🕵️🏠............[🔐] 🚌->............................ 🏣 [🔑]
Если с сертификатом всё ок, вы генерируете симметричный ключ на своей стороне и шифруете его публичным ключом из сертификата. Отправляете автобус с вашим секретом. Уже на этом этапе никто по пути следования не сможет узнать ваш секретный ключ (помните, да? расшифровать это может только владелец приватного ключа, а владеет им только вокзал)
5) [🔑]🏠..........<-🚌[🔐boobs🔐].......... 🏣 [🔑]
Вокзал расшифровывает своим приватным ключиком сообщение. А там - уже ваш секретный симметричный ключ.
Всё. Теперь у вокзала и у вас есть ключ, о котором никто не знает. Этим ключом и создаётся то самое "энергетическое поле" вокруг вашего автобуса. Дальше уже работает только быстрое симметричное шифрование. Красиво, не правда ли?
Вот тут и тут можно найти более техническое и детальное описание процесса handshake'а. Так же очень советую глянуть (5min) визуализацию и объяснение работы алгоритма Диффи-Хеллмана.
#security #библиотека_знаний