CN110336664A - 基于sm2密码算法的信息服务实体跨域认证方法 - Google Patents
基于sm2密码算法的信息服务实体跨域认证方法 Download PDFInfo
- Publication number
- CN110336664A CN110336664A CN201910618117.9A CN201910618117A CN110336664A CN 110336664 A CN110336664 A CN 110336664A CN 201910618117 A CN201910618117 A CN 201910618117A CN 110336664 A CN110336664 A CN 110336664A
- Authority
- CN
- China
- Prior art keywords
- label
- signature
- trust domain
- user
- indicate
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
本发明提出了一种基于SM2密码算法的信息服务实体跨域认证方法,主要解决当前跨域过程中,计算复杂度高,跨域认证速度慢,安全性低的问题,其技术方案为:采用基于SM2密码算法的签名方案验证用户身份的合法性,加入时间戳,对身份验证过程中的用户标签签名,标签公证中心验证用户的标签,服务端根据验证结果决定是否对用户开启服务,从而实现跨域认证。本发明克服了现有技术在跨域认证过程中,身份认证速度慢,安全性低的问题,在保证域之间认证准确度的同时提高了跨域认证过程的效率与安全性。
Description
技术领域
本发明属于通信技术领域,更进一步涉及网络通信技术领域中的一种基于SM2密码算法的信息服务实体跨域认证方法。本发明可用于通信网络中多场景多用户情况下信任域内的用户发送请求访问另一信任域内提供服务的服务端时的跨域身份验证过程。
背景技术
通信网络中多场景多用户情况下的信息服务实体ISE(Information ServicesEntity)是指在互联网中提供公开的、共享的信息的服务活动提供者。信息服务实体ISE的交互方式直接影响信息服务的安全,随着移动终端的轻量级化,在多种场景下,例如网站间资源互享、共同签署合同等场景中多个用户的之间的信息交互,随之产生了越来越频繁的多信任域结构模式中的信息服务实体ISE之间的交互,因此能否保证资源受限的移动终端用户接受安全高效的信息服务成为主要需求。目前对信息服务实体ISE仅是信任域内部简单的身份管理与认证,用户需要访问外域信息服务实体ISE时,就存在跨信任域身份认证问题。
湖北安标信息技术有限公司在其申请的专利文献“基于考评服务平台的跨域认证方法”(申请号:201310710884.5,申请公布号:CN 103731269 A)中提出了一种身份的跨域认证方法。该方法的步骤是:在至少两个信任域内,当第一域访问第二个域时,用户登录系统,验证通过登录成功。将登录用户的基本信息序列化,再通过MD5加密算法将序列化后的用户信息字节流保存到第一域的Cookie中。之后,当第一域请求第二个域时,获取第一域的Cookie中的key值,将key值经过MD5解密,然后反序列化,反序列化是将序列化后的用户信息字节流转化为用户对象。最后,判断反序列化后的用户信息是否合法,如果合法,则允许跨域,反之不允许跨域,跳转系统错误页面。该方法存在的不足之处是,过程中加密算法采用的是一种散列算法MD5,通信过程中遇到碰撞攻击容易导致用户信息泄露,是不安全的。其次,该方法的信息处理是在两个信任域之间,对于通信双方会有比较大的通信量,一旦有较多信任域,域之间通信会交错复杂,可能会出现多条认证路径和死循环的现象,使标识的验证难于实现。
刘莉、金正平在其发表的论文“一个基于RSA的无证书多重签名方案”(四川大学学报工程科学版第48卷第二期2016年3月)中提出了一个基于RSA密码算法的无证书多重签名实现跨域认证方法。该方法的步骤是:(1)系统建立,初始化RSA密码算法参数(2)密钥生成中心计算并生成信息服务实体的公钥和私钥,用户发送请求访问信息服务实体(3)信息服务实体对待签署的消息、系统参数、所有签名人身份进行多重签名,将签名等信息发送给验证方进行验证(4)验证方检验多重签名是否合法,验证通过允许用户访问信息服务实体,实现跨域认证。该方法实现了基于RSA密码算法进行签名实现跨域认证。该方法基于RSA密码算法采用无证书密码体制实现跨域认证,避免了基于身份的多重签名方案中密钥托管问题,相对有证书的签发方式,有更低的通信代价和计算代价。但是,该方法仍然存在的不足之处是:密钥生成中心在生成信息服务实体的公钥和私钥的过程中,基于RSA密码算法所产生的公钥位数至少为1024位,公钥位数太长导致密钥生成速度慢,签名的签发速度慢,从而跨域认证的速度慢。随着计算机运算速度的提高和分布式计算的发展,加上因子分解方法的改进,已经可以将低位数的RSA密码算法所产生的的密钥破解,而且在通信过程中系统参数、签名等信息被获取后,系统会受到重放攻击,所以采用RSA密码算法进行签名安全性低,跨域认证的安全性低。
发明内容
本发明的目的在于针对上述现有技术存在的缺陷,提出了一种基于SM2密码算法的信息服务实体跨域认证方法,用于解决现如今信息服务实体跨域认证速度慢和安全性低的问题。
实现本发明目的的思路是,基于SM2密码算法对身份验证过程中的用户标签签名,标签公证中心验证用户的标签,服务端根据验证结果决定是否对用户开启服务。
本发明采用的技术方案包括如下步骤:
(1)生成群公钥和群私钥:
(1a)密钥生成中心随机选择一个元素c∈Zq,其中,∈表示属于符号,Zq表示q阶的整数串,q表示一个大素数;
(1b)密钥生成中心将元素c作为群私钥s并保存,将群私钥s和基点G的乘积作为群公钥,G表示椭圆曲线上阶数为n的基点,n表示一个大素数;
(2)签发标签:
(2a)标签公证中心在整数串Zq中选择一个随机数m作为信任域DA内发送请求的用户的私钥,将发送请求的用户的私钥与基点G的乘积作为信任域DA内发送请求用户的公钥;
(2b)标签公证中心将信任域DA内发送请求用户的私钥和公钥通过安全信道发送给用户;
(2c)标签公证中心使用群公钥为信任域DA内发送请求用户签发标签;
(3)计算杂凑值:
(3a)按照下式,计算信任域DA内发送请求用户的临时私钥和临时公钥:
SKU=H((SK×P)||T),PKU=SKU×G,
其中,SKU表示信任域DA内发送请求用户U的临时私钥,H(·)表示安全散列函数,SK表示信任域DA内发送请求用户的私钥,P表示群公钥,‖表示级联关系符号,T表示时间戳,PKU表示信任域DA内发送请求用户U的临时公钥;
(3b)按照下式,计算信任域DA内发送请求的用户身份信息的杂凑值:
ZU=H256(IDU||ΩU||a||b||xG||yG||xU||yU),
其中,ZU表示发送请求用户U在信任域DA内的身份信息的杂凑值,H256(·)表示输出长度为256比特的杂凑函数,IDU表示发送请求用户U在信任域DA内的身份标识,ΩU表示发送请求用户U在信任域DA内的身份标识IDU的长度值,xG、yG分别表示椭圆曲线上基点G的横纵坐标值,xU、yU分别表示信任域DA内发送请求用户临时公钥的横纵坐标值;
(3c)按照下式,计算待签名标签的杂凑值:
e1=Hv(L||ZU),
其中,e1表示待签名标签的杂凑值,Hv(·)表示密码杂凑函数,v表示带签名标签摘要长度,L表示标签信息;
(4)利用SM2密码算法,计算信任域DA内发送请求的用户的标签的签名:
(4a)按照下式,计算用户的标签的签名中的第一部分标识:
r1=(e1+x1)modn
其中,r表示信任域DA内发送请求的用户标签的签名中的第一部分标识,x1、y1分别表示椭圆曲线上任意点β的横坐标和纵坐标的值,β=(x1,y1)=[k]G,k表示一随机数,k∈[1,n-1],[·]表示取整操作,mod表示求余操作;
(4b)按照下式,计算信任域DA内发送请求用户的标签的签名中的第二部分标识:
Ψ1=(1+SKU)-1(k-r1×SKU)modn,
其中,Ψ1表示信任域DA内发送请求的用户标签的签名中的第二部分标识;
(4c)将签名的第一部分标识与第二部分标识组合为信任域DA内发送请求的用户标签的签名;
(5)验证信任域DA内发送请求的用户标签的签名是否合法:
(5a)信任域DA内发送请求用户将签发标签、用户身份、用户签名标签时的时间戳、用户标签的签名发送给标签公证中心;
(5b)标签公证中心从标签中获取信任域DA内发送请求用户的公钥,按照下式,计算标签公证中心的临时私钥与临时公钥:
SKIDP=H((PK×s)||T),PKIDP=SKIDP×G,
其中,SKIDP表示标签公证中心IDP的临时私钥,PK表示信任域DA内发送请求用户的公钥,PKIDP表示标签公证中心IDP的临时公钥;
(5c)按照步骤(3)和步骤(4)中相同的方法,得到标签公证中心对标签的签名;
(5d)将满足认证条件的信任域DA内发送请求用户对标签的签名认定为合法签名,将信任域DA内发送请求用户对标签的签名认定为不合法签名;
(6)计算标签公证中心验证信任域DA内发送请求用户标签的签名后标签的杂凑值:
(6a)按照下式,计算验证信任域DA内发送请求用户标签的签名后标签公证中心的身份信息的杂凑值:
ZIDP=H256(IDIDP||ΩIDP||a||b||xG||yG||xIDP||yIDP),
其中,ZIDP表示验证信任域DA内发送请求用户标签的签名后标签公证中心的身份信息的杂凑值,IDIDP表示标签公证中心IDP的身份标识,ΩIDP表示标签公证中心IDP的身份标识IDIDP的长度值,xIDP、yIDP分别表示群公钥的横纵坐标;
(6b)按照下式,计算验证信任域DA内发送请求用户标签的签名后标签的杂凑值:
e2=Hv(L||ZIDP||B),
其中,e2表示验证信任域DA内发送请求用户标签的签名后标签的杂凑值,B表示一个因子,当用户标签的签名为合法签名时该因子取值为1,当用户标签的签名为不合法签名时该因子取值为0;
(7)利用SM2密码算法,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名:
(7a)按照下式,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名的第一部分标识:
r2=(e2+x1)modn
其中,r2表示标签公证中心验证用户标签的签名后对标签的签名的第一部分标识;
(7b)按照下式,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名的第二部分标识:
Ψ2=(1+s)-1(k-r2×s)modn,
其中,Ψ2表示标签公证中心验证用户标签的签名后对标签的签名的第二部分标识;
(7c)将签名的第一部分标识与第二部分标识组合为标签公证中心验证用户标签的签名后对标签的签名;
(8)验证标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名:
(8a)标签公证中心将信任域DA内发送请求用户标签、标签公证中心身份、因子B、标签公证中心验证用户标签的签名后对标签的签名发送给另一信任域DC内提供服务的服务端;
(8b)信任域DC内的服务端按照与步骤(6)相同的计算方法,得到标签公证中心验证用户标签的签名后标签的杂凑值e3;
(8c)按照下式,计算椭圆曲线上验证点的坐标:
(x2,y2)=[Ψ2]G+[(Ψ2+r2)modn]p,
其中,(x2,y2)表示椭圆曲线上的验证点的坐标;
(8d)信任域DC内的服务端判断签名是否满足合法条件,若是,则执行步骤(8e),否则,执行步骤(10);
(8e)判断因子B的值是否为1,若是,执行步骤(9),否则,执行步骤(10);
(9)服务端开启服务;
(10)服务端拒绝提供服务。
本发明与现有技术相比较,具有如下优点:
第一,由于本发明在密钥生成中心生成群公钥和群私钥的过程中,采用了SM2密码算法中产生密钥的方法,加快了密钥的生成速度,克服了现有技术的问题,密钥生成中心基于RSA密码算法所产生的公钥位数至少为1024位,公钥位数太长导致密钥生成速度慢,签名的签发速度慢,从而跨域认证的速度慢的问题,使得本发明具有优点,密钥生成中心基于SM2密码算法计算出来的群公钥的位数相比于基于RSA密码算法所产生的公钥位数大大缩短,密钥生成速度快,从而使整个跨域认证的速度加快。
第二,由于本发明利用SM2密码算法,计算信任域DA内发送请求的用户的标签的签名,克服了现有技术的问题,低位数的RSA密码算法所产生的的密钥已经可以被破解,在通信过程中系统参数、签名等信息被获取后,系统会受到重放攻击,所以采用RSA密码算法进行签名安全性低,跨域认证的安全性低,使得本发明具有优点SM2密码算法可以用较少的计算能力提供比RSA算法更高的安全强度,加入的时间戳标记了通信过程中发送系统参数、签名等信息的时间,可以使系统抵抗重放攻击,提高了整个跨越认证的安全性。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合附图1,对本发明实现步骤做进一步的描述。
步骤1,生成群公钥和群私钥。
密钥生成中心随机选择一个元素c∈Zq,其中,∈表示属于符号,Zq表示q阶的整数串,q表示一个大素数。
密钥生成中心将元素c作为群私钥s并保存,将群私钥s和基点G的乘积作为群公钥,G表示椭圆曲线上阶数为n的基点,n表示一个大素数。
当q是奇素数时,要求q>2191;当q是2的方幂2m时,要求m>192且为素数,当q是奇素数时,素域中的元素用整数0,1,2,q-1表示;当q是2的方幂2m时,二元扩域阶为2的F2上的m维向量空间,其元素可用长度为m的比特串表示。
选取有限域Fq的椭圆曲线方程为:
y2=x3+ax+b,
其中,椭圆曲线参数a、b∈Fq,且(4a3+27b2)modq≠0,其中modq表示整数除以q的求余运算。
椭圆曲线上的基点G=(xG,yG),其中xG、yG分别为为基点的横纵坐标。
步骤2,签发标签。
标签公证中心在整数串Zq中选择一个随机数m作为信任域DA内发送请求的用户的私钥,将发送请求的用户的私钥与基点G的乘积作为信任域DA内发送请求用户的公钥。
标签公证中心将信任域DA内发送请求用户的私钥和公钥通过安全信道发送给用户。
标签公证中心使用群公钥为信任域DA内发送请求用户签发标签。
所述的标签的信息包括版本号、序列号、公钥信息、签发日期、主体信息。
步骤3,计算杂凑值。
按照下式,计算信任域DA内发送请求用户的临时私钥和临时公钥:
SKU=H((SK×P)||T),PKU=SKU×G,
其中,SKU表示信任域DA内发送请求用户U的临时私钥,H(·)表示安全散列函数,SK表示信任域DA内发送请求用户的私钥,P表示群公钥,‖表示级联关系符号,T表示时间戳,PKU表示信任域DA内发送请求用户U的临时公钥。
按照下式,计算信任域DA内发送请求的用户身份信息的杂凑值:
ZU=H256(IDU||ΩU||a||b||xG||yG||xU||yU),
其中,ZU表示发送请求用户U在信任域DA内的身份信息的杂凑值,H256(·)表示输出长度为256比特的杂凑函数,IDU表示发送请求用户U在信任域DA内的身份标识,ΩU表示发送请求用户U在信任域DA内的身份标识IDU的长度值,xG、yG分别表示椭圆曲线上基点G的横纵坐标值,xU、yU分别表示信任域DA内发送请求用户临时公钥的横纵坐标值。
按照下式,计算待签名标签的杂凑值:
e1=Hv(L||ZU),
其中,e1表示待签名标签的杂凑值,Hv(·)表示密码杂凑函数,v表示带签名标签摘要长度,L表示标签信息。
步骤4,利用SM2密码算法,计算信任域DA内发送请求的用户的标签的签名。
按照下式,计算用户的标签的签名中的第一部分标识:
r1=(e1+x1)modn
其中,r表示信任域DA内发送请求的用户标签的签名中的第一部分标识,x1、y1分别表示椭圆曲线上任意点β的横坐标和纵坐标的值,β=(x1,y1)=[k]G,k表示一随机数,k∈[1,n-1],[]表示取整操作,mod表示求余操作。
按照下式,计算信任域DA内发送请求用户的标签的签名中的第二部分标识:
Ψ1=(1+SKU)-1(k-r1×SKU)modn,
其中,Ψ1表示信任域DA内发送请求的用户标签的签名中的第二部分标识。
将签名的第一部分标识与第二部分标识组合为信任域DA内发送请求的用户标签的签名。
步骤5,验证信任域DA内发送请求的用户标签的签名是否合法。
信任域DA内发送请求用户将签发标签、用户身份、用户签名标签时的时间戳、用户标签的签名发送给标签公证中心。
标签公证中心从标签中获取信任域DA内发送请求用户的公钥,按照下式,计算标签公证中心的临时私钥与临时公钥:
SKIDP=H((PK×s)||T),PKIDP=SKIDP×G,
其中,SKIDP表示标签公证中心IDP的临时私钥,PK表示信任域DA内发送请求用户的公钥,PKIDP表示标签公证中心IDP的临时公钥。
按照步骤3和步骤4中相同的方法,得到标签公证中心对标签的签名。
将满足认证条件的信任域DA内发送请求用户对标签的签名认定为合法签名,将信任域DA内发送请求用户对标签的签名认定为不合法签名。
所述的认证条件是指,接收的用户标签的签名与与标签公证中心的签发签名相同,且用户标签是由标签公证中心签发的,标签尚在有效期内、格式正确。
步骤6,计算标签公证中心验证信任域DA内发送请求用户标签的签名后标签的杂凑值。
按照下式,计算验证信任域DA内发送请求用户标签的签名后标签公证中心的身份信息的杂凑值:
ZIDP=H256(IDIDP||ΩIDP||a||b||xG||yG||xIDP||yIDP),
其中,ZIDP表示验证信任域DA内发送请求用户标签的签名后标签公证中心的身份信息的杂凑值,IDIDP表示标签公证中心IDP的身份标识,ΩIDP表示标签公证中心IDP的身份标识IDIDP的长度值,xIDP、yIDP分别表示群公钥的横纵坐标。
按照下式,计算验证信任域DA内发送请求用户标签的签名后标签的杂凑值:
e2=Hv(L||ZIDP||B),
其中,e2表示验证信任域DA内发送请求用户标签的签名后标签的杂凑值,B表示一个因子,当用户标签的签名为合法签名时该因子取值为1,当用户标签的签名为不合法签名时该因子取值为0。
步骤7,利用SM2密码算法,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名。
按照下式,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名的第一部分标识:
r2=(e2+x1)modn
其中,r2表示标签公证中心验证用户标签的签名后对标签的签名的第一部分标识。
按照下式,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名的第二部分标识:
Ψ2=(1+s)-1(k-r2×s)modn,
其中,Ψ2表示标签公证中心验证用户标签的签名后对标签的签名的第二部分标识。
将签名的第一部分标识与第二部分标识组合为标签公证中心验证用户标签的签名后对标签的签名。
步骤8,验证标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名。
标签公证中心将信任域DA内发送请求用户标签、标签公证中心身份、因子B、标签公证中心验证用户标签的签名后对标签的签名发送给另一信任域DC内提供服务的服务端。
信任域DC内的服务端按照与步骤6相同的计算方法,得到标签公证中心验证用户标签的签名后标签的杂凑值e3。
按照下式,计算椭圆曲线上验证点的坐标:
(x2,y2)=[Ψ2]G+[(Ψ2+r2)modn]p,
其中,(x2,y2)表示椭圆曲线上的验证点的坐标。
信任域DC内的服务端判断签名是否满足合法条件,若是,则执行下一步,否则,执行步骤10。
所述的合法条件是指同时满足r2∈[1,n-1],r2=(e3+x2)modn,Ψ2∈[1,n-1]三个公式成立的情形,其中,r2表示标签公证中心验证用户标签的签名后对标签的签名的第一部分标识,∈表示属于符号,n表示基点G的阶数,e3表示标签公证中心验证用户标签的签名后标签的杂凑值,x2表示椭圆曲线上的验证点的横坐标的值,mod表示求余操作,Ψ2表示标签公证中心验证用户标签的签名后对标签的签名的第二部分标识。
判断因子B的值是否为1,若是,执行步骤9,否则,执行步骤10。
步骤9,服务端开启服务。
步骤10,服务端拒绝提供服务。
Claims (4)
1.一种基于SM2密码算法的信息服务实体跨域认证方法,其特征在于,利用SM2密码算法,计算信任域DA内发送请求的用户的标签的签名,验证信任域DA内发送请求的用户标签的签名是否合法,该方法的具体步骤包括如下:
(1)生成群公钥和群私钥:
(1a)密钥生成中心随机选择一个元素c∈Zq,其中,∈表示属于符号,Zq表示q阶的整数串,q表示一个大素数;
(1b)密钥生成中心将元素c作为群私钥s并保存,将群私钥s和基点G的乘积作为群公钥,G表示椭圆曲线上阶数为n的基点,n表示一个大素数;
(2)签发标签:
(2a)标签公证中心在整数串Zq中选择一个随机数m作为信任域DA内发送请求的用户的私钥,将发送请求的用户的私钥与基点G的乘积作为信任域DA内发送请求用户的公钥;
(2b)标签公证中心将信任域DA内发送请求用户的私钥和公钥通过安全信道发送给用户;
(2c)标签公证中心使用群公钥为信任域DA内发送请求用户签发标签;
(3)计算杂凑值:
(3a)按照下式,计算信任域DA内发送请求用户的临时私钥和临时公钥:
SKU=H((SK×P)||T),PKU=SKU×G,
其中,SKU表示信任域DA内发送请求用户U的临时私钥,H(·)表示安全散列函数,SK表示信任域DA内发送请求用户的私钥,P表示群公钥,‖表示级联关系符号,T表示时间戳,PKU表示信任域DA内发送请求用户U的临时公钥;
(3b)按照下式,计算信任域DA内发送请求的用户身份信息的杂凑值:
ZU=H256(IDU||ΩU||a||b||xG||yG||xU||yU),
其中,ZU表示发送请求用户U在信任域DA内的身份信息的杂凑值,H256(·)表示输出长度为256比特的杂凑函数,IDU表示发送请求用户U在信任域DA内的身份标识,ΩU表示发送请求用户U在信任域DA内的身份标识IDU的长度值,xG、yG分别表示椭圆曲线上基点G的横纵坐标值,xU、yU分别表示信任域DA内发送请求用户临时公钥的横纵坐标值;
(3c)按照下式,计算待签名标签的杂凑值:
e1=Hv(L||ZU),
其中,e1表示待签名标签的杂凑值,Hv(·)表示密码杂凑函数,v表示带签名标签摘要长度,L表示标签信息;
(4)利用SM2密码算法,计算信任域DA内发送请求的用户的标签的签名:
(4a)按照下式,计算用户的标签的签名中的第一部分标识:
r1=(e1+x1)mod n
其中,r表示信任域DA内发送请求的用户标签的签名中的第一部分标识,x1、y1分别表示椭圆曲线上任意点β的横坐标和纵坐标的值,β=(x1,y1)=[k]G,k表示一随机数,k∈[1,n-1],[]表示取整操作,mod表示求余操作;
(4b)按照下式,计算信任域DA内发送请求用户的标签的签名中的第二部分标识:
Ψ1=(1+SKU)-1(k-r1×SKU)mod n,
其中,Ψ1表示信任域DA内发送请求的用户标签的签名中的第二部分标识;
(4c)将签名的第一部分标识与第二部分标识组合为信任域DA内发送请求的用户标签的签名;
(5)验证信任域DA内发送请求的用户标签的签名是否合法:
(5a)信任域DA内发送请求用户将签发标签、用户身份、用户签名标签时的时间戳、用户标签的签名发送给标签公证中心;
(5b)标签公证中心从标签中获取信任域DA内发送请求用户的公钥,按照下式,计算标签公证中心的临时私钥与临时公钥:
SKIDP=H((PK×s)||T),PKIDP=SKIDP×G,
其中,SKIDP表示标签公证中心IDP的临时私钥,PK表示信任域DA内发送请求用户的公钥,PKIDP表示标签公证中心IDP的临时公钥;
(5c)按照步骤(3)和步骤(4)中相同的方法,得到标签公证中心对标签的签名;
(5d)将满足认证条件的信任域DA内发送请求用户对标签的签名认定为合法签名,将信任域DA内发送请求用户对标签的签名认定为不合法签名;
(6)计算标签公证中心验证信任域DA内发送请求用户标签的签名后标签的杂凑值:
(6a)按照下式,计算验证信任域DA内发送请求用户标签的签名后标签公证中心的身份信息的杂凑值:
ZIDP=H256(IDIDP||ΩIDP||a||b||xG||yG||xIDP||yIDP),
其中,ZIDP表示验证信任域DA内发送请求用户标签的签名后标签公证中心的身份信息的杂凑值,IDIDP表示标签公证中心IDP的身份标识,ΩIDP表示标签公证中心IDP的身份标识IDIDP的长度值,xIDP、yIDP分别表示群公钥的横纵坐标;
(6b)按照下式,计算验证信任域DA内发送请求用户标签的签名后标签的杂凑值:
e2=Hv(L||ZIDP||B),
其中,e2表示验证信任域DA内发送请求用户标签的签名后标签的杂凑值,B表示一个因子,当用户标签的签名为合法签名时该因子取值为1,当用户标签的签名为不合法签名时该因子取值为0;
(7)利用SM2密码算法,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名:
(7a)按照下式,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名的第一部分标识:
r2=(e2+x1)mod n
其中,r2表示标签公证中心验证用户标签的签名后对标签的签名的第一部分标识;
(7b)按照下式,计算标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名的第二部分标识:
Ψ2=(1+s)-1(k-r2×s)mod n,
其中,Ψ2表示标签公证中心验证用户标签的签名后对标签的签名的第二部分标识;
(7c)将签名的第一部分标识与第二部分标识组合为标签公证中心验证用户标签的签名后对标签的签名;
(8)验证标签公证中心验证信任域DA内发送请求用户标签的签名后对标签的签名:
(8a)标签公证中心将信任域DA内发送请求用户标签、标签公证中心身份、因子B、标签公证中心验证用户标签的签名后对标签的签名发送给另一信任域DC内提供服务的服务端;
(8b)信任域DC内的服务端按照与步骤(6)相同的计算方法,得到标签公证中心验证用户标签的签名后标签的杂凑值e3;
(8c)按照下式,计算椭圆曲线上验证点的坐标:
(x2,y2)=[Ψ2]G+[(Ψ2+r2)mod n]p,
其中,(x2,y2)表示椭圆曲线上的验证点的坐标;
(8d)信任域DC内的服务端判断签名是否满足合法条件,若是,则执行步骤(8e),否则,执行步骤(10);
(8e)判断因子B的值是否为1,若是,执行步骤(9),否则,执行步骤(10);
(9)服务端开启服务;
(10)服务端拒绝提供服务。
2.根据权利要求1所述的基于SM2密码算法的信息服务实体跨域认证方法,其特征在于,步骤(2c)中所述的标签信息包括版本号、序列号、公钥信息、签发日期、主体信息。
3.根据权利要求1所述的基于SM2密码算法的信息服务实体跨域认证方法,其特征在于,步骤(5d)中所述的认证条件是指,接收的用户标签的签名与与标签公证中心的签发签名相同,且用户标签是由标签公证中心签发的,标签尚在有效期内、格式正确。
4.根据权利要求1所述的基于SM2密码算法的信息服务实体跨域认证方法,其特征在于,步骤(8d)中所述的合法条件是指同时满足r2∈[1,n-1],r2=(e3+x2)mod n,Ψ2∈[1,n-1]三个公式成立的情形,其中,r2表示标签公证中心验证用户标签的签名后对标签的签名的第一部分标识,∈表示属于符号,n表示基点G的阶数,e3表示标签公证中心验证用户标签的签名后标签的杂凑值,x2表示椭圆曲线上的验证点的横坐标的值,mod表示求余操作,Ψ2表示标签公证中心验证用户标签的签名后对标签的签名的第二部分标识。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910618117.9A CN110336664B (zh) | 2019-07-10 | 2019-07-10 | 基于sm2密码算法的信息服务实体跨域认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910618117.9A CN110336664B (zh) | 2019-07-10 | 2019-07-10 | 基于sm2密码算法的信息服务实体跨域认证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110336664A true CN110336664A (zh) | 2019-10-15 |
CN110336664B CN110336664B (zh) | 2021-07-20 |
Family
ID=68145270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910618117.9A Active CN110336664B (zh) | 2019-07-10 | 2019-07-10 | 基于sm2密码算法的信息服务实体跨域认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110336664B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112737778A (zh) * | 2020-12-30 | 2021-04-30 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 数字签名生成、验证方法及装置、电子设备及存储介质 |
CN112887292A (zh) * | 2021-01-21 | 2021-06-01 | 赵希青 | 一种基于dcs的用户接入认证系统 |
CN113190862A (zh) * | 2021-05-10 | 2021-07-30 | 成都卫士通信息产业股份有限公司 | 基于sm2的无证书密钥生成方法、装置、电子设备及介质 |
CN113779634A (zh) * | 2021-09-17 | 2021-12-10 | 江苏通付盾区块链科技有限公司 | 一种数据存储方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102164151A (zh) * | 2011-05-20 | 2011-08-24 | 北京理工大学 | 一种基于双线性群的跨域联盟认证方法 |
WO2018147800A1 (en) * | 2017-02-09 | 2018-08-16 | Huawei International Pte. Ltd. | System and method for computing private keys for self certified identity based signature schemes |
CN108847933A (zh) * | 2018-06-26 | 2018-11-20 | 西安电子科技大学 | 基于sm9密码算法的标识签发方法 |
-
2019
- 2019-07-10 CN CN201910618117.9A patent/CN110336664B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102164151A (zh) * | 2011-05-20 | 2011-08-24 | 北京理工大学 | 一种基于双线性群的跨域联盟认证方法 |
WO2018147800A1 (en) * | 2017-02-09 | 2018-08-16 | Huawei International Pte. Ltd. | System and method for computing private keys for self certified identity based signature schemes |
CN108847933A (zh) * | 2018-06-26 | 2018-11-20 | 西安电子科技大学 | 基于sm9密码算法的标识签发方法 |
Non-Patent Citations (2)
Title |
---|
LIU XIAOXUE: "CDAKA: A Provably-Secure Heterogeneous Cross-Domain Authenticated Key Agreement Protocol with Symptoms-Matching in TMIS", 《JOURNAL OF MEDICAL SYSTEMS》 * |
张文芳: "基于椭圆曲线密码体制的高效虚拟企业跨域认证方案", 《电子学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112737778A (zh) * | 2020-12-30 | 2021-04-30 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 数字签名生成、验证方法及装置、电子设备及存储介质 |
CN112737778B (zh) * | 2020-12-30 | 2022-08-12 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 数字签名生成、验证方法及装置、电子设备及存储介质 |
CN112887292A (zh) * | 2021-01-21 | 2021-06-01 | 赵希青 | 一种基于dcs的用户接入认证系统 |
CN113190862A (zh) * | 2021-05-10 | 2021-07-30 | 成都卫士通信息产业股份有限公司 | 基于sm2的无证书密钥生成方法、装置、电子设备及介质 |
CN113190862B (zh) * | 2021-05-10 | 2023-01-06 | 成都卫士通信息产业股份有限公司 | 基于sm2的无证书密钥生成方法、装置、电子设备及介质 |
CN113779634A (zh) * | 2021-09-17 | 2021-12-10 | 江苏通付盾区块链科技有限公司 | 一种数据存储方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110336664B (zh) | 2021-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Javaid et al. | DrivMan: Driving trust management and data sharing in VANETS with blockchain and smart contracts | |
US8930704B2 (en) | Digital signature method and system | |
Kumar et al. | SEBAP: a secure and efficient biometric‐assisted authentication protocol using ECC for vehicular cloud computing | |
CN112039872A (zh) | 基于区块链的跨域匿名认证方法及系统 | |
He et al. | Handover authentication for mobile networks: security and efficiency aspects | |
CN109687976A (zh) | 基于区块链与pki认证机制的车队组建及管理方法及系统 | |
CN110336664A (zh) | 基于sm2密码算法的信息服务实体跨域认证方法 | |
CN107579819A (zh) | 一种sm9数字签名生成方法及系统 | |
US8422670B2 (en) | Password authentication method | |
CN112039660B (zh) | 一种物联网节点群组身份安全认证方法 | |
CN110768954B (zh) | 适用于5g网络设备的轻量级安全接入认证方法及应用 | |
Imine et al. | MASFOG: An efficient mutual authentication scheme for fog computing architecture | |
CN109756877A (zh) | 一种海量NB-IoT设备的抗量子快速认证与数据传输方法 | |
He et al. | An accountable, privacy-preserving, and efficient authentication framework for wireless access networks | |
CN113055394A (zh) | 一种适用于v2g网络的多服务双因子认证方法及系统 | |
CN110661816B (zh) | 一种基于区块链的跨域认证方法与电子设备 | |
CN111917550A (zh) | 基于无证书聚类签名无双线性对的认证方法及系统 | |
Xie et al. | [Retracted] Provable Secure and Lightweight Vehicle Message Broadcasting Authentication Protocol with Privacy Protection for VANETs | |
CN113438650B (zh) | 基于区块链的网络设备认证方法及系统 | |
Bicakci et al. | Server assisted signatures revisited | |
Karacan et al. | Quantum secure communication between service provider and Sim | |
Yongliang et al. | Elliptic curve cryptography based wireless authentication protocol | |
KR20110016387A (ko) | 공개키 기반 인증장치 및 방법 | |
CN114095229B (zh) | 能源互联网的数据传输协议构建方法、装置和系统 | |
Zhang et al. | Verifier-based anonymous password-authenticated key exchange protocol in the standard model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |