Здравствуйте, TailWind, Вы писали:
Pzz>>Поэтому в процессе установления соединения клиент посылает серверу какую-нибудь чушь (псевдослучайное число), зашифрованную открытым ключем сертификата, а сервер должен продемонстрировать свою способность эту чушь расшифровать, чтобы клиент мог убедиться, что сервер и взаправду знает закрытый ключ сертификата.
TW>Это не так работает
TW>Сервер подписывает свой публичный ключ от эпилептической кривой приватным ключом сертификата
Эпилептическая кривая — это болезнь такая. Эллиптической, от слова эллипс.
А зачем подписывать свой публичный ключ, если сама по себе возможность подписать что-то приватным из того же комплекта демонстрирует факт владения этим приватным ключом?
TW>Это значит, что man in middle не сможет подписать свой публичный ключ от эпилептической кривой, если захочет общаться с клиентом имитируя сервер
Там не могут быть каждый раз одни и те же данные (например, публичный ключ). Иначе вся эта конструкция становится уязвимой к reply attack.
TW>Если бы просто случайные числа подписывали, то атака бы удалась. Так как достаточно транслировать те же числа от клиента настоящему серверу и он их сам подпишет
Оно случайное, но всегда одна сторона его придумывает, другая — подписывает. Тем самым гарантируется изменчивость подписанных данных.