CN104158653B - 一种基于商密算法的安全通信方法 - Google Patents

一种基于商密算法的安全通信方法 Download PDF

Info

Publication number
CN104158653B
CN104158653B CN201410401873.3A CN201410401873A CN104158653B CN 104158653 B CN104158653 B CN 104158653B CN 201410401873 A CN201410401873 A CN 201410401873A CN 104158653 B CN104158653 B CN 104158653B
Authority
CN
China
Prior art keywords
client
service end
algorithms
key agreement
session 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.)
Expired - Fee Related
Application number
CN201410401873.3A
Other languages
English (en)
Other versions
CN104158653A (zh
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.)
Beijing Huadian Tianyi Information Technology Co ltd
Original Assignee
BEIJING HUADIAN TIANYI INFORMATION 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 BEIJING HUADIAN TIANYI INFORMATION TECHNOLOGY Co Ltd filed Critical BEIJING HUADIAN TIANYI INFORMATION TECHNOLOGY Co Ltd
Priority to CN201410401873.3A priority Critical patent/CN104158653B/zh
Publication of CN104158653A publication Critical patent/CN104158653A/zh
Application granted granted Critical
Publication of CN104158653B publication Critical patent/CN104158653B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种基于商密算法的安全通信方法,包括以下步骤,步骤10:客户端和服务端建立初始化连接;步骤20:客户端发送会话密钥协商请求;步骤30:客户端和服务端进行会话密钥协商;步骤40:客户端发送客户端设备信息等用于身份认证;步骤50:客户端和服务端进行加密通信。本发明基于国产商密加解密技术的安全通信方法,使用密钥交换算法、数据加密算法以及数据完整性检查算法的密钥协商,使得客户端和服务端能进行双向认证以及确定会话密钥,建立安全通道,防止数据在传输过程中被窃听、篡改、破坏、插入重放攻击,保证数据传输的安全。本发明不依赖于网络接入方式,可以在任意基础网络上实现,而且可以实现端到端的安全保护。

Description

