Перейти к содержимому
ecdsa.com

Расширение signature_algorithms

Расширение TLS (13), в котором клиент или сервер перечисляет принимаемые схемы подписи, например ecdsa_secp256r1_sha256, rsa_pss_rsae_sha256 и ed25519, а расширение signature_algorithms_cert (50) отдельно охватывает подписи сертификатов.
Другие написанияsignature_algorithmssignature_algorithms_certSignatureScheme

Каждая схема — двухбайтовый код, который задаёт алгоритм, кривую и хеш: ecdsa_secp256r1_sha256 (0x0403), ecdsa_secp384r1_sha384 (0x0503), rsa_pss_rsae_sha256 (0x0804), rsa_pss_pss_sha256 (0x0809), ed25519 (0x0807), ed448 (0x0808), rsa_pkcs1_sha256 (0x0401). В TLS 1.3 схемы rsa_pkcs1_* допустимы только в подписях сертификатов и никогда в CertificateVerify.

Сервер должен найти пару из сертификата и схемы, которую принимает клиент; если это не удаётся, появляется ошибка no shared signature algorithms или handshake_failure. Сервер может держать и сертификат ECDSA, и сертификат RSA и выбирать между ними по этому списку. Постквантовые схемы подписи (ML-DSA, составные варианты) будут согласовываться здесь же, когда для них стандартизируют кодовые точки TLS.

Стандарты и ссылки

Все термины