OpenSSL密码库算法笔记——第6.5.1章 密钥协商原理

我的梦境 提交于 2020-08-13 16:30:56

密钥协商的输入包括椭圆曲线参数(具体参数情况请参见§6.2.2),以及己方私钥s和对方公钥W,注意这里的公私钥都必须是在同一条椭圆曲线上选取。以下假设椭圆曲线参数、己方私钥s和对方公钥W都是合理有效的。密钥协商算法如下:

───────────────────────────────────────

算法        密钥协商

输入:    己方私钥s,对方公钥W,椭圆曲线参数

输出:    协商出的秘密值s。

步骤:   

step1、    计算临时点T=← s×W。

step2、    得到T点的x坐标tx。

step3、    将tx交给密钥导出函数KDF算出协商的秘密信息。

s=KDF(tx)。

step3:    返回s。

───────────────────────────────────────

        现在来解释为什么双方能协商出相同的秘密值。假设协商双方为A和B,各自的公私钥对分别为(s_A,W_A)(s_A,W_A)(s_B,W_B)

所以可以得到:

 

这就说明了双方协商得出的是同一个秘密值。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!