一种基于商密算法的安全通信方法
技术领域
本发明属于通信技术领域,特别涉及一种基于商密算法的安全通信方法。
背景技术
目前,网络面临着各种威胁,其中包括保密数据的泄露、数据完整性的破坏、身份伪装和拒绝服务等。针对这些威胁,也有一些安全通信协议应运而生。比如,SSL协议(Secure Socket Layer安全套接层),为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密技术,可确保数据在网络上之传输过程中不会被截取及窃听。它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。
由于SSL协议是基于Web浏览器的,可以很好的支持B/S应用,但对于C/S的应用支持不完善。并且目前SSL协议中的密钥协商使用的是开源的RSA算法和MD5算法,数据加密也仅能支持AES、DES和BF等国际通用算法。对于我国国产的商用密码技术并不支持。
为了保障商用密码安全,国家商用密码管理办公室制定了一系列密码标准,包括SSF33、SM1(SCB2)、SM2、SM3、SM4、SM7、SM9、祖冲之密码算法那等等。其中SSF33、SM1、SM4、SM7、祖冲之密码是对称算法;SM2、SM9是非对称算法;SM3是哈希算法。
发明内容
发明目的:本发明为了克服现有技术中存在的不足,本发明提出一种不依赖网络接入方式且适用于国产商密加解密技术的安全通信方法。
发明内容:为解决上述技术问题,本发明提供了一种基于商密算法的安全通信方法,包括以下步骤:
步骤10:客户端和服务端建立初始化连接;
步骤20:客户端发送会话密钥协商请求,服务端接受会话密钥协商请求,则执行步骤30,如果服务端不接受会话密钥协商请求,则过程结束,重新执行步骤10;
步骤30:客户端和服务端进行会话密钥协商,会话密钥协商成功,则执行步骤40,会话密钥协商失败,则过程结束,重新执行步骤10;
步骤40:客户端发送客户端设备信息等用于身份认证,如果认证失败,则过程结束,重新执行步骤10;如果认证成功,则执行步骤50;
步骤50:客户端和服务端进行加密通信,如果出错,则过程结束,重新执行步骤10;如果没有出错,则客户端和服务端继续进行加密通信。
进一步,所述步骤30中的会话密钥协商包括以下步骤:
步骤301:客户端产生随机数r1,同时产生包括ECert2(r1)和ESkey1(H(r1))的密钥协商信息A,并将密钥协商信息A发送到服务端;其中r1为随机数,ECert2(r1)为利用SM2算法对r1进行公钥加密后的值,H(r1)为利用SM3算法对r1进行哈希算法后的值,ESkey1(H(r1))为利用SM2算法对r1进行签名后的签名值;
步骤302:服务端利用SM2算法对A中的ECert2(r1)解密并利用SM2算法将解密后的内容与A中的签名值ESkey1(H(r1))进行验签;同时产生随机数r2,产生包含ECert1(r2)和ESkey2(H(r2))的密钥协商信息B,并将密钥协商信息B发送到客户端;同时将随机数r1和随机数r2合成会话密钥DK,DK=r1⊕r2;其中ECert1(r2)为利用SM2算法对r2进行公钥加密后的值,H(r2)为利用SM3算法对r2进行哈希算法后的值,Eskey2(H(r2))为利用SM2算法对r2进行签名后的签名值;DK为随机数r1和r2的异或值;
步骤303:客户端利用SM2算法对B中的ECert1(r2)解密并利用SM2算法将解密后的内容与B中签名值ESkey2(H(r2))进行验签;同时将随机数r1和随机数r2合成会话密钥DK,DK=r1⊕r2,同时令C=H(r1⊕r2),并将C发送到服务端;其中C为利用SM3算法对随机数r1和r2的异或值进行哈希算法后的值;
步骤304:服务端令D=H(r1⊕r2),同时接受客户端发来的C,并比较C与D是否相同,若相同,则客户端和服务端成功完成密钥协商,并持有会话密钥DK;若不同,则服务端给出协商失败告警信息,通知客户端,则过程结束,重新执行步骤10。
由于密钥协商过程中的r1和r2都是随机生成的随机数,所以本发明提供的方法实现了客户端和服务端间基于专用密码算法的密钥协商功能,实现动态密钥协商、密钥更换、密钥销毁等功能。
进一步,所述步骤30中的加密协商和身份认证基于SM2算法和SM3算法进行。
进一步,所述步骤40中对客户端和服务端之间通信的数据进行基于SM1算法的加解密操作后通信,从而实现加密通信。进行数据通信的时候,双方都将对应用层的数据报文使用SM1算法进行加解密,对数据实现了基于硬件密码算法的链路级加密功能。
工作原理:本发明中客户端在建立初始化连接之后,立即与服务端进行基于非对称加解密算法(简称SM2算法)和杂凑算法(简称SM3算法)的通信前的会话密钥协商,只有协商好会话密钥之后,才进行后续的数据加密通信,在密钥协商完成之前,不进行任何其他数据信息(非密钥协商的数据信息)的发送,否则,初始化连接将被关闭。在正常数据通信的过程中,需要对通信的数据进行基于对称加解密算法(简称SM1算法)的加解密操作。
有益效果:与现有技术相比,本发明是基于国产商密加解密技术的安全通信方法,使用密钥交换算法、数据加密算法以及数据完整性检查算法的密钥协商,使得客户端和服务端能进行双向认证以及确定会话密钥,建立安全通道,防止数据在传输过程中被窃听、篡改、破坏、插入重放攻击,保证数据传输的安全。本发明不依赖于网络接入方式,可以在任意基础网络上实现,而且可以实现端到端的安全保护,不需要修改防火墙配置和修改客户端用户的配置。
附图说明
图1为本发明的流程图;
图2为本发明中会话密钥协商过程的示意图。
具体实施方式
下面结合附图对本发明的技术方案作进一步解释。
如图1所示,一种基于商密算法的安全通信方法,包括以下步骤:
步骤10:客户端和服务端建立初始化连接;
步骤20:客户端发送会话密钥协商请求,服务端接受会话密钥协商请求,则执行步骤30,如果服务端不接受会话密钥协商请求,则过程结束,重新执行步骤10;
步骤30:客户端和服务端进行会话密钥协商,会话密钥协商成功,则执行步骤40,会话密钥协商失败,则过程结束,重新执行步骤10;
其中,如图2所示,会话密钥协商包括以下步骤:
步骤301:客户端产生随机数r1,令A=ECert2(r1)‖ESkey1(H(r1)),并将A发送到服务端;
步骤302:服务端对A解密并验证客户端的签名,产生随机数r2,令B=ECert1(r2)‖ESkey2(H(r2)),并将B发送到客户端;同时将随机数r1和随机数r2合成会话密钥DK,DK=r1⊕r2;
步骤303,客户端对B解密并验证服务端的签名,将随机数r1和随机数r2合成会话密钥DK,DK=r1⊕r2,同时令C=H(r1⊕r2),并将C发送到服务端;
步骤304,服务端令D=H(r1⊕r2),同时接受客户端发来的C,并比较C与D是否相同,若相同,则客户端和服务端成功验证的对方身份,并持有会话密钥DK;若不同,则服务端给出协商失败告警信息,通知客户端,则过程结束,重新执行步骤10。上述会话密钥协商是基于SM2算法和SM3算法进行的。由于密钥协商过程中的r1和r2都是随机生成的随机数,所以本发明提供的方法实现了客户端和服务端间基于专用密码算法的密钥协商功能,实现动态密钥协商、密钥更换、密钥销毁等功能。
步骤40:客户端发送客户端的设备信息用于身份认证,如果认证失败,则过程结束,重新执行步骤10;如果认证成功,则执行步骤50;其中设备信息包括设备ID等。
步骤50:客户端和服务端进行加密通信,如果出错,则过程结束,重新执行步骤10;如果没有出错,则客户端和服务端继续进行加密通信。其中,基于客户端和服务端之间数据的加密通信是基于SM1算法的加解密操作后通信,从而实现加密通信。进行数据通信的时候,双方都将对应用层的数据报文使用SM1算法进行的,对数据实现了基于硬件密码算法的链路级加密功能。
以上述依据本发明的理想实施例为启示,通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。

