首页 理论教育 物联网实验教程:椭圆曲线与群组密钥协商方法简介

物联网实验教程:椭圆曲线与群组密钥协商方法简介

时间:2023-10-21 理论教育 版权反馈
【摘要】:已知k和kP,求解k的问题称为椭圆曲线离散对数问题。为了保证节点簇通信的安全,在一种可认证的群组密钥协商协议基础上,结合椭圆曲线密码系统,使用基于椭圆曲线的固定轮数的群组密钥协商协议构建协商方案。群组密钥协商方案如下:第1轮协商设有n个用户U0,U1,L,Un-1参与群组密钥协商。

物联网实验教程:椭圆曲线与群组密钥协商方法简介

1.定义

给定一个域F,方程

978-7-111-34147-5-Chapter05-15.jpg

所确定的平面曲线外加一个无穷远点共同构成F上的椭圆曲线,通常用E表示,该方程称作Weierstrass方程。若F的特征大于3,则通过坐标变换可将上述方程化简为

y2=x3+ax+b

2.运算法则

PQR为椭圆曲线上的点,∞为无穷远点,EF)为椭圆曲线上所有点的集合,有限域F上的椭圆曲线满足以下运算法则:

Pxy)∈EF),则P+∞=∞+P=P,∞=-∞;

Pxy)∈EF),则P+(-P)=∞,-P=-(xy)=(x,-y);

Px1y1),Qx2y2)∈EF),PQ连线的延长线交椭圆曲线于点R关于x轴的对称点,则P+Q+R=∞,即P+Q=-R,如图5-2所示。

978-7-111-34147-5-Chapter05-16.jpg

图5-2 P+Q=-R

3.椭圆曲线离散对数问题

kZEF)为椭圆曲线,Pxy)∈EF),定义点乘kP如下:

k>0时,kP=P+P+L+P(共k个);

k<0时,kP=(-k)(-P);

k=0时,kP=∞;

若存在最小的正整数n使得nP=∞,则称n为点P的阶。(www.xing528.com)

已知kkP,求解k的问题称为椭圆曲线离散对数问题(ECDLP)。当点P的阶为大素数时,ECDLP的计算是不可行的(即椭圆曲线离散对数问题的难解性)。

4.固定轮数群组密钥协商方案

在无线传感器网络中,节点簇的各节点之间的通信是一种群组通信的方式。为了保证节点簇通信的安全,在一种可认证的群组密钥协商协议基础上,结合椭圆曲线密码系统,使用基于椭圆曲线的固定轮数的群组密钥协商协议构建协商方案。该方案轮数固定,可扩展性强;轮数固定,两轮协商可得出群组密钥,简单高效。群组密钥协商方案如下:

(1)第1轮协商

设有n个用户U0U1,L,Un-1参与群组密钥协商。

1)每个用户Ui,0剟in-1,随机选取riRZq*,计算Zi=riP,其中,ri为第i个用户产生的随机数P为预先在椭圆曲线上取的一个公共点。

2)将Zi发送给用户Ui-1)modnUi+1)modn

(2)第2轮协商

1)每个用户收到Zi-1)modn=ri-1)modnPZi+1)modn=ri+1)modnP后,计算Xi=(Zi+1)modn-Zi-1)modn)×ri,并将Xi广播到每个用户。

2)每个用户Ui计算它们的会话密钥。

3)Ki=nriZi-1)modn+(n-1)Xi+(n-2Xi+1)modn+L+Xi-2)modn

正确性证明:对于任意的第i个用户,其计算出的密钥为

978-7-111-34147-5-Chapter05-17.jpg

那么,对于第i-1个用户计算出来的密钥为

978-7-111-34147-5-Chapter05-18.jpg

显然,Ki=Ki-1)modn

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