HTTPS工作原理( 三 )


To generate the key material, computekey_block = PRF(SecurityParameters.master_secret,"key expansion",SecurityParameters.`server_random ` +SecurityParameters.`client_random`);until enough output has been generated.Then, the key_block ispartitioned as follows:client_write_MAC_key[SecurityParameters.mac_key_length]server_write_MAC_key[SecurityParameters.mac_key_length]client_write_key[SecurityParameters.enc_key_length]server_write_key[SecurityParameters.enc_key_length]client_write_IV[SecurityParameters.fixed_iv_length]server_write_IV[SecurityParameters.fixed_iv_length]

The master secret is expanded into a sequence of secure bytes, which is then split to a client write MAC key, a server write MAC key, a client write encryption key, and a server write encryption key
使用Diffie-Hellman算法的TLS握手细节
HTTPS工作原理

文章插图
 
Source: https://cipherstuff.wordPress/ target=_blank class=infotextkey>WordPress.com/
拓展阅读
  • Keyless
  • Let’s Encrypt
  • Session resume
  • 证书Revoke
参考链接
  1. TLS1.2规范:The Transport Layer Security (TLS) Protocol Version 1.2
  2. PKI规范:Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
  3. 证书和数字签名:What is a Digital Signature?
  4. TLS Handshake:Keyless SSL: The Nitty Gritty Technical Details




推荐阅读