Claims (1)

1.一种基于商密算法的安全通信方法,其特征在于:包括以下步骤:
步骤10:客户端和服务端建立初始化连接;
步骤20:客户端发送会话密钥协商请求,服务端接受会话密钥协商请求,则执行步骤30,如果服务端不接受会话密钥协商请求,则过程结束,重新执行步骤10;
步骤30:客户端和服务端进行会话密钥协商,会话密钥协商成功,则执行步骤40,会话密钥协商失败,则过程结束,重新执行步骤10;
步骤40:客户端发送客户端的设备信息至服务端,服务端将收到的信息与数据库中的信息进行比对,完成身份认证的过程,如果认证失败,则过程结束,重新执行步骤10;如果认证成功,则执行步骤50;
步骤50:客户端和服务端进行加密通信,如果出错,则过程结束,重新执行步骤10;如果没有出错,则客户端和服务端继续进行加密通信;
所述步骤30中的会话密钥协商包括以下步骤:
步骤301:客户端产生随机数r1,同时产生包括ECert2(r1)和ESkey1(H(r1))的密钥协商信息A,并将密钥协商信息A发送到服务端;其中r1为随机数,ECert2(r1)为利用SM2算法对r1进行公钥加密后的值,H(r1)为利用SM3算法对r1进行哈希算法后的值,ESkey1(H(r1))为利用SM2算法对r1进行签名后的签名值;
步骤302:服务端利用SM2算法对A中的ECert2(r1)解密并利用SM2算法将解密后的内容与A中的签名值ESkey1(H(r1))进行验签;同时产生随机数r2,产生包含ECert1(r2)和ESkey2(H(r2))的密钥协商信息B,并将密钥协商信息B发送到客户端;同时将随机数r1和随机数r2合成会话密钥DK,DK=r1⊕r2; 其中ECert1(r2)为利用SM2算法对r2进行公钥加密后的值,H(r2)为利用SM3算法对r2进行哈希算法后的值,Eskey2(H(r2))为利用SM2算法对r2进行签名后的签名值;DK为随机数r1和r2的异或值;
步骤303:客户端利用SM2算法对B中的 ECert1(r2)解密并利用SM2算法将解密后的内容与B中签名值ESkey2(H(r2))进行验签;同时将随机数r1和随机数r2合成会话密钥DK,DK=r1⊕r2,同时令C=H(r1⊕r2),并将C发送到服务端;其中C为利用SM3算法对随机数r1和r2的异或值进行哈希算法后的值;
步骤304:服务端令D=H(r1⊕r2),同时接受客户端发来的C,并比较C与D是否相同,若相同,则客户端和服务端成功完成密钥协商,并持有会话密钥DK;若不同,则服务端给出协商失败告警信息,通知客户端,则过程结束,重新执行步骤10;
所述步骤50中对客户端和服务端之间通信的数据进行基于SM1算法的加解密操作后通信,从而实现加密通信。
CN201410401873.3A 2014-08-14 2014-08-14 一种基于商密算法的安全通信方法 Expired - Fee Related CN104158653B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410401873.3A CN104158653B (zh) 2014-08-14 2014-08-14 一种基于商密算法的安全通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410401873.3A CN104158653B (zh) 2014-08-14 2014-08-14 一种基于商密算法的安全通信方法

