CN112636922B - 基于无交互零知识证明的iot身份认证方法 - Google Patents

基于无交互零知识证明的iot身份认证方法 Download PDF

Info

Publication number
CN112636922B
CN112636922B CN202011519966.8A CN202011519966A CN112636922B CN 112636922 B CN112636922 B CN 112636922B CN 202011519966 A CN202011519966 A CN 202011519966A CN 112636922 B CN112636922 B CN 112636922B
Authority
CN
China
Prior art keywords
identity
authentication
applicant
information
message
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
Application number
CN202011519966.8A
Other languages
English (en)
Other versions
CN112636922A (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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202011519966.8A priority Critical patent/CN112636922B/zh
Publication of CN112636922A publication Critical patent/CN112636922A/zh
Application granted granted Critical
Publication of CN112636922B publication Critical patent/CN112636922B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3218Cryptographic 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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y30/00IoT infrastructure
    • G16Y30/10Security thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3297Cryptographic 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 time stamps, e.g. generation of time stamps

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于物联网技术领域,具体涉及一种基于无交互零知识证明的身份认证的方法,证明者向权威第三方提供能够证明自己身份的材料,取得有权威第三方私钥签名的身份签名;证明者由这个身份签名再结合本协议的算法生成零知识性的验证消息,可以向任意验证者无交互零知识证明自己的身份,即自己拥有这个来自权威第三方的身份签名,且不暴露自己的身份签名内容;当所述零知识证明验证成功时,验证者端所连接的IOT设备可以进行进一步的动作。本方案采用的无交互式零知识验证不需要在验证者端提前存储任何证明者的信息,这样一方面保证了证明者信息的安全性,另一方面实现了认证硬件的低功耗、小体积满足了IOT设备的特点。

Description

基于无交互零知识证明的IOT身份认证方法
技术领域
本发明涉及物联网领域,确切地说涉及一种基于无交互零知识证明的身份认证的方法。
背景技术
零知识证明(Zero—Knowledge Proof),是由S.Goldwasser、S.Micali及C.Rackoff在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。
在有必要证明一个命题是否正确,又不需要提示与这个命题相关的任何信息时,零知识证明***是不可或缺的。零知识证明***包括两部分:宣称某一命题为真的证明者和确认该命题确实为真的验证者。证明是通过这两部分之间的交互来执行的。在零知识协议的结尾,验证者只有当命题为真时才会确认。但是,如果示证者宣称一个错误的命题,那么验证者完全可能发现这个错误。这种思想源自交互式证明***。
零知识证明起源于最小泄露证明,设P表示掌握某些信息,并希望证实这一事实的实体,设V是证明这一事实的实体,假如某个协议向V证明P的确掌握某些信息,但V无法推断出这些信息是什么,我们称P实现了最小泄露证明,不仅如此,如果V除了知道P能够证明某一事实外,不能够得到其他任何知识,我们称P实现了零知识证明,相应的协议称作零知识协议。
如在现有技术中公开号为CN111600844A,公开时间为2020年08月28日,名称为“一种基于零知识证明的身份分发和认证方法”的中国发明专利文献,公开了一种基于零知识证明的身份分发和认证方法,基于身份硬件和认证终端,身份硬件包括唯一硬件信息,包括:经用户申请,并提供身份信息,权威机构分配身份硬件,唯一硬件信息经权威机构写入区块链,通过创建在区块链上的数字身份智能合约得到公钥信息Pk、用户地址Uk和一次性私钥,并获取身份ID;权威机构将身份信息及身份ID录入身份硬件;用户通过身份认证硬件及认证终端签发一个零知识证明身份信息给权威机构;权威机构认证用户签发的零知识证明身份信息;认证通过,发送链上请求,把身份ID和身份信息内容注册到区块链上的数字身份智能合约对象中,身份分发认证完成;本发明在***露具体身份信息的条件下,验证身份的真实性和准确性。
但是现有技术中这种传统的交互式零知识证明需要对于每个挑战的响应都是正确的才会通过,而且一个验证者的验证结果无法得到其他验证者共识,其他验证者想要验证证明者的身份,需要重复同样的流程,导致现有的IOT设备因为大批量、轻量级特点而难以完成安全的身份认证的问题,效率与稳定性都有待提高。
发明内容
本发明针对现有技术的不足,交互式零知识证明的基础上进一步改进、仅需要证明者单方面一次发送验证消息就可以完成验证,而且证明者一次生成的消息可以允许多个验证者检验、极大的提升了效率与稳定性的无交互零知识证明的身份认证的方法。
本发明所公开的基于无交互零知识证明的身份认证的方法,包括以下步骤:
一种基于无交互零知识证明的IOT身份认证方法,包括签名发布步骤和身份认证环步骤;
所述签名发布步骤,申请身份认证的申请人向第三方提出附有证明材料的身份证明申请;第三方对身份证明申请进行身份审核,并将审核身份属实的身份证明申请生成认证身份信息;第三方对身份信息进行时戳添加处理并用私钥进行签名,然后将签名好的认证身份信息从安全信道返回给申请人。
具体的,所述签名发布步骤中,具体包括以下步骤:
步骤1,申请身份认证的申请人从工作单位等职能部门开出规定的证明材料,并向权威第三方提出附有所述证明材料的身份证明申请;
步骤2,权威第三方对身份证明申请中的证明材料进行审核,并将审核结果中身份属实的身份证明申请生成认证身份信息,对认证身份信息进行时戳添加处理并用私钥进行签名。
步骤3,将签名好的认证身份信息通过硬件上直接连接传输的安全信道返回给申请人。
进一步的,所述步骤2中,权威第三方对认证身份信息进行时戳添加处理并用私钥进行签名后生成认证身份证明,具体的,认证身份证明s为
s=(H(id|TR|TRv))dmod n,
式中H()是SM3密码杂凑算法,mod n为求余函数,n为正负整数,id为申请人的身份信息(身份证号、职务、级别等任何信息皆可),TR为生成认证身份证明时的时间戳,TRv为认证身份证明的有效期,d为RSA私钥,生成认证身份证明s是作为证明者的权威第三方对申请人的身份证明,应当被安全的保存在身份认证硬件当中,然后用零知识证明的方式向验证者V证明自己拥有这个s。
优选地,SM3密码杂凑算法在信息安全领域中用于计算消息的摘要,校验消息的完整性,所述SM3密码杂凑算法对长度为l比特的消息,经过填充和迭代压缩,生成长度固定为256比特的杂凑值,其中l<264
进一步的,所述步骤3中,将签名好的认证身份信息通过硬件上直接连接传输的安全信道返回给申请人,具体的,认证身份证明s作为权威第三方对申请人的身份证明,将所述步骤2中生成的认证身份证明s安全的保存在身份认证硬件当中,然后用零知识证明的方式向需要对申请人进行身份认证的验证者V提供保存在身份认证硬件中的认证身份证明s作为身份认证凭证。
在作为零知识证明的证明者的申请人从权威第三方获得自己的身份签名后,是身份验证环节证明者想要向验证者证明自己拥有这个身份,这一环节的原理是权威第三方的证明者会把自己的身份明文发给验证者,它能直观的说明了证明者的身份是否合法,但这一身份不一定是真实的,所以此时证明者还需要证明自己拥有签名,因此还需要进行所述身份认证环步骤,申请人在本地对所述签名发布步骤中得到的签名好的认证身份信息进行运算,得到包含认证身份信息生成时间信息的零知识的身份验证消息,包含认证身份信息生成时间信息能有效的防止了重放攻击,并通过通信模块将身份验证消息定向发送给需要对申请人进行身份认证的验证者,验证者对收到的身份验证消息进行报文解析,并验证报文解析得到的申请人的身份信息id是否合法。
所述身份认证环步骤中,申请人在本地对所述签名发布步骤中得到的签名好的认证身份信息进行运算,具体的:
申请人在本地生成x个随机数(rnum0,rnum1,...,rnumx-1),但是证明过程不能暴露身份签名的内容,否则就有被冒用身份的可能,因此秘密计算中间变量ri
ri=rnumi emod n,
式中mod n为求余函数,rnumi e为第i个随机数的e次幂,e是RSA公钥;
再计算作为证明者的申请人的待发送消息c:
c=H(id|TP|TPv|r0|r1|…|rx-1)
式中id为申请人的身份信息(身份证号、职务、级别等任何信息皆可),TP为收到身份验证消息的时间戳,TPv为身份验证消息有效期,ri为第i个上文中计算出来的中间变量;
再计算用以辅助身份验证的中间变量pi
Figure GDA0003544341840000041
式中,s是从权威第三方处获得的身份证明,在上文中有表述,c[i]是c的第i比特的值。
所述身份认证环步骤中,申请人将身份验证消息定向发送给需要对申请人进行身份认证的验证者,身份验证消息中的每一个元素都是根据协议约定的64字节,验证者收到后可以很容易的根据协议约定提取出每一个元素的内容,身份验证消息中的元素包括{c,id,TR,TRv,TP,TPv,p0,p1,…,px-1},其中,id为申请人的身份信息(身份证号、职务、级别等任何信息皆可),c为中间变量,TR为生成认证身份证明时的时间戳,TRv为认证身份证明的有效期,TPv为身份验证消息有效期,TP为收到身份验证消息的时间戳,pi是前面步骤计算出来用以辅助验证的中间变量。
所述身份认证步骤中,验证报文解析得到的申请人的身份信息id是否合法,具体的,验证者首先计算辅助验证的中间变量c’:
c’=H(id|TP|TPv|v0|v1|…|vx-1)
在计算公式中的vi也是中间变量,它的值是:
Figure GDA0003544341840000042
验证者V进行条件检验:
Figure GDA0003544341840000051
证明者在最初选取的随机数rnum的个数是x,在证明步骤中会根据中间变量c的前x比特进行不同的操作,所以攻击者如果不知道身份证明的内容而想要随机碰撞正确的结果,对于c的每一个比特都有
Figure GDA0003544341840000052
的概率猜对(0或1),那么当选取x个随机数后,攻击者就有
Figure GDA0003544341840000053
的概率猜对,如果检验以上条件(1)~(3)都满足的话,那么验证者V就可以有
Figure GDA0003544341840000054
的概率判定申请人的身份信息id为真实,反之则为不真实。
进一步的,验证者判定申请人的身份信息id不真实,如Tnow>TR+TRv时,则返馈包括身份错误、身份证明过期或验证消息过期的信息。
与现有技术相比,本发明所达到的有益效果如下:
身份认证协议总共包含权威第三方、证明者、验证者,作为零知识证明的证明者的申请人从工作单位等职能部门开出规定的证明材料,然后向权威第三方提出身份证明申请,然后身份证明生成,权威第三方审核身份属实后,对身份信息进行处理添加时戳、然后用自己的私钥进行签名,最后身份证明颁发,将从安全信道返回给申请人,在这个应用场景中一般不通过网络,而是硬件上直接连接传输。而在证明者从权威第三方获得自己的身份签名后,是身份验证环节证明者想要向验证者证明自己拥有这个身份,这一环节的原理是证明者会把自己的身份明文发给验证者,它能直观的说明了证明者的身份是否合法,但这一身份不一定是真实的,所以此时证明者还需要证明自己拥有签名,但是证明过程不能暴露身份签名的内容,否则就有被冒用身份的可能。本方案中的无交互零知识证明只需要证明者单方面一次发送验证消息就可以完成验证,而且证明者一次生成的消息可以允许多个验证者检验,极大的提升了效率与稳定性。
附图说明
本发明的前述和下文具体描述在结合以下附图阅读时变得更清楚,附图中:
图1是本发明的身份验证环节架构示意图;
图2是身份验证环节的流程示意图;
图3是证明者发送给验证者的验证消息的报文格式和实际抓包示例。
具体实施方式
下面通过具体的实施例来进一步说明实现本发明目的技术方案,需要说明的是,本发明要求保护的技术方案包括但不限于以下实施例。
本实施例公开了一种基于无交互零知识证明的IOT身份认证方法,包括签名发布步骤和身份认证环步骤。
所述签名发布步骤,申请身份认证的申请人向第三方提出附有证明材料的身份证明申请;第三方对身份证明申请进行身份审核,并将审核身份属实的身份证明申请生成认证身份信息;第三方对身份信息进行时戳添加处理并用私钥进行签名,然后将签名好的认证身份信息从安全信道返回给申请人。即首先材料递交,申请人从工作单位等职能部门开出规定的证明材料;然后向权威第三方提出身份证明申请,然后身份证明生成,权威第三方审核身份属实后,对身份信息进行处理添加时戳、然后用自己的私钥进行签名;最后身份证明颁发,身份证明将从安全信道返回给申请人,在这个应用场景中一般不通过网络,而是硬件上直接连接传输。
在作为零知识证明的证明者的申请人从权威第三方获得自己的身份签名后,是身份验证环节证明者想要向验证者证明自己拥有这个身份,这一环节的原理是证明者会把自己的身份明文发给验证者,它能直观的说明了证明者的身份是否合法,但这一身份不一定是真实的,所以此时证明者还需要证明自己拥有签名,因此还需要进行所述身份认证环步骤,申请人在本地对所述签名发布步骤中得到的签名好的认证身份信息进行运算,得到包含认证身份信息生成时间信息的零知识的身份验证消息,包含认证身份信息生成时间信息能有效的防止了重放攻击,并通过通信模块将身份验证消息定向发送给需要对申请人进行身份认证的验证者,验证者对收到的身份验证消息进行报文解析,并验证报文解析得到的申请人的身份信息id是否合法。
进一步的,所述签名发布步骤中,具体包括以下步骤:
步骤1,申请身份认证的申请人从工作单位等职能部门开出规定的证明材料,并向权威第三方提出附有所述证明材料的身份证明申请;
步骤2,权威第三方对身份证明申请中的证明材料进行审核,并将审核结果中身份属实的身份证明申请生成认证身份信息,并对认证身份信息进行时戳添加处理并用私钥进行签名。
步骤3,将签名好的认证身份信息通过硬件上直接连接传输的安全信道返回给申请人。
进一步的,所述步骤2中,权威第三方对认证身份信息进行时戳添加处理并用私钥进行签名后生成认证身份证明,具体的,认证身份证明s为
s=(H(id|TR|TRv))dmod n,
式中H()是SM3密码杂凑算法,mod n为求余函数,n为正负整数,id为申请人的身份信息(身份证号、职务、级别等任何信息皆可),TR为生成认证身份证明时的时间戳,TRv为认证身份证明的有效期,d为RSA私钥,生成认证身份证明s是作为证明者的权威第三方对申请人的身份证明,应当被安全的保存在身份认证硬件当中,然后用零知识证明的方式向验证者V证明自己拥有这个s。
优选地,SM3密码杂凑算法在信息安全领域中用于计算消息的摘要,校验消息的完整性,所述SM3密码杂凑算法对长度为l比特的消息,经过填充和迭代压缩,生成长度固定为256比特的杂凑值,其中l<264
进一步的,所述步骤3中,将签名好的认证身份信息通过硬件上直接连接传输的安全信道返回给申请人,具体的,认证身份证明s作为权威第三方对申请人的身份证明,将所述步骤2中生成的认证身份证明s安全的保存在身份认证硬件当中,然后用零知识证明的方式向需要对申请人进行身份认证的验证者V提供保存在身份认证硬件中的认证身份证明s作为身份认证凭证。
进一步的,所述身份认证环步骤,申请人在本地对所述签名发布步骤中得到的签名好的认证身份信息进行运算,具体的:申请人在本地生成x个随机数(rnum0,rnum1,...,rnumx-1),但是证明过程不能暴露身份签名的内容,否则就有被冒用身份的可能,因此秘密计算中间变量ri
ri=rnumi emod n,式中mod n为求余函数,rnumi e为第i个随机数的e次幂,e是RSA公钥;
再计算作为证明者的申请人的待发送消息c:
c=H(id|TP|TPv|r0|r1|…|rx-1)
式中id为申请人的身份信息(身份证号、职务、级别等任何信息皆可),TP为收到身份验证消息的时间戳,TPv为身份验证消息有效期,ri为第i个上文中计算出来的中间变量;
再计算用以辅助身份验证的中间变量pi
Figure GDA0003544341840000081
式中,s是从权威第三方处获得的身份证明,在上文中有表述,c[i]是c的第i比特的值。
优选地,所述身份认证环步骤中,申请人将身份验证消息定向发送给需要对申请人进行身份认证的验证者,身份验证消息中的每一个元素都是根据协议约定的64字节,验证者收到后可以很容易的根据协议约定提取出每一个元素的内容,身份验证消息中的元素包括{c,id,TR,TRv,TP,TPv,p0,p1,…,px-1},其中,id为申请人的身份信息(身份证号、职务、级别等任何信息皆可),c为中间变量,TR为生成认证身份证明时的时间戳,TRv为认证身份证明的有效期,TPv为身份验证消息有效期,TP为收到身份验证消息的时间戳,pi是前面步骤计算出来用以辅助验证的中间变量。
进一步的,所述身份认证步骤中,验证报文解析得到的申请人的身份信息id是否合法,具体的,验证者首先计算辅助验证的中间变量c’:
c’=H(id|TP|TPv|v0|v1|…|vx-1)
在计算公式中的vi也是中间变量,它的值是:
Figure GDA0003544341840000082
验证者V进行条件检验:
Figure GDA0003544341840000083
证明者在最初选取的随机数rnum的个数是x,在证明步骤中会根据中间变量c的前x比特进行不同的操作,所以攻击者如果不知道身份证明的内容而想要随机碰撞正确的结果,对于c的每一个比特都有
Figure GDA0003544341840000084
的概率猜对(0或1),那么当选取x个随机数后,攻击者就有
Figure GDA0003544341840000085
的概率猜对,如果检验以上条件(1)~(3)都满足的话,那么验证者V就可以有
Figure GDA0003544341840000086
的概率判定申请人的身份信息id为真实,反之则为不真实。
优选地,验证者判定申请人的身份信息id不真实,如Tnow>TR+TRv时,则返馈包括身份错误、身份证明过期或验证消息过期的信息。

Claims (6)

1.一种基于无交互零知识证明的IOT身份认证方法,其特征在于,包括签名发布步骤和身份认证环步骤;
所述签名发布步骤,申请身份认证的申请人向作为认证者的第三方提出附有证明材料的身份证明申请;第三方对身份证明申请进行身份审核,并将审核身份属实的身份证明申请生成认证身份信息;第三方对认证身份信息进行时戳添加处理并用私钥进行签名,然后将签名好的认证身份信息从安全信道返回给申请人;
所述身份认证环步骤,申请人在本地对所述签名发布步骤中得到的签名好的认证身份信息进行运算,得到包含认证身份信息生成时间信息的零知识的身份验证消息,并通过通信模块将身份验证消息定向发送给需要对申请人进行身份认证的验证者,验证者对收到的身份验证消息进行报文解析,并验证报文解析得到的申请人的身份信息id是否合法;
所述身份认证环步骤中,申请人在本地对所述签名发布步骤中得到的签名好的认证身份信息进行运算,具体的:
申请人在本地生成x个随机数(rnum0,rnum1,...,rnumx-1),但是证明过程不能暴露身份签名的内容,否则就有被冒用身份的可能,因此秘密计算中间变量
Figure DEST_PATH_IMAGE001
Figure DEST_PATH_IMAGE002
式中
Figure DEST_PATH_IMAGE003
为求余函数,
Figure DEST_PATH_IMAGE004
为第i个随机数的e次幂,e是RSA公钥;
再计算作为证明者的申请人的待发送消息c:
Figure DEST_PATH_IMAGE005
式中id为申请人的身份信息,所述身份信息包括身份证号、职务和级别,TP为收到身份验证消息的时间戳,TPv为身份验证消息有效期,
Figure 850125DEST_PATH_IMAGE001
为第i个上文中计算出来的中间变量;
再计算用以辅助身份验证的中间变量
Figure DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE007
式中,s是从权威第三方处获得的身份证明,在上文中有表述,c[i]是c的第i比特的值;
所述身份认证环步骤中,申请人将身份验证消息定向发送给需要对申请人进行身份认证的验证者,身份验证消息中的每一个元素都是根据协议约定的64字节,验证者收到后可以很容易的根据协议约定提取出每一个元素的内容,身份验证消息中的元素包括
Figure DEST_PATH_IMAGE008
,其中,id为申请人的身份信息,所述身份信息包括身份证号、职务和级别,
Figure DEST_PATH_IMAGE009
为中间变量,TR为生成认证身份证明时的时间戳,TRv为认证身份证明的有效期,TPv为身份验证消息有效期,TP为收到身份验证消息的时间戳,
Figure 642631DEST_PATH_IMAGE006
是前面步骤计算出来用以辅助验证的中间变量;
所述身份认证环步骤中,验证报文解析得到的申请人的身份信息id是否合法,具体的,验证者首先计算辅助验证的中间变量
Figure DEST_PATH_IMAGE010
Figure DEST_PATH_IMAGE011
在计算公式中的
Figure DEST_PATH_IMAGE012
也是中间变量,它的值是:
Figure DEST_PATH_IMAGE013
验证者V进行条件检验:
Figure DEST_PATH_IMAGE014
申请人在最初选取的随机数rnum的个数是x,在证明步骤中会根据中间变量c的前x比特进行不同的操作,所以攻击者如果不知道身份证明的内容而想要随机碰撞正确的结果,对于c的每一个比特都有
Figure DEST_PATH_IMAGE015
的概率猜对,那么当选取x个随机数后,攻击者就有
Figure DEST_PATH_IMAGE016
的概率猜对,如果检验以上条件(1)~(3)都满足的话,那么验证者V就可以有
Figure DEST_PATH_IMAGE017
的概率判定申请人的身份信息id为真实,反之则为不真实。
2.如权利要求1所述的一种基于无交互零知识证明的IOT身份认证方法,其特征在于,所述签名发布步骤中,具体包括以下步骤:
步骤1,申请身份认证的申请人从工作单位职能部门开出规定的证明材料,并向权威第三方提出附有所述证明材料的身份证明申请;
步骤2,权威第三方对身份证明申请中的证明材料进行审核,并将审核结果中身份属实的身份证明申请生成认证身份信息,对认证身份信息进行时戳添加处理并用私钥进行签名;
步骤3,将签名好的认证身份信息通过硬件上直接连接传输的安全信道返回给申请人。
3.如权利要求2所述的一种基于无交互零知识证明的IOT身份认证方法,其特征在于:所述步骤2中,权威第三方对认证身份信息进行时戳添加处理并用私钥进行签名后生成认证身份证明,具体的,认证身份证明s为
Figure DEST_PATH_IMAGE018
式中H()是SM3密码杂凑算法,modn为求余函数,n为正/负整数,id为申请人的身份信息,TR为生成认证身份证明时的时间戳,TRv为认证身份证明的有效期,d为RSA私钥,生成认证身份证明s是作为证明者的权威第三方对申请人的身份证明,应当被安全的保存在身份认证硬件当中,然后用零知识证明的方式向验证者V证明自己拥有这个s。
4.如权利要求3所述的一种基于无交互零知识证明的IOT身份认证方法,其特征在于:所述SM3密码杂凑算法对长度为
Figure DEST_PATH_IMAGE020
比特的消息,经过填充和迭代压缩,生成长度固定为256比特的杂凑值,其中
Figure DEST_PATH_IMAGE022
5.如权利要求3或4所述的一种基于无交互零知识证明的IOT身份认证方法,其特征在于:所述步骤3中,将签名好的认证身份信息通过硬件上直接连接传输的安全信道返回给申请人,具体的,将所述步骤2中生成的认证身份证明s保存在身份认证硬件当中,然后用零知识证明的方式向需要对申请人进行身份认证的验证者V提供保存在身份认证硬件中的认证身份证明s作为身份认证凭证。
6.如权利要求1所述的一种基于无交互零知识证明的IOT身份认证方法,其特征在于:验证者判定申请人的身份信息id不真实,则返馈包括身份错误、身份证明过期或验证消息过期的信息。
CN202011519966.8A 2020-12-21 2020-12-21 基于无交互零知识证明的iot身份认证方法 Active CN112636922B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011519966.8A CN112636922B (zh) 2020-12-21 2020-12-21 基于无交互零知识证明的iot身份认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011519966.8A CN112636922B (zh) 2020-12-21 2020-12-21 基于无交互零知识证明的iot身份认证方法

Publications (2)

Publication Number Publication Date
CN112636922A CN112636922A (zh) 2021-04-09
CN112636922B true CN112636922B (zh) 2022-05-03

Family

ID=75320859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011519966.8A Active CN112636922B (zh) 2020-12-21 2020-12-21 基于无交互零知识证明的iot身份认证方法

Country Status (1)

Country Link
CN (1) CN112636922B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114938280A (zh) * 2022-05-24 2022-08-23 中国科学技术大学 一种基于非交互零知识证明与智能合约的认证方法及***
CN115277197B (zh) * 2022-07-27 2024-01-16 深圳前海微众银行股份有限公司 模型所有权验证方法、电子设备、介质及程序产品
CN115801285B (zh) * 2022-12-02 2023-07-21 北京国脉互联信息科技有限公司 基于零知识证明的政策申请方法、***及计算机存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106537821A (zh) * 2014-07-11 2017-03-22 Lg 电子株式会社 在无线通信***中报告关于未授权带的信道状态信息的方法及其设备
CN111404690A (zh) * 2020-02-19 2020-07-10 江苏大学 一种基于零知识证明的快递个人隐私保护及身份验证方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10079682B2 (en) * 2015-12-22 2018-09-18 Gemalto Sa Method for managing a trusted identity
CN106982190A (zh) * 2016-01-18 2017-07-25 卓望数码技术(深圳)有限公司 一种电子签名方法和***
WO2019170614A1 (en) * 2018-03-05 2019-09-12 British Telecommunications Public Limited Company Authentication method
CN109245897B (zh) * 2018-08-23 2020-06-19 北京邮电大学 一种基于非交互的零知识证明的节点认证方法和装置
CN110224837B (zh) * 2019-06-06 2021-11-19 西安纸贵互联网科技有限公司 基于分布式身份标识的零知识证明方法及终端

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106537821A (zh) * 2014-07-11 2017-03-22 Lg 电子株式会社 在无线通信***中报告关于未授权带的信道状态信息的方法及其设备
CN111404690A (zh) * 2020-02-19 2020-07-10 江苏大学 一种基于零知识证明的快递个人隐私保护及身份验证方法

Also Published As

Publication number Publication date
CN112636922A (zh) 2021-04-09

Similar Documents

Publication Publication Date Title
CN112636922B (zh) 基于无交互零知识证明的iot身份认证方法
JP5205398B2 (ja) 鍵認証方式
US8116451B2 (en) Key validation scheme
Susilo et al. Perfect concurrent signature schemes
Gennaro et al. RSA-based undeniable signatures
US7730319B2 (en) Provisional signature schemes
CN101821987B (zh) 有效认证电子邮件协议
US20110264917A1 (en) Method for two step digital signature
US20040030932A1 (en) Cryptographic methods and apparatus for secure authentication
US20050135606A1 (en) Method and apparatus for verifiable generation of public keys
CN111010272B (zh) 一种标识私钥生成和数字签名方法及***和装置
US5719940A (en) Method for providing information security by exchanging authentication and signing an electronic signature and apparatus therefor
CN106899413B (zh) 数字签名验证方法及***
CN101931536B (zh) 一种无需认证中心的高效数据加密及认证方法
JP2002534701A (ja) 寄託されない署名専用キーを用いた自動回復可能な自動可能暗号システム
CN113360943A (zh) 一种区块链隐私数据的保护方法及装置
Pooja et al. Digital signature
US6507656B1 (en) Non malleable encryption apparatus and method
Ding et al. Equipping smart devices with public key signatures
JPH11234263A (ja) 相互認証方法および装置
Ki et al. Privacy-enhanced deniable authentication e-mail service
Goyal More efficient server assisted one time signatures
Saxena et al. Zero-knowledge blind identification for smart cards using bilinear pairings
Xia et al. On the invisibility of designated confirmer signatures
CN116633563A (zh) 标识签名构造与验证方法

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