Чи може людина посередині не просто взяти ключі, помінені супротивниками, змінити ключі, а потім розшифрувати та зашифрувати повідомлення ще раз?
Так вони можуть.
Протокол обміну ключами (наприклад, "підручникова" версія DH ) захищений від підслуховування (тобто, просто спостерігати за тим, що передається по каналу), але повністю руйнується проти атак "людина в середині" (MITM), ви заявили.
Сертифікати - це спроба виправити це, але виникає ще одна проблема: як ви можете забезпечити, щоб обидві сторони отримували правильний сертифікат? Очевидно, що ви не можете просто надіслати сертифікати по незахищеному каналу, оскільки це знову піддається атаці MITM.
Рішення - існування альтернативного, (повністю) захищеного каналу . Це буде або дві особи, які зустрічаються особисто і обмінюються своїми сертифікатами фізично або через якийсь альтернативний, надійний канал (наприклад, по телефону, якщо можна довіряти).
У комп'ютерних мережах альтернативний канал, як правило, є інфраструктурою відкритого ключа (PKI). Це означає, що у вашій операційній системі чи браузері є набір попередньо налаштованих кореневих сертифікатів, з яких підписуються інші сертифікати (і, можливо, навіть подальші сертифікати, використовуючи їх як проміжні сертифікати ). Отже, коли ви відвідуєте якийсь веб-сайт, він представляє підписаний сертифікат, який підписується за допомогою (ланцюжка) сертифікатів, яким ви вже довіряєте. Тоді, використовуючи цей сертифікат, можливий аутентифікований обмін ключами (наприклад, узгодити ефемерний ключ для використання із звичайним симетричним шифруванням).