PSK提示OpenSSL

时间:2011-12-30 09:51:58

标签: openssl hint

PSK 提示在OpenSSL中的作用是什么? 我认为这是客户端的一种服务器识别,但我没有发现任何具体的内容。

1 个答案:

答案 0 :(得分:10)

PSK身份提示没有明确定义(参见RFC 4279)。在预共享密钥(PSK)方案中,客户端和服务器都必须能够导出相同的加密密钥集。身份提示是服务器提供的信息,告诉客户端如何派生密钥。

由于每个服务器都有自己独特的生成密钥的方式,因此客户端必须知道服务器的某些信息才能知道如何处理PSK身份提示。每个实现都使用不同的提示。

例如,NETCONF在生成PSK时直接使用提示(其中+表示连接):

PSK = SHA-1(SHA-1(psk_identity + "Key Pad for Netconf" + password) +  
            psk_identity_hint) 

Symbian安全用户平面位置(SUPL)协议使用它来呈现协议版本并提供客户端可以使用的PSK生成器列表。

  

PSK-TLS中使用的密钥标识符必须采用RAND @ SLP格式   SLP采用FQDN格式,RAND为128位数。下列   为SUPL 1.0定义了密钥标识符:

     

...

     

PSK_H-SLP_Master_Key和PSK_SPC_Key必须是128位或256位   长。 PSK-TLS协议中使用的关键提示必须设置为“3GPP2   SUPL 1.0键

同样,EMV smart cards的TLS-PSK使用身份提示来确定如何计算PSK。

  

当参数psk-identity-hint未被传递时   服务器,选择默认模式。此默认模式适用于   静态PSK。否则,psk-identity-hint确定一个特定的   xCDOL1值和PSK计算的配置文件。

正如您所看到的,如果您从服务器获得PSK提示,您必须知道它提供了哪些信息以及如何处理它,否则您将无法生成与该服务器相同的一组密钥。服务器生成。

脚注:诺基亚负责PSK-TLS草案RFC 4279以及实施规范的OpenSSL submitted the patch