Я не совсем понимаю теорию хранения открытых ключей на сервере. В сейфе аналог публичных / приватных ключей, для разблокировки Алисы В поле Алиса хранится закрытый ключ, а открытый ключ передается Бобу. Казалось бы, сервер играет роль сейфа, так почему он хранит открытый ключ?
Имейте в виду, что сервер ДЕЙСТВИТЕЛЬНО имеет закрытый и открытый ключи, которые полностью отделены от пары ключей, которую вы создаете как пользователь. Закрытый ключ для сервера обычно хранится вместе с конфигурацией сервера, а открытый ключ передается сервером при попытке подключения. Ваш клиент сравнивает открытый ключ сервера с вашим файлом known_hosts. При правильном использовании это предотвращает атаки MITM.
У вас есть закрытый ключ от вашего личного кабинета. Серверу нужен ваш открытый ключ, чтобы он мог проверить, авторизован ли ваш закрытый ключ для учетной записи, которую вы пытаетесь использовать.
Итак, используя ваш пример. И Боб, и Алиса имеют закрытые и открытые ключи. Открытые ключи, которые были переданы заранее или как часть соединения, используются для проверки подлинности данных, зашифрованных с помощью закрытых ключей. Если у клиента нет открытого ключа или у него другой открытый ключ, вы получите страшное предупреждение. Если на сервере нет открытого ключа клиента, вас не пустят.
Вы, как пользователь, предоставляете информацию о себе при входе в систему. Таким образом, для авторизации вам нужен закрытый ключ, потому что сервер спросит любого, кто выдает себя за вас (пытается войти в систему с вашим имя), чтобы доказать это.
Это работает так: сервер отправляет вам небольшой текст, просит зашифровать его и расшифровать с помощью вашего открытого ключа. Это может сделать только человек с вашим секретным ключом.
Он содержит открытый ключ для удобства. В противном случае вам придется создать PKI - что-то похожее на SSL CA.
Идея состоит в том, чтобы проверить отпечаток открытого ключа, когда клиент ssh просит вас принять ключ удаленного сервера.
Я бы сказал, что лучшая аналогия заключается в том, что открытый ключ сервера - это открытый ящик с защелкой, который вы можете закрыть (но не открыть), только сервер может его открыть. Настоящий вопрос заключается в том, доверяете ли вы открытому ключу (действительно ли Алисы Box?), Откуда бы вы его ни взяли, он общедоступен по определению, и в этом суть PKI.
Открытый ключ - это очень большое число, математически полученное из вашего закрытого ключа.
Он выводится таким образом, что два числа связаны,
но так, чтобы закрытый ключ не мог быть обнаружен кем-либо, кто знает только открытый ключ. Открытый ключ - это то, что вы отправляете другим сторонам, которым вы хотите аутентифицироваться или кому вы хотите отправлять зашифрованные сообщения. Открытый ключ не является конфиденциальным и не требует защиты. Его можно распространять публично. babudilli98@gmail.com