CN103209075A - 一种密码交换方法 - Google Patents

一种密码交换方法 Download PDF

Info

Publication number
CN103209075A
CN103209075A CN2013100826360A CN201310082636A CN103209075A CN 103209075 A CN103209075 A CN 103209075A CN 2013100826360 A CN2013100826360 A CN 2013100826360A CN 201310082636 A CN201310082636 A CN 201310082636A CN 103209075 A CN103209075 A CN 103209075A
Authority
CN
China
Prior art keywords
password
signature
pki
private key
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2013100826360A
Other languages
English (en)
Inventor
宋晓辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NANJING ESTABLE ELECTRIC POWER TECHNOLOGY Co Ltd
Original Assignee
NANJING ESTABLE ELECTRIC POWER TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NANJING ESTABLE ELECTRIC POWER TECHNOLOGY Co Ltd filed Critical NANJING ESTABLE ELECTRIC POWER TECHNOLOGY Co Ltd
Priority to CN2013100826360A priority Critical patent/CN103209075A/zh
Publication of CN103209075A publication Critical patent/CN103209075A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种密码交换方法,其方法的主要步骤是通信双方各自生成一定长度的随机串,然后用非对称加密算法对其加密并签名后发送给对方,通信双方分别解密对方的随机串并验证签名,并以双方的随机串异或值作为通信的会话密钥。本发明的密码交换方法实现简单,适用于各种环境下的通信。

Description

