-
-
Notifications
You must be signed in to change notification settings - Fork 11k
Description
Current (1d0c08b) OpenSSL code requires PSKs to be of the same size as the hash output of the PRF used in the connection for them to be usable in TLS 1.3 (and uses that size to select associated hash).
This will likely cause connection problems when upgrading from OpenSSL 1.1.0 to 1.1.1 when only PSKs are configured.
Given that OpenSSL follows the implementor's note (that cipher suite should be selected first and PSK filtered later), and it selects strongest ciphersuite first (i.e. AES-256), the used PRF for the connection is SHA-384. If the TLS 1.3 draft requirement to associate PSKs by default with SHA-256 is followed (as needs to be for the upgrade use case), then it will cause connection failure after upgrade to new OpenSSL and when TLS 1.3 is enabled.
Thus I'm afraid that OpenSSL should not follow the implementer's note if externally provided PSKs are present, and select a ciphersuite that matches the client provided PSKs.