Zum Hauptinhalt springen

3. PKCS

3. PKCS #1 v1.5 SignatureScheme-Typen

Die folgenden SignatureScheme-Werte werden für die Verwendung mit TLS 1.3 definiert.

enum {
rsa_pkcs1_sha256_legacy(0x0420),
rsa_pkcs1_sha384_legacy(0x0520),
rsa_pkcs1_sha512_legacy(0x0620),
} SignatureScheme;

Diese Codepoints geben einen Signaturalgorithmus an, der RSASSA-PKCS1-v1_5 [RFC8017] mit dem entsprechenden in [SHS] definierten Hash-Algorithmus verwendet. Sie sind nur für Signaturen in der Client-CertificateVerify-Nachricht definiert und für keinen anderen Kontext.

Server, die Unterstützung für RSASSA-PKCS1-v1_5-Signaturen in Zertifikaten selbst ankündigen wollen, sollten die in [RFC8446] definierten rsa_pkcs1_*-Konstanten verwenden. Clients dürfen die Legacy-Werte nicht in der signature_algorithms-Erweiterung von ClientHello ankündigen und dürfen sie in der Server-CertificateVerify-Nachricht nicht akzeptieren.

Server, die Clients unterstützen, die sich mit Legacy-Schlüsseln authentifizieren, die nur RSASSA-PKCS1-v1_5 unterstützen, dürfen diese Werte in der signature_algorithms-Erweiterung von CertificateRequest senden und in der Client-CertificateVerify-Nachricht akzeptieren. Server dürfen diese Codepoints nicht akzeptieren, wenn sie nicht in CertificateRequest angeboten wurden. Clients mit solchen Legacy-Schlüsseln dürfen diese Signaturalgorithmen aushandeln, wenn sie vom Server angeboten werden.

Clients sollten diese Algorithmen nicht mit Schlüsseln aushandeln, die RSASSA-PSS unterstützen, auch wenn dies nicht in allen Anwendungen praktisch zu bestimmen ist. TLS-Implementierungen sollten diese Codepoints standardmäßig deaktivieren.