一种基于带外信道的高效认证密钥交换方法技术

技术编号:35456835 阅读:20 留言:0更新日期:2022-11-03 12:16
本发明专利技术提供一种基于带外信道的高效认证密钥交换方法,属于高效认证密钥交换技术领域;所要解决的技术问题为:提供一种基于带外信道的高效认证密钥交换方法的改进;解决该技术问题采用的技术方案为:包括如下密钥交换步骤:使用算法协议对认证密钥交换的发起端、响应端共享的公共参数进行定义,预先计算发起端和响应端的公私钥对,然后设置发起端算法,主要由发起端产生随机数,并使用普通信道把处理数据发送给响应端,收到由普通信道发来的处理数据;然后设置响应端算法,主要由响应端收到由普通信道发来的处理数据,响应端产生随机数,响应端使用消息认证码函数,使用密钥输入,产生数据输出;本发明专利技术应用于认证密钥交换。本发明专利技术应用于认证密钥交换。本发明专利技术应用于认证密钥交换。

【技术实现步骤摘要】
一种基于带外信道的高效认证密钥交换方法


[0001]本专利技术提供一种基于带外信道的高效认证密钥交换方法,属于高效认证密钥交换


技术介绍

[0002]认证密钥交换协议在很多设备交互场景中是必不可少的,目前使用的椭圆曲线Diffie

Hellman(ECDH)方案是当今比较流行的方式,但基于ECDH方案的计算量较大,这会导致很多资源受限的设备在运行协议时花费的时间较长;而在物联网场景中,很多交互设备的计算能力是不平等的,比如一些传感器节点和强大的服务器之间的通信,但采用的现行ECDH方案标准协议(比如IEEE802.15.6里的display authenticated association)里忽略了这一点,他们所提供的方案并不能高效率实现非平衡算力设备之间的密钥协商;此外在一些非平衡的优化算法中,将一端的计算量转移到了另一端上,将给后者带来额外的计算量;基于此,有必要改进和优化现有的认证密钥交换协议,使其能够应用于广泛存在的计算力非平衡场景并进行高效认证,且不会额外增加设备的计算量。

技术实现思路

[0003]本专利技术为了克服现有技术中存在的不足,所要解决的技术问题为:提供一种基于带外信道的高效认证密钥交换方法的改进。
[0004]为了解决上述技术问题,本专利技术采用的技术方案为:一种基于带外信道的高效认证密钥交换方法,包括如下密钥交换步骤:
[0005]步骤一:使用算法协议对认证密钥交换的发起端、响应端共享的公共参数定义为:
[0006][0007]式中:k是安全参数,是产生私钥的域,E是选定的椭圆曲线,G是该曲线的基点;
[0008]在进行信息交换前,发起端和响应端预先计算自己的公私钥对:
[0009]计算发起端ID
A
的公私钥对为:私钥公钥PK
A
=SK
A
×
G;
[0010]计算响应端IDB的公私钥对为:私钥公钥PK
B
=SK
B
×
G;
[0011]步骤二:设置发起端算法为:
[0012]步骤A01:发起端产生随机数
[0013]步骤A02:发起端计算U
A
=r
A
+SK
A

[0014]步骤A03:发起端使用普通信道把ID
A
,PK
A
发送给响应端;
[0015]步骤A04:发起端收到由普通信道发来的ID
B
,C
B
,PK
B

[0016]步骤A05:发起端使用普通信道把ID
A
,U
A
发送给响应端;
[0017]步骤A06:发起端收到由普通信道发来的lD
B
,r
B

[0018]步骤A07:发起端使用消息认证码函数,使用密钥r
B
,将PK
A
,PK
B
作为输入,产生的输出记为C

B

[0019]步骤A08:发起端比较C
B
和C

B
是否相等,若不相等,则停止协议,若相等,则继续执
行步骤A09;
[0020]步骤A09:发起端使用短消息认证码函数,使用密钥其中为异或操作,将PK
A
,PK
B
作为输入,产生的输出为D
A

[0021]步骤A10:发起端把D
A
转化为6位十进制数字,并将该6位十进制数字显示在屏幕上,让用户进行比对:若D
A
=D
B
,则继续执行步骤A11,若D
A
≠D
B
,则停止协议;
[0022]步骤A11:发起端计算T
A
=r
A
×
PK
B

[0023]步骤A12:发起端使用消息认证码函数,使用密钥r
B
,将T
A
作为输入,产生的输出为K
A

