1
的RFC得到式TLS 1.0 - 计算所述主密钥
PRF(secret, label, seed) = P_MD5(S1, label + seed) XOR
P_SHA-1(S2, label + seed);
为反过来做this.P_hash具有以下式:
P_hash(secret, seed) = HMAC_hash(secret, A(1) + seed) +
HMAC_hash(secret, A(2) + seed) +
HMAC_hash(secret, A(3) + seed) + ...
RFC还说
P_hash可以根据需要迭代多次,以生成所需数量的数据。例如,如果P_SHA-1被用于 创建64个字节的数据,它将不得不迭代4次 (通过A(4)),创建80个字节的输出数据;最后迭代的最后16个字节 然后将被丢弃,留下64个字节的 输出数据。
我觉得“P_hash可以重复多次,要产生所需的数据量” confusing.Just多少次是必要的吗?是否有一个门槛后,它不要紧多少它是什么?如果是这样,这个门槛是多少?
“生产所需数量的数据所需的次数”对我来说似乎非常清楚。但是,我不会使用“迭代”这个词。实际发生的事情是*使用了所需的表达式*。 – EJP
那么需要多少数据?我浏览了RFC,并没有提到数据量。由于主密钥总是48个字节长,可能是48个字节? – automaton
如果我没有记错的话,这个用在多个地方,所以所需的数据量取决于上下文。 – EJP