Publications (2)

Publication Number Publication Date
CN104158653A CN104158653A (zh) 2014-11-19
CN104158653B true CN104158653B (zh) 2017-08-25

Family

ID=51884067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410401873.3A Expired - Fee Related CN104158653B (zh) 2014-08-14 2014-08-14 一种基于商密算法的安全通信方法

Country Status (1)

Country Link
CN (1) CN104158653B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112383917B (zh) * 2020-10-21 2024-07-02 华北电力大学 一种基于商密算法的北斗安全通信方法和系统

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468095A (zh) * 2014-11-28 2015-03-25 华为技术有限公司 一种数据传输方法及装置
CN104601550B (zh) * 2014-12-24 2020-08-11 国家电网公司 基于集群阵列的反向隔离文件传输系统及其方法
CN105162808B (zh) * 2015-10-19 2019-09-06 成都卫士通信息产业股份有限公司 一种基于国密算法的安全登录方法
CN105429962B (zh) * 2015-11-03 2018-10-19 清华大学 一种通用的面向加密数据的中间网络服务构建方法与体系
CN106713237B (zh) * 2015-11-16 2021-03-23 厦门雅迅网络股份有限公司 一种车载终端与中心平台通信的加密方法
CN106817219B (zh) * 2015-12-01 2020-11-03 阿里巴巴集团控股有限公司 一种协商会话秘钥的方法及装置
CN105554693B (zh) * 2016-02-02 2019-02-01 深圳市文鼎创数据科技有限公司 蓝牙设备的配对方法和装置
CN105763563B (zh) * 2016-04-19 2019-05-21 浙江神州量子网络科技有限公司 一种量子密钥申请过程中的身份认证方法
CN110071863A (zh) * 2016-12-08 2019-07-30 深圳奥联信息安全技术有限公司 一种基于标识密码的即时通信用户群加密方法
CN107104791B (zh) * 2017-03-29 2019-06-28 江苏大学 一种基于ecu身份隐藏的车内网络一次一密通信方法
CN107733747A (zh) * 2017-07-28 2018-02-23 国网江西省电力公司上饶供电分公司 面向多业务承载的公共通信接入系统
CN107819575A (zh) * 2017-11-19 2018-03-20 天津光电安辰信息技术股份有限公司 一种安全音视频加密服务端及认证的实现方法
CN108683498A (zh) * 2018-05-14 2018-10-19 国网江西省电力有限公司电力科学研究院 一种基于可变密钥国密算法的云终端管控方法
CN109194656A (zh) * 2018-09-10 2019-01-11 国家电网有限公司 一种配电无线终端安全接入的方法
CN109474667B (zh) * 2018-10-12 2021-05-25 广州雷迅创新科技股份有限公司 一种基于tcp和udp的无人机通信方法
CN109152091B (zh) * 2018-10-12 2022-02-15 广州雷迅创新科技有限公司 一种可用于无人机集群控制的通信系统
CN109688585B (zh) * 2018-12-28 2023-10-13 卡斯柯信号有限公司 应用于列车监控系统的车地无线通信加密方法与装置
CN109889484B (zh) * 2018-12-28 2022-07-12 卡斯柯信号有限公司 轨道交通车载信号控制系统用的信息安全保密方法及装置
CN111600829A (zh) * 2019-02-21 2020-08-28 杭州萤石软件有限公司 用于物联网设备间的安全通信方法和系统
CN110048849B (zh) * 2019-03-11 2022-10-21 广东安创信息科技开发有限公司 一种多层保护的会话密钥协商方法
CN110224976B (zh) * 2019-04-29 2020-05-12 北京邮电大学 一种加密通信方法、装置及计算机可读存储介质
CN112333152A (zh) * 2020-10-13 2021-02-05 西安电子科技大学 双向认证方法、系统、介质、计算机设备、终端及应用
CN113472526B (zh) * 2021-06-25 2023-06-30 北京中电华大电子设计有限责任公司 基于安全芯片的物联网设备线路保护方法
CN113572741A (zh) * 2021-06-30 2021-10-29 深圳市证通云计算有限公司 一种基于国密sm2-sm3-sm4算法实现数据的安全传输的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1426200A (zh) * 2002-11-06 2003-06-25 西安西电捷通无线网络通信有限公司 无线局域网移动终端的安全接入与无线链路的数据保密通信方法
CN101013940A (zh) * 2006-12-22 2007-08-08 西安电子科技大学 一种兼容802.11i及WAPI的身份认证方法
CN101123501A (zh) * 2006-08-08 2008-02-13 西安电子科技大学 一种wapi认证和密钥协商方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10044713B2 (en) * 2011-08-19 2018-08-07 Interdigital Patent Holdings, Inc. OpenID/local openID security

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1426200A (zh) * 2002-11-06 2003-06-25 西安西电捷通无线网络通信有限公司 无线局域网移动终端的安全接入与无线链路的数据保密通信方法
CN101123501A (zh) * 2006-08-08 2008-02-13 西安电子科技大学 一种wapi认证和密钥协商方法和系统
CN101013940A (zh) * 2006-12-22 2007-08-08 西安电子科技大学 一种兼容802.11i及WAPI的身份认证方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112383917B (zh) * 2020-10-21 2024-07-02 华北电力大学 一种基于商密算法的北斗安全通信方法和系统