一种密码交换方法
技术领域
本发明涉及通信以及通信加密技术。
背景技术
所谓会话密码是用单独的密钥对每一次单独的会话加密,它只会在一次特殊的应用中使用。于是通信双方每一次会话都要重新设定会话密码。会话密码如何到达通信双方的问题即为密码交换的问题。会话密码到达通信双方的方法称为密码交换方法。密码交换方法比较著名的是DH算法。后来DH算法被引入到椭圆曲线中,国家密码管理局规定的SM2椭圆曲线公钥算法中的密钥交换协议即为DH算法的变型。但这种算法非常复杂。
发明内容
本发明所要解决的问题是密码交换过于复杂的问题。
为解决上述问题,本发明采用的方案如下:
一种密码交换方法,包括装置A和B,其中,装置A包括私钥da,和装置B的公钥pb,装置B包括私钥db和装置A的公钥pa,da和pa构成非对称加密的密钥对,db和pb构成非对称加密的密钥对;所述的方法包括如下步骤:
S1:装置A生成长度为rlen的随机串r1;
S2:装置A生成消息E1||V1发送给装置B;其中E1是由装置B的公钥pb加密r1得到,V1由对r1签名得到;
S3:装置B用其自身的私钥db解密E1得到R1,并根据R1验证签名V1;
S4:装置B生成长度为rlen的随机串r2,得到会话密码D= R1⊕r2;
S5:装置B生成消息E2||V2发送给装置A;其中E2是由装置A的公钥pa加密r2得到,V2由对r2签名得到;
S6:装置A用其自身的私钥da解密E2得到R2,并根据R2验证签名V2;
S7:装置A计算会话密码C= r1⊕R2,并生成EC||VC发送给装置B;其中EC是由装置B的公钥pb加密C得到,VC由对C签名得到;
S8:装置B用其自身的私钥db解密EC得到C1,并根据C1验证签名VC;
S9:装置B比较C1和D,如果两者相同则密码交换成功,否则密码交换失败。
本发明的技术效果如下:
一个安全的密码交换方法主要需要防止中间人攻击。本发明由于采用了签名技术,使得中间人无法通过伪装的方法得到会话密码,因为在步骤S3和S6中包括了签名验证的步骤,假如中间人伪装,签名验证即无法通过。可见本发明的安全性由非对称加密算法本身和数字签名算法决定。本发明与其他密钥交换协议相比显得非常简单。
附图说明
图1是本发明装置A和B的交换流程图。
具体实施方式
下面对本发明做进一步详细描述:
假设有通信双方装置A和装置B。初始时,装置A会生成非对称加密的密钥对da和pa;装置B会生成非对称加密的密钥对db和pb;其中da和db分别是装置A和装置B的私钥;pa和pb是装置A和B的公钥;装置A能够得到装置B的公钥pb,装置B能够得到装置A的公钥pa。公钥pa和pb的传输无需加密;也就是允许第三人获得。上述的非对称加密算法可以采用RSA算法或者椭圆曲线算法,特别可以采用国家密码管理局规范的SM2椭圆曲线算法。
一、随机串的生成
步骤S1和S4中包括长度为rlen的随机串r1和r2生成过程,该随机串的生成由随机数发生器产生。由随机数发生器可以由国家密码管理局批准的随机串发生器。随机串r1和r2的长度决定了最终会话密钥的长度,一般为128位或256位,即16字节或32字节的长度。
二、加密、签名及交换
步骤S2、S5中包括了对随机串r1、r2加密并签名的过程:对随机串r1、r2加密后得到E1、E;对随机串r1、r2签名后得到V1、V2。装置A对随机串r1加密时采用装置B的公钥pb。装置B对随机串r2加密时采用装置A的公钥pa。加密算法可以采用国家密码管理局规范的SM2椭圆曲线公钥加密算法。签名算法可以采用国家密码管理局规范的SM2椭圆曲线数字签名算法。由装置A对随机串r1加密签名后得到E1和V1组合后发送给装置B。由装置B对随机串r2加密签名后得到E2和V2组合后发送给装置A。步骤S2的E1||V1、步骤S5的E2||V2中的“||”表示的是组合,即数字串的合并。
三、随机串的解密以及签名验证
步骤S3、S6中都包括了随机串解密和签名验证的过程。装置B用其自身的私钥db对E1解密后得到R1。装置A用其自身的私钥da对E2解密后得到R2。只要正常通信,R1等于r1,R2等于r2。验证签名可以防止中间第三人的伪装。数字签名的不可抵赖性使得装置B能够确认R1是由装置A发送的,装置A能够确认R2是由装置B发送的。假如中间第三人伪装的随机串,装置A和B通过签名验证拒绝继续交换密钥。
四、会话密钥的生成
步骤S4中装置B对E1解密后得到R1,加上自己生成的随机串r2即可以通过异或运算的方法得到会话密码D=R1⊕r2。步骤S7中装置A对E2解密后得到R2,加上自己生成的随机串r1即可以通过异或运算的方法得到会话密码C=r1⊕R2。由于r1等于R1,r2等于R2,实际上会话密码C和D相等。
五、会话密钥的再次对比确认
通信双方中有一方是发起者,另一方是被动方。在本发明中装置A是发起者,装置B是被动方。装置A作为发起者得到会话密码C后发送给装置B,装置B作为被动方则检查双方的会话密码是否相等,即判断会话密码C和D是否相等。当装置A发送会话密码C至装置B时,同样包括公钥加密和签名的过程,即步骤S7:装置A将EC||VC发送至装置B,其中EC是由装置A用装置B公钥pb对C加密后得到,VC由装置A对C数字签名后得到。而装置B接收时同样包括私钥解密和签名验证的过程。即步骤S8:装置B对EC根据其自身的私钥db解密后得到C1,然后根据C1验证数字签名VC。装置A对C的加密及签名参见前述的步骤S2。装置B对解密以及签名验证过程参见步骤S3。
只要正常通信C1等于C,则如果交换双方未出现异常情况则有C1等于D。装置B签名验证通过后,即有了C1和D比较的步骤,如果两者不等,密码交换失败。
上述过程可以详见图1的AB双方交换流程,其中左边为装置A所做的操作,右边为装置B所做的操作。

Claims (1)

1.一种密码交换方法,包括装置A和装置B,其中,装置A包括私钥da,和装置B的公钥pb,装置B包括私钥db和装置A的公钥pa,da和pa构成非对称加密的密钥对,db和pb构成非对称加密的密钥对;所述的方法包括如下步骤:
S1:装置A生成长度为rlen的随机串r1;
S2:装置A生成消息E1||V1发送给装置B;其中E1是由装置B的公钥pb加密r1得到,V1由对r1签名得到;
S3:装置B用其自身的私钥db解密E1得到R1,并根据R1验证签名V1;
S4:装置B生成长度为rlen的随机串r2,得到会话密码D= R1⊕r2;
S5:装置B生成消息E2||V2发送给装置A;其中E2是由装置A的公钥pa加密r2得到,V2由对r2签名得到;
S6:装置A用其自身的私钥da解密E2得到R2,并根据R2验证签名V2;
S7:装置A计算会话密码C= r1⊕R2,并生成EC||VC发送给装置B;其中EC是由装置B的公钥pb加密C得到,VC由对C签名得到;
S8:装置B用其自身的私钥db解密EC得到C1,并根据C1验证签名VC;
S9:装置B比较C1和D,如果两者相同则密码交换成功,否则密码交换失败。
CN2013100826360A 2013-03-15 2013-03-15 一种密码交换方法 Pending CN103209075A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2013100826360A CN103209075A (zh) 2013-03-15 2013-03-15 一种密码交换方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2013100826360A CN103209075A (zh) 2013-03-15 2013-03-15 一种密码交换方法

Publications (1)

Publication Number Publication Date
CN103209075A true CN103209075A (zh) 2013-07-17

Family

ID=48756168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013100826360A Pending CN103209075A (zh) 2013-03-15 2013-03-15 一种密码交换方法

Country Status (1)

Country Link
CN (1) CN103209075A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104954124A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 加密和解密数据处理方法、装置和系统
CN106161363A (zh) * 2015-04-03 2016-11-23 上海庆科信息技术有限公司 一种ssl连接建立的方法及系统
WO2017032242A1 (zh) * 2015-08-26 2017-03-02 阿里巴巴集团控股有限公司 密钥生成方法及装置
CN106685989A (zh) * 2017-02-07 2017-05-17 杭州秘猿科技有限公司 一种基于许可链支持监管的隐私通信方法
CN106713237A (zh) * 2015-11-16 2017-05-24 厦门雅迅网络股份有限公司 一种车载终端与中心平台通信的加密方法
TWI724091B (zh) * 2017-01-19 2021-04-11 香港商阿里巴巴集團服務有限公司 金鑰產生方法及裝置
CN112804051A (zh) * 2019-11-13 2021-05-14 联合汽车电子有限公司 会话密钥生成方法及密钥注入工具
CN113301561A (zh) * 2021-05-25 2021-08-24 深圳新闻网传媒股份有限公司 一种保护在线交互信息完整性的方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060294386A1 (en) * 2005-06-28 2006-12-28 Microsoft Corporation Strengthening secure hash functions
CN200962604Y (zh) * 2006-09-14 2007-10-17 北京科东电力控制系统有限责任公司 电力专用纵向加密认证网关设备
CN101378320A (zh) * 2008-09-27 2009-03-04 北京数字太和科技有限责任公司 一种认证方法和认证系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060294386A1 (en) * 2005-06-28 2006-12-28 Microsoft Corporation Strengthening secure hash functions
CN200962604Y (zh) * 2006-09-14 2007-10-17 北京科东电力控制系统有限责任公司 电力专用纵向加密认证网关设备
CN101378320A (zh) * 2008-09-27 2009-03-04 北京数字太和科技有限责任公司 一种认证方法和认证系统

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104954124A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 加密和解密数据处理方法、装置和系统
CN104954124B (zh) * 2014-03-28 2018-02-23 华为技术有限公司 加密和解密数据处理方法、装置和系统
CN106161363A (zh) * 2015-04-03 2016-11-23 上海庆科信息技术有限公司 一种ssl连接建立的方法及系统
CN106161363B (zh) * 2015-04-03 2020-04-17 阿里云计算有限公司 一种ssl连接建立的方法及系统
US11463243B2 (en) 2015-08-26 2022-10-04 Alibaba Group Holding Limited Key generation method and apparatus using double encryption
WO2017032242A1 (zh) * 2015-08-26 2017-03-02 阿里巴巴集团控股有限公司 密钥生成方法及装置
CN106487749A (zh) * 2015-08-26 2017-03-08 阿里巴巴集团控股有限公司 密钥生成方法及装置
US10693634B2 (en) 2015-08-26 2020-06-23 Alibaba Group Holding Limited Key generation method and apparatus using double encryption
CN106487749B (zh) * 2015-08-26 2021-02-19 阿里巴巴集团控股有限公司 密钥生成方法及装置
CN106713237A (zh) * 2015-11-16 2017-05-24 厦门雅迅网络股份有限公司 一种车载终端与中心平台通信的加密方法
CN106713237B (zh) * 2015-11-16 2021-03-23 厦门雅迅网络股份有限公司 一种车载终端与中心平台通信的加密方法
TWI724091B (zh) * 2017-01-19 2021-04-11 香港商阿里巴巴集團服務有限公司 金鑰產生方法及裝置
CN106685989A (zh) * 2017-02-07 2017-05-17 杭州秘猿科技有限公司 一种基于许可链支持监管的隐私通信方法
CN112804051A (zh) * 2019-11-13 2021-05-14 联合汽车电子有限公司 会话密钥生成方法及密钥注入工具
CN112804051B (zh) * 2019-11-13 2023-03-31 联合汽车电子有限公司 会话密钥生成方法及密钥注入工具
CN113301561A (zh) * 2021-05-25 2021-08-24 深圳新闻网传媒股份有限公司 一种保护在线交互信息完整性的方法及系统

Similar Documents

Publication Publication Date Title
CN103209075A (zh) 一种密码交换方法
CN107124274B (zh) 基于sm2的数字签名方法和装置
CN103138938B (zh) 基于csp的sm2证书申请及应用方法
CN104767612B (zh) 一种从无证书环境到公钥基础设施环境的签密方法
CN109584978A (zh) 基于签名聚合医疗健康监控网络模型信息处理方法及系统
CN104052601B (zh) 一种密钥隔离签密方法
CN102387152A (zh) 一种基于预设密钥的对称加密通信方法
JP2013539295A (ja) メッセージ復元を伴うデジタル署名の認証された暗号化
CN102970144B (zh) 基于身份的认证方法
CN107566128A (zh) 一种两方分布式sm9数字签名生成方法与系统
CN102111273B (zh) 一种基于预共享的电力负荷管理系统数据安全传输方法
CN104767611B (zh) 一种从公钥基础设施环境到无证书环境的签密方法
CN106713349B (zh) 一种能抵抗选择密文攻击的群组间代理重加密方法
CN110113150A (zh) 基于无证书环境的可否认认证的加密方法和系统
CN113285959A (zh) 一种邮件加密方法、解密方法及加解密系统
CN109873699A (zh) 一种可撤销的身份公钥加密方法
CN103179514A (zh) 一种敏感信息的手机安全群分发方法和装置
CN105915345B (zh) 一种家庭网关设备生产测试中授权生产和改制的实现方法
CN107659405B (zh) 一种变电站主子站间数据通信的加密解密方法
CN109587149A (zh) 一种数据的安全通信方法及装置
CN108933659B (zh) 一种智能电网的身份验证系统及验证方法
CN103269272A (zh) 一种基于短期证书的密钥封装方法
CN104320249A (zh) 一种基于身份的抗弹性泄漏加密方法和系统
CN110149205A (zh) 一种利于区块链保护物联网终端的方法
CN105871541A (zh) 一种基于仲裁的无证书加密方案

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20130717