正在加载图片...
翻译:中国科学技术大学信息安全专业老师 证书 Subject: DN=Super Store VirtualOutlet PublicKey: 0x521aa593 Issuer: Super StoreHQ PublicKey: 0x9f400682 Issuer: verisign Server done: none 在我们的例子中,没有要求来自客户的证书。客户验证证书链,然后本地生成一个48 字节的 PreMaster Secret. Master Secret是下面的前48字节 PRF(PreMaster Secret,'master secret, ClientRandom ll Server Random) 这里的PRF是一个基于MD5( Message digest5)和SHA( Secure Hash Algorithm)的复杂 函数的简写形式。 Master Secret用作构造如下形式的密钥块的输入: PRF(Maser Secret, 'key expansion, ClientRandom Server Random (符号“‖”表示级联)。对于客户和服务器需要的所有的MAC和加密密钥都是从密钥块中 得到的。保护从客户到服务器通信的密钥与保护从服务器到客户的通信的密钥是不同的。这 样,参与者可以很容易的区分他们发送的消息和接收的消息,并且他们也不受反射( reflection attacks)攻击的影响,反射攻击就是将消息重新发送到它的发送方。 客户现在发送 PreMaster Secret到服务器,它使用在选择的密码程序组中规定的密钥管 理算法和服务器的认证公开密钥(客户然后应该立即销毁 PreMaster Select)。在我们的例子 中,算法是RSA,公开密钥是0x521a593…。客户通过不请求改变来指示它接收了选择的 密码程序组,并且通过用MD5和SHA构造的散列值来捆绑第三个消息到前两个消息 M3: A: ClientKey Exchang: RSA Encrypt( Server PublicKey, PreMaster Secret B: Change CipherSpec: NONE MD5(Ml‖M2‖MA) SHA(Ml‖M‖M3A) 服务器解密 PreMaster Select,然后从它计算出 Master Select、密钥块和对于与客户的这 次会话有效的所有衍生出来的秘密密钥。服务器验证附加到客户消息上的散列值,通过不请 求改变来表明它接受所选择的密码程序组,而且用下面的消息回答 M4: A: Chang Cipher Spec: NONE B: Finished MD5(Ml‖M2‖MA‖M3C) SHA(Ml‖M2‖M3A|M3C) 客户验证在服务器消息中的散列值。现在,参与者双方都建立了他们用来保护应用通信 的共享秘密密钥 小结 目前,SSL是最广泛使用的 Internet安全协议,且由所有重要的Web浏览器支持。SSL 在应用协议和TCP之间加了一个安全层,所以应用层必须明确地要求安全。这样,应用层 的代码必须修改,但是要求的改变并不是很多,例如,在使用套接字的TCP连接中,用 密码状态参数,然后再作原来的 TCP connect ilie Connect调用。 SSL-connect调用会初始化 SSL- connect调用代替在SSL以前的应用中的TCP 不同于 IPSEC,SSL规范定义了一个握手协议,客户和服务器利用它来商定密码程序组, 确立必需的键控资料,进行相互认证。和 IPSEC不同,SSL至今没有规定在符合SSL标准 的所有实现中必须包含的密码算法的程序组。这一点目前是在使 SSL/TLS成为 Internet标准 的途中的绊脚石。 第7页共12页 创建时间:2003-11翻译:中国科学技术大学信息安全专业老师 第 7 页 共 12 页 创建时间:2003-11 证书: Subject:DN=SuperStoreVirtualOutlet PublicKey:0x521aa593… Issuer:SuperStoreHQ Subject:DN=SuperStoreHQ PublicKey:0x9f400682… Issuer:Verisign Server Done:NONE 在我们的例子中,没有要求来自客户的证书。客户验证证书链,然后本地生成一个 48 字节的 PreMasterSecret。MasterSecret 是下面的前 48 字节: PRF(PreMasterSecret,master secret,ClientRandom || ServerRandom) 这里的 PRF 是一个基于 MD5(Message Digest 5)和 SHA(Secure Hash Algorithm)的复杂 函数的简写形式。MasterSecret 用作构造如下形式的密钥块的输入: PRF(MaserSecret,key expansion,ClientRandom || ServerRandom) (符号“||”表示级联)。对于客户和服务器需要的所有的 MAC 和加密密钥都是从密钥块中 得到的。保护从客户到服务器通信的密钥与保护从服务器到客户的通信的密钥是不同的。这 样,参与者可以很容易的区分他们发送的消息和接收的消息,并且他们也不受反射(reflection attacks)攻击的影响,反射攻击就是将消息重新发送到它的发送方。 客户现在发送 PreMasterSecret 到服务器,它使用在选择的密码程序组中规定的密钥管 理算法和服务器的认证公开密钥(客户然后应该立即销毁 PreMasterSelect)。在我们的例子 中,算法是 RSA,公开密钥是 0x521aa593…。客户通过不请求改变来指示它接收了选择的 密码程序组,并且通过用 MD5 和 SHA 构造的散列值来捆绑第三个消息到前两个消息。 M3:A:ClientKeyExchang:RSA_Encrypt(ServerPublicKey,PreMasterSecret) B:ChangeCipherSpec:NONE C:Finished MD5(M1 || M2 || M3A) SHA (M1 || M2 || M3A) 服务器解密 PreMasterSelect,然后从它计算出 MasterSelect、密钥块和对于与客户的这 次会话有效的所有衍生出来的秘密密钥。服务器验证附加到客户消息上的散列值,通过不请 求改变来表明它接受所选择的密码程序组,而且用下面的消息回答: M4:A:ChangCipherSpec:NONE B:Finished MD5(M1 || M2 || M3A || M3C) SHA(M1 || M2 || M3A || M3C) 客户验证在服务器消息中的散列值。现在,参与者双方都建立了他们用来保护应用通信 的共享秘密密钥。 小结 目前,SSL 是最广泛使用的 Internet 安全协议,且由所有重要的 Web 浏览器支持。SSL 在应用协议和 TCP 之间加了一个安全层,所以应用层必须明确地要求安全。这样,应用层 的代码必须修改,但是要求的改变并不是很多,例如,在使用套接字的 TCP 连接中,用 SSL-connect 调用代替在 SSL 以前的应用中的 TCP connect 调用。SSL-connect 调用会初始化 密码状态参数,然后再作原来的 TCP connect 调用。 不同于 IPSEC,SSL 规范定义了一个握手协议,客户和服务器利用它来商定密码程序组, 确立必需的键控资料,进行相互认证。和 IPSEC 不同,SSL 至今没有规定在符合 SSL 标准 的所有实现中必须包含的密码算法的程序组。这一点目前是在使 SSL/TLS 成为 Internet 标准 的途中的绊脚石
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有