[0024]步骤A13:发起端使用消息认证码函数,使用密钥K
A
,将U
A
,r
B
,ID
A
,ID
B
作为输入,产生的输出为mac
A

[0025]步骤A14:发起端使用普通信道把ID
A
,mac
A
发送给响应端;
[0026]步骤A15:发起端收到由普通信道发来的ID
B
,mac
B

[0027]步骤A16:发起端使用消息认证码函数,使用密钥K
A
,将r
B
,U
A
,ID
B
,ID
A
作为输入,产生的输出为mac2;发起端验证mac2和mac
B
是否相等,若不相等,则停止协议,若相等,则继续执行步骤A17;
[0028]步骤A17:发起端使用消息认证码函数,使用密钥K
A
,将T
A
,U
A
,r
B
,ID
A
,ID
B
作为输入,产生的输出为本次会话的会话密钥LK
A

[0029]步骤三:设置响应端算法为:
[0030]步骤B01:响应端收到由普通信道发来的ID
A
,PK
A

[0031]步骤B02:响应端产生随机数
[0032]步骤B03:响应端使用消息认证码函数,使用密钥r
B
,将PK
A
,PK
B
作为输入,产生的输出记为C
B

[0033]步骤B04:响应端使用普通信道把ID
B
,C
B
发送给发起端;
[0034]步骤B05:响应端收到由普通信道发来的ID
A
,U
A

[0035]步骤B06:响应端使用普通信道把ID
B
,r
B
发送给发起端;
[0036]步骤B07:响应端使用短消息认证码函数,使用密钥其中为异或操作,将PK
A
,PK
B
作为输入,产生的输出为DB
B

[0037]步骤B08:响应端把D
B
转化为6位十进制数字,并将该6位十进制数字显示在屏幕上,让用户进行比对:若D
B
=D
A
,则继续执行步骤B09,若本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于带外信道的高效认证密钥交换方法,其特征在于:包括如下密钥交换步骤:步骤一:使用算法协议对认证密钥交换的发起端、响应端共享的公共参数定义为:式中:k是安全参数,是产生私钥的域,E是选定的椭圆曲线,G是该曲线的基点;在进行信息交换前,发起端和响应端预先计算自己的公私钥对:计算发起端ID
A
的公私钥对为:私钥公钥PK
A
=SK
A
×
G;计算响应端ID
B
的公私钥对为:私钥公钥PK
B
=SK
B
×
G;步骤二:设置发起端算法为:步骤A01:发起端产生随机数步骤A02:发起端计算U
A
=r
A
+SK
A
;步骤A03:发起端使用普通信道把ID
A
,PK
A
发送给响应端;步骤A04:发起端收到由普通信道发来的ID
B
,C
B
,PK
B
;步骤A05:发起端使用普通信道把ID
A
,U
A
发送给响应端;步骤A06:发起端收到由普通信道发来的ID
B
,R
B
;步骤A07:发起端使用消息认证码函数,使用密钥r
B
,将PK
A
,PK
B
作为输入,产生的输出记为C

B
;步骤A08:发起端比较C
B
和C

B
是否相等,若不相等,则停止协议,若相等,则继续执行步骤A09;步骤A09:发起端使用短消息认证码函数,使用密钥其中为异或操作,将PK
A
,PK
B
作为输入,产生的输出为D
A
;步骤A10:发起端把D
A
转化为6位十进制数字,并将该6位十进制数字显示在屏幕上,让用户进行比对:若D
A
=D
B
,则继续执行步骤A11,若D
A
≠D
B
,则停止协议;步骤A11:发起端计算T
A
=r
A
×
PK
B
;步骤A12:发起端使用消息认证码函数,使用密钥r
B
,将T
A
作为输入,产生的输出为K
A
;步骤A13:发起端使用消息认证码函数,使用密钥K
A
,将U
A
,r
B
,ID
A
,ID
B
作为输入,产生的输出为max
A
;步骤A14:发起端使用普通信道把ID
A
,mac
A
发送给响应端;步骤A15:发起端收到由普通信道发来的ID
B
,mac
B
;步骤A16:发起端使用消息认证码函数,使用密钥K
A
,将r
B
,U
A
,ID
B
,ID
A
作为输入,产生的输出为mac2;发起端验证mac2和mac
B...

【专利技术属性】
技术研发人员:黄鑫尹昊天邢斌赵渊武晓华彭跃余赵梁斌黄佳佳孙晓欣李建爽柴晟张笛拉纳
申请(专利权)人:铁塔能源有限公司山西分公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1