#encryption #ssl #certificate-authority
Вопрос:
Я только что установил SSL-сертификат. Этот сертификат зашифрован с помощью 2048-битного шифрования.
Однако шифр представляет собой 128-битное шифрование(или 40, или какой-либо другой вариант в зависимости от браузера).
Похоже, что здесь существуют два разных типа шифрования. Шифрование «рукопожатия» 2048 года и шифрование «по проводу» на несколько порядков меньше.
Имею ли я это право теоретически? Кто-нибудь может объяснить это лучше?
Я обшарил весь Google и не могу найти четкого объяснения разницы между ними.
Ответ №1:
В Википедии есть хорошая запись.
Вы правы, существует два вида шифрования. Первый — это асимметричное шифрование или шифрование с открытым ключом-это шифрование с большим ключом. Второй тип-симметричное шифрование с меньшим ключом.
Первый тип шифрования (асимметричный ключ большего размера) используется для согласования того, какой тип симметричного шифрования будут использовать клиент и сервер. Они также обменяются сеансовым ключом, который они будут использовать. Это процесс рукопожатия, и он зашифрован с использованием асимметричного шифрования
Ключ сеанса-это в основном ключ, который они будут использовать при отправке реальных данных, зашифрованных любым типом, который они выбрали в процессе рукопожатия. Это часть симметричного шифрования.
Комментарии:
1. Они не обмениваются сеансовым ключом. Ключ сеанса никогда не передается.
Ответ №2:
Это правда, что симметричное шифрование обычно использует гораздо меньше битов для своей длины ключа. Причина в том, что симметричное шифрование намного сильнее при заданном количестве битов.
Асимметричное шифрование (где у каждой стороны свой ключ) гораздо сложнее осуществить. Он более трудоемкий в вычислительном отношении и поэтому используется только для части рукопожатия или для шифрования симметричного ключа, используемого в остальной части сообщения.