CN102710624B - 一种基于sm2算法可自定义的网络身份认证方法 - Google Patents
一种基于sm2算法可自定义的网络身份认证方法 Download PDFInfo
- Publication number
- CN102710624B CN102710624B CN201210163301.7A CN201210163301A CN102710624B CN 102710624 B CN102710624 B CN 102710624B CN 201210163301 A CN201210163301 A CN 201210163301A CN 102710624 B CN102710624 B CN 102710624B
- Authority
- CN
- China
- Prior art keywords
- entity
- data
- packet
- pki
- public 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种基于SM2算法可自定义的网络身份认证方法,通过通信实体A与实体B交换3个数据包以及对数据包进行处理达到身份认证的目的。数据包基于TCP/IP协议,并使用SM2算法对数据包中内容进行加密与签名的方式实现认证。该专利通过定义数据包中保留字X的数值实现可自定义身份认证的目的;本发明使用的SM2算法的加密强度高,保留字实现可自定义身份认证的方法可实现数据通信方在初始会话时的身份认证,用于数据加密传输对称密钥的协商,消除网络数据传输过程身份伪造的风险,保护信息系统的安全。
Description
技术领域
本发明涉及一种基于SM2算法可自定义的网络身份认证方法。
背景技术
近年来,网络安全问题日益突出,黑客入侵以及网络攻击现象日益增多,而随着计算机网络技术的不断普及,公众使用计算机的次数越来越多,特别是公用信息基础设施建设推动了政府、企业日益依赖信息系统,一些涉及国计民生的业务、系统受到了前所未有的安全挑战,如维基解密网站泄漏了大量政府的机密信息;花旗集团受黑客攻击导致36多万的客户账户信息被窃取;CSDN网站被攻击导致600余万用户资料被泄漏等。这些事故充分说明网络安全对国家、政府和企业的重要性。
国家、政府、企业的信息系统涉及到国家的安全、企业机密及公民的切身利益,其数据的安全性、准确性必须得到充分的保障。为了加强信息系统的安全保护,国家、政府、企业大量使用专网、局域网、VPN等技术进行防护,起到了良好的效果。
网络信息安全问题,首先需要解决信息的网络身份认证问题,现有的网络身份认证方法大多数使用RSA算法,加密强度较低,存在着网络数据传输过程身份伪造的风险,威胁信息系统的安全。
发明内容
本发明所要解决的技术问题,就是提供一种高加密强度、可定制的基于SM2算法可自定义的网络身份认证方法,可实现数据通信方在初始会话时的身份认证,可以用于加密通信的对称密钥协商,消除网络数据传输过程身份伪造的风险,保护信息系统的安全。
所述的SM2算法是指国家密码管理局SM2椭圆曲线公钥密码算法,属于非对称密码算法,数据发送方和接收方各自拥有公私钥对:(CertA, SkeyA)和(CertB, SkeyB)。
上述技术问题的解决,本发明采用的技术方案如下(以通信实体A主动向实体B发送身份认证请求为例):
S1 实体A向实体B发送数据包1,其内容为:
;
S2 实体B对数据包1进行处理;
S3 实体B向实体A发送数据包2,其内容为:
;
S4 实体A对数据包2进行处理;
S5 实体A向实体B发送数据包3,其内容为:
;
S6 实体B对数据包3进行处理;
各数据包中:X是保留关键字,通过自定义保留关键字X实现自定义身份认证;||代表数据连接运算;ID_A是指实体A的用户标识;ID_B是指实体B的用户标识;SN是实体随机产生的会话序列号;H(*)代表对数据*进行hash运算;EN(M)代表使用密钥N对数据M进行加密,其中N为集合{CertA, SkeyA, CertB, SkeyB}中的元素、数据M为需要加密的数据。
所述的S2包括以下步骤:
S2-1对数据包1进行基于IP地址、端口号和网络协议的数据过滤;
S2-2对数据包1进行数据提取,得到:ID_A, ECertB(IP_A||SN||X) 和ESkeyA(H(IP_A||ID_A||SN||X));
S2-3使用私钥SkeyB对数据ECertB(IP_A||SN||X)解密,得到数据IP_A||SN||X;
S2-4 将用户标识ID_A和数据IP_A||SN||X进行合成,并做hash运算,得到H(IP_A||ID_A||SN||X);
S2-5 根据用户标识ID_A查找实体A的公钥CertA,根据CertA对发送数据签名进行验签,并根据验签的对比结果查看数据是否是伪造,从而确认发送者的合法身份。
其中S2-5用户通过ID_A查找实体A的公钥CertA的方式可以通过本地查询的方式亦可采用向公钥发布服务器发送查找信息的方式,具体包括以下步骤:
S2-5-1 实体B查找本地服务器看是否有ID_A对应的公钥CertA,若有,则使用该公钥;若无,则采用向公钥发布服务器查询的方式,向公钥服务器发送公钥查找服务请求,数据包中包含信息ID_A;
S2-5-2 公钥服务器向实体B返回ID_A对应的公钥CertA,若返回的结果表明无此公钥,则实体B丢弃数据包1。
所述的S4包括以下步骤:
S4-1 实体A对数据包2进行基于IP地址、端口号和网络协议的数据过滤;
S4-2对数据包2进行数据提取,得到:ID_B, ,ECertA(IP_B||SN+1||X) 和ESkeyB(IP_B||ID_B||SN+1||X);
S4-3使用私钥SkeyA对数据ECertA(IP_B||SN+1||X)解密,得到数据IP_B||SN+1||X;
S4-4 将用户标识ID_B和数据IP_B||SN+1||X进行合成,并做hash运算,得到H(IP_B||ID_B||SN+1||X);
S4-5 根据用户标识ID_B查找实体B的公钥CertB,根据CertB对发送数据签名进行验签,并根据验签的对比结果查看数据是否是伪造,从而确认发送者的合法身份。
其中S4-5用户通过ID_B查找实体B的公钥CertB的方式可以通过本地查询的方式亦可采用向公钥发布服务器发送查找信息的方式,具体包括以下步骤:
S4-5-1 实体A查找本地服务器看是否有ID_B对应的公钥CertB,若有,则使用该公钥;若无,则采用向公钥发布服务器查询的方式,向公钥服务器发送公钥查找服务请求,数据包中包含信息ID_B。
S4-5-2 公钥服务器向实体A返回ID_B对应的公钥CertB,若返回的结果表明无此公钥,则实体A丢弃数据包2。
所述的步骤S6与步骤S2类似。
所述的通信实体定期向公钥发布服务器更新通信实体公钥数据库;公钥发布服务器集中部署,对需要通信的实体进行登记,保存通信实体的公钥,并对不再进行通信的实体采取撤销公钥的措施。
有益效果:本发明的基于SM2算法可自定义的身份认证方法,可消除网络数据传输过程身份伪造的风险,保护信息系统的安全。
附图说明
下面结合附图和具体实施方式对本发明做进一步的详细说明。
图1为身份认证建立过程;
图2为身份确认数据包的数据处理流程;
图3为通信实体查找公钥的过程。
具体实施方式
本发明提出了一种基于SM2密码算法,可自定义的身份认证的方法,对身份认证的数据包的内容进行了定义,对身份认证的过程做出了约定。
本发明的基于SM2密码算法的、可以自定义的身份认证方法实施例,包括以下部分:
S1 实体A向实体B发送数据包1;
S2 实体B对数据包1进行处理;
S3 实体B向实体A发送数据包2;
S4 实体A对数据包2进行处理;
S5 实体A向实体B发送数据包3;
S6 实体B对数据包3进行处理;
本发明通过发送3个数据包以及对数据包进行相应处理达到身份认证的目的,通信双方通过发送三个身份认证数据包的方式实现身份认证,数据包基于TCP/IP协议,并对通信链路进行加密,身份认证数据包中包含用户的标识,IP地址,及其它辅助信息,并使用SM2算法对以及对相关的信息进行了加密与数字签名。
若假定通信的双方为实体A和实体B,实体A是数据发起方,则数据包内容及过程如图1所示:
数据包1为:
数据包2为:
数据包3为:
。
其中X是保留关键字,通过自定义保留关键字X实现自定义身份认证;||代表数据连接运算;ID_A是指实体A的用户标识;ID_B是指实体B的用户标识;SN是实体随机产生的会话序列号;H(*)代表对数据*进行hash运算;EN(M)代表使用密钥对数据M进行加密,其中N在本发明中为集合{CertA, SkeyA, CertB, SkeyB}中的元素,数据M为如IP_A||SN||X等的数据。
通信实体接收到通信对端发送的身份确认数据包以后,一般采用如下4个步骤对数据进行处理,此处以实体B接收到消息1为例,其数据处理流程如图2所示:
1)对消息1进行数据过滤,过滤的规则可以为基于IP地址,端口号和网络协议的过滤;
2)对消息1进行数据进行提取,得到:ID_A, ECertB(IP_A||SN||X) 和ESkeyA(H(IP_A||ID_A||SN||X));
3) 使用私钥SkeyB对数据ECertB(IP_A||SN||X)解密,得到数据IP_A||SN||X;
4) 将用户标识ID_A和数据IP_A||SN||X进行合成,并做hash运算,得到H(IP_A||ID_A||SN||X)。
5) 根据用户标识ID_A查找实体A的公钥CertA,根据CertA对发送数据签名进行验签,并根据验签的对比结果查看数据是否是伪造,并确认发送者的合法身份。
由于数据包处理过程涉及到通过用户标识(ID)查找通信实体公钥(Cert)的过程,本发明采用本地查找公钥和向公钥服务器查找公钥相结合的方式。通信实体定期向公钥发布服务器更新通信实体公钥数据库;公钥发布服务器集中部署,对需要通信的实体进行登记,保存通信实体的公钥,并对不再进行通信的实体采取撤销公钥的措施。通信实体查找公钥的方式如图3所示:
1)实体B根据用户标识ID_A在本地服务器查找是否有对应公钥CertA,若有,则使用该公钥,若无,则向公钥发布服务器发出查找请求;
2)公钥发布服务器将查询的结果返回给实体B,实体B根据查询到的公钥对数据包进行相关的验签操作,若查询不到相关的公钥,则实体B丢弃该数据包。
Claims (1)
1.一种基于SM2算法可自定义的网络身份认证方法,包括以下步骤:
S1实体A向实体B发送数据包1,其内容为:
Request,ID_A,SN,ECertB(IP_A||SN||X),ESkeyA(H(IP_A||ID_A||SN||X));
S2实体B对数据包1进行处理;
S3实体B向实体A发送数据包2,其内容为:
Dispense,ID_B,SN+1,ECertA(IP_B||SN+1||X),ESkeyB(IP_B||ID_B||SN+1||X);
S4实体A对数据包2进行处理;
S5实体A向实体B发送数据包3,其内容为:
Acknowledge,ID_A,SN+2,ECertB(IP_A||SN+2||X),ESkeyA(H(IP_A||ID_A||SN+2||X));
S6实体B对数据包3进行处理;
所述的各数据包中:X是保留关键字,通过自定义保留关键字X实现自定义身份认证;||代表数据连接运算;ID_A是指实体A的用户标识;ID_B是指实体B的用户标识;SN是实体随机产生的会话序列号;H(*)代表对数据*进行hash运算;EN(M)代表使用密钥N对数据M进行加密,其中N为集合{CertA,SkeyA,CertB,SkeyB}中的元素、数据M为需要加密的数据;
所述的S2包括以下步骤:
S2-1对数据包1进行基于IP地址、端口号和网络协议的数据过滤;
S2-2对数据包1进行数据提取,得到:ID_A,ECertB(IP_A||SN||X)和ESkeyA(H(IP_A||ID_A||SN||X));
S2-3使用私钥SkeyB对数据ECertB(IP_A||SN||X)解密,得到数据IP_A||SN||X;
S2-4将用户标识ID_A和数据IP_A||SN||X进行合成,并做hash运算,得到H(IP_A||ID_A||SN||X);
S2-5根据用户标识ID_A查找实体A的公钥CertA,根据CertA对发送数据签名进行验签,并根据验签的对比结果查看数据是否是伪造,从而确认发送者的合法身份;
所述的S2-5用户通过ID_A查找实体A的公钥CertA的方式可以通过本地查询的方式亦可采用向公钥发布服务器发送查找信息的方式,具体包括以下步骤:
S2-5-1实体B查找本地服务器看是否有ID_A对应的公钥CertA,若有,则使用该公钥;若无,则采用向公钥发布服务器查询的方式,向公钥服务器发送公钥查找服务请求,数据包中包含信息ID_A;
S2-5-2公钥服务器向实体B返回ID_A对应的公钥CertA,若返回的结果表明无此公钥,则实体B丢弃数据包1;
所述的S4包括以下步骤:
S4-1实体A对数据包2进行基于IP地址、端口号和网络协议的数据过滤;
S4-2对数据包2进行数据提取,得到:ID_B,ECertA(IP_B||SN+1||X)和ESkeyB(IP_B||ID_B||SN+1||X);
S4-3使用私钥SkeyA对数据ECertA(IP_B||SN+1||X)解密,得到数据IP_B||SN+1||X;
S4-4将用户标识ID_B和数据IP_B||SN+1||X进行合成,并做hash运算,得到H(IP_B||ID_B||SN+1||X);
S4-5根据用户标识ID_B查找实体B的公钥CertB,根据CertB对发送数据签名进行验签,并根据验签的对比结果查看数据是否是伪造,从而确认发送者的合法身份;
所述的S4-5用户通过ID_B查找实体B的公钥CertB的方式可以通过本地查询的方式亦可采用向公钥发布服务器发送查找信息的方式,具体包括以下步骤:
S4-5-1实体A查找本地服务器看是否有ID_B对应的公钥CertB,若有,则使用该公钥;若无,则采用向公钥发布服务器查询的方式,向公钥服务器发送公钥查找服务请求,数据包中包含信息ID_B;
S4-5-2公钥服务器向实体A返回ID_B对应的公钥CertB,若返回的结果表明无此公钥,则实体A丢弃数据包2;
所述的步骤S6与步骤S2类似;
通信实体定期向公钥发布服务器更新通信实体公钥数据库;公钥发布服务器集中部署,对需要通信的实体进行登记,保存通信实体的公钥,并对不再进行通信的实体采取撤销公钥的措施。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210163301.7A CN102710624B (zh) | 2012-05-24 | 2012-05-24 | 一种基于sm2算法可自定义的网络身份认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210163301.7A CN102710624B (zh) | 2012-05-24 | 2012-05-24 | 一种基于sm2算法可自定义的网络身份认证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102710624A CN102710624A (zh) | 2012-10-03 |
CN102710624B true CN102710624B (zh) | 2015-04-08 |
Family
ID=46903180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210163301.7A Active CN102710624B (zh) | 2012-05-24 | 2012-05-24 | 一种基于sm2算法可自定义的网络身份认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102710624B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106685648B (zh) * | 2016-12-15 | 2018-08-03 | 北京三未信安科技发展有限公司 | 一种基于椭圆曲线的分布式签名方法及系统 |
CN109962901A (zh) * | 2017-12-26 | 2019-07-02 | 广东电网有限责任公司电力调度控制中心 | 一种电力无线公网数据安全传输方法 |
CN108737103B (zh) * | 2018-03-27 | 2021-06-29 | 中国科学院数据与通信保护研究教育中心 | 一种应用于cs架构的sm2算法签名方法 |
CN109391618B (zh) * | 2018-10-18 | 2021-09-03 | 平安科技(深圳)有限公司 | 一种通信链路的建立方法及系统 |
CN111314072B (zh) * | 2020-02-21 | 2021-06-22 | 北京邮电大学 | 一种基于sm2算法的可扩展身份认证方法和系统 |
CN111431853A (zh) * | 2020-02-21 | 2020-07-17 | 北京邮电大学 | 一种无中心的即时网络身份认证方法以及客户端 |
CN111294212A (zh) * | 2020-05-12 | 2020-06-16 | 广东纬德信息科技股份有限公司 | 一种基于电力配电的安全网关密钥协商方法 |
CN115102700A (zh) * | 2022-08-25 | 2022-09-23 | 北京智芯微电子科技有限公司 | 安全通信方法、装置、芯片、电子设备及可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1905436A (zh) * | 2005-07-28 | 2007-01-31 | 北京航空航天大学 | 保证数据交换安全的方法 |
CN101753311A (zh) * | 2010-01-14 | 2010-06-23 | 杨筑平 | 信息保密与身份认证方法和数字签名程序 |
-
2012
- 2012-05-24 CN CN201210163301.7A patent/CN102710624B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1905436A (zh) * | 2005-07-28 | 2007-01-31 | 北京航空航天大学 | 保证数据交换安全的方法 |
CN101753311A (zh) * | 2010-01-14 | 2010-06-23 | 杨筑平 | 信息保密与身份认证方法和数字签名程序 |
Also Published As
Publication number | Publication date |
---|---|
CN102710624A (zh) | 2012-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102710624B (zh) | 一种基于sm2算法可自定义的网络身份认证方法 | |
Tewari et al. | A lightweight mutual authentication protocol based on elliptic curve cryptography for IoT devices | |
Chen et al. | Security enhancement on an improvement on two remote user authentication schemes using smart cards | |
Kartalopoulos | A primer on cryptography in communications | |
CN102780698A (zh) | 物联网平台中用户终端安全通信的方法 | |
CN109347626B (zh) | 一种具有反跟踪特性的安全身份认证方法 | |
Nyamtiga et al. | Enhanced security model for mobile banking systems in Tanzania | |
CN111797431B (zh) | 一种基于对称密钥体制的加密数据异常检测方法与系统 | |
Rongyu et al. | A PK-SIM card based end-to-end security framework for SMS | |
Kaur et al. | An improved user authentication protocol for wireless sensor networks | |
CN101521667A (zh) | 一种安全的数据通信方法及装置 | |
Nashwan | Secure authentication protocol for NFC mobile payment systems | |
TWI568234B (zh) | 全球移動通訊網路的匿名認證方法 | |
CN106657002A (zh) | 一种新型防撞库关联时间多密码的身份认证方法 | |
CN102594822B (zh) | 一种基于安全套接层的安全的网络电话的实现方法 | |
CN110572392A (zh) | 一种基于Hyperledger网络的身份认证方法 | |
WO2018047132A1 (en) | A system and method for authentication and secure communication | |
CN107070925A (zh) | 一种终端应用与后台服务通讯报文防篡改的方法 | |
Chen et al. | An anonymous authentication scheme with the enhanced security for wireless communications | |
CN106100828A (zh) | 一种基于身份公钥的手机短信加密方法 | |
Huang et al. | A secure wireless communication system integrating RSA, Diffie–Hellman PKDS, intelligent protection-key chains and a Data Connection Core in a 4G environment | |
CN115277000A (zh) | 一种基于门罗币的信息传递方法 | |
Khan et al. | An HTTPS approach to resist man in the middle attack in secure SMS using ECC and RSA | |
Suo et al. | Encryption technology in information system security | |
Kumar et al. | Cryptanalysis and improvement of REAS‐TMIS: Resource‐efficient authentication scheme for telecare medical information system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee | ||
CP03 | Change of name, title or address |
Address after: 510080 Dongfeng East Road, Dongfeng, Guangdong, Guangzhou, Zhejiang Province, No. 8 Patentee after: ELECTRIC POWER RESEARCH INSTITUTE, GUANGDONG POWER GRID CO., LTD. Address before: 510080 Dongfeng East Road, Guangdong, Guangzhou, water, Kong Kong, No. 8 Patentee before: Electrical Power Research Institute of Guangdong Power Grid Corporation |