Also Published As

Publication number Publication date
CN104158653A (zh) 2014-11-19

Similar Documents

Publication Publication Date Title
CN104158653B (zh) 一种基于商密算法的安全通信方法
CN103118027B (zh) 基于国密算法建立tls通道的方法
CN106506470B (zh) 网络数据安全传输方法
EP3349393B1 (en) Mutual authentication of confidential communication
CN105530238B (zh) 用于安全对话建立和数据的加密交换的计算机实现系统和方法
US8291231B2 (en) Common key setting method, relay apparatus, and program
JP5307191B2 (ja) 無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法
CN103095696B (zh) 一种适用于用电信息采集系统的身份认证和密钥协商方法
JP5845393B2 (ja) 暗号通信装置および暗号通信システム
CN104754581A (zh) 一种基于公钥密码体制的lte无线网络的安全认证方法
CN103763356A (zh) 一种安全套接层连接的建立方法、装置及系统
CN104219041A (zh) 一种适用于移动互联网的数据传输加密方法
WO2016058404A1 (zh) 基于预共享密钥的实体鉴别方法及装置
CN109194656A (zh) 一种配电无线终端安全接入的方法
CN103118363B (zh) 一种互传秘密信息的方法、系统、终端设备及平台设备
CN112637136A (zh) 加密通信方法及系统
CN104901935A (zh) 一种基于cpk的双向认证及数据交互安全保护方法
TW201537937A (zh) 統一身份認證平臺及認證方法
CN103795728A (zh) 一种隐藏身份且适合资源受限终端的eap认证方法
CN105577365A (zh) 一种用户接入wlan的密钥协商方法及装置
CN111130775A (zh) 一种密钥协商方法、装置及设备
CN105871858A (zh) 一种保证数据安全的方法及系统
CN102281303A (zh) 一种数据交换方法
CN106992866A (zh) 一种基于nfc无证书认证的无线网络接入方法
CN113676448A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20170523

Address after: 102206 Beijing Changping District city Huilongguan Town Road No. 1 Building No. 5 hospital 8 floor 1 unit 906

Applicant after: BEIJING HUADIAN TIANYI INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 212400 Zhenjiang city of Jiangsu province land west Jurong Economic Development Zone No. 9

Applicant before: JURONG RESEARCH CENTER, NORTH CHINA ELECTRIC POWER UNIVERSITY

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170825