Pre-Shared Key (PSK) Ciphersuites with NULL Encryption for Transport Layer Security (TLS)
updated by
- rfc-8996 — Deprecating TLS 1.0 and TLS 1.1
Extracted elements (6)
NULL encryption ciphersuites are intended for cases where confidentiality is not needed or not permitted, such as implementations that must meet import restrictions in some countries. They still provide mutual authentication and message integrity via the PSK mechanism.
The applicability of these ciphersuites is intentionally limited to a small number of clients and servers. Alternatives such as self-signed certificates with public key fingerprints or SRP ciphersuites are noted as potentially more appropriate in many environments.
All security considerations from RFC 4279 (TLS-PSK) apply to this document as well, since these ciphersuites directly augment those defined there. Implementors must be familiar with RFC 4279 before using these ciphersuites.
Three new PSK ciphersuites with NULL encryption are defined: TLS_PSK_WITH_NULL_SHA (PSK key exchange, NULL cipher, SHA hash), TLS_DHE_PSK_WITH_NULL_SHA (DHE_PSK key exchange, NULL cipher, SHA hash), and TLS_RSA_PSK_WITH_NULL_SHA (RSA_PSK key exchange, NULL cipher, SHA hash). These augment RFC 4279 by adding authentication and integrity without confidentiality.
Three new ciphersuite values are registered in the TLS Cipher Suite registry: TLS_PSK_WITH_NULL_SHA = {0x00, 0x2C}, TLS_DHE_PSK_WITH_NULL_SHA = {0x00, 0x2D}, TLS_RSA_PSK_WITH_NULL_SHA = {0x00, 0x2E}.
Special care should be taken to protect shared PSK values and limit their exposure over time. Ciphersuites defined here provide no confidentiality, so sensitive information such as passwords MUST NOT be sent over connections protected by these ciphersuites.