CN116074119A - 基于区块链的研究型审计双向认证方法、装置及可读介质 - Google Patents
基于区块链的研究型审计双向认证方法、装置及可读介质 Download PDFInfo
- Publication number
- CN116074119A CN116074119A CN202310208886.8A CN202310208886A CN116074119A CN 116074119 A CN116074119 A CN 116074119A CN 202310208886 A CN202310208886 A CN 202310208886A CN 116074119 A CN116074119 A CN 116074119A
- Authority
- CN
- China
- Prior art keywords
- authentication
- user
- authentication server
- registration
- blockchain
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012550 audit Methods 0.000 title claims abstract description 28
- 230000002457 bidirectional effect Effects 0.000 title claims abstract description 28
- 238000011160 research Methods 0.000 title claims abstract description 27
- 238000012795 verification Methods 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 125000004122 cyclic group Chemical group 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 8
- 230000001960 triggered effect Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- 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
- H04L9/3073—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 involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
-
- 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/3226—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 using a predetermined code, e.g. password, passphrase or PIN
-
- 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/3236—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 using cryptographic hash functions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于区块链的研究型审计双向认证方法、装置及可读介质,包括在区块链平台进行初始配置;在区块链平台上部署智能合约,智能合约基于椭圆曲线和双线性对;用户及认证服务器注册;用户和认证服务器进行双向认证,认证成功进入下一步骤;生成用户与注册节点之间会话的会话密钥。本发明针对用户无法评价CA(Certificate Authority,证书授权中心)可信度的问题,通过椭圆曲线和双线性对来实现联盟链的成员资格认证,成员资格认证由联盟链监督者直接通过智能合约进行,成员间进行密钥协商,密钥协商后确定的会话密钥则通过哈希函数生成哈希摘要,作为联盟链成员的唯一交易地址,即会话密钥,有效解决CA单向认证和集中式CA容易失效的问题。
Description
技术领域
本发明涉及电力系统数字化审计技术领域,具体为基于区块链的研究型审计双向认证方法、装置及可读介质。
背景技术
身份认证也称为身份验证,在一些非常规性的工作场所(的研究式审计项目)身份认证非常重要,例如一些大型企业或者研发机构等,需要非常完善的身份认识,预防机密信息的丢失,而现有的身份认证均是将身份信息存储到网络云盘,通过网络云盘进行认证,这种方式存储的数据容易被不法人员篡改,安全保障性能有待提高,而且一旦网络云盘被恶意破坏,会导致数据无法恢复,容易造成极大的损失。
为了解决安全保障性以及数据不易恢复的问题,现有技术中,提出了公开号CN111126092A名为一种基于区块链网络的身份认证系统,通过采用各模块通过注册节点相互配合可以预防身份证造假,提高了数据上传、查询核实时的安全性,且提高了认证效率。
但是目前的区块链身份认证技术是基于中心化的CA(Certification Authority,证书授权中心)进行认证,CA的认证是单向认证,用户无法评价CA的可信度,从而会产生安全隐患,而且其集中式结构容易出现单点故障。
发明内容
本发明的目的在于提供一种基于区块链的研究型审计双向认证方法、装置及可读介质,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
基于区块链的研究型审计双向认证方法,包括:
步骤S1、在区块链平台进行初始配置;
步骤S2、在区块链平台上部署智能合约,所述智能合约基于椭圆曲线和双线性对;
步骤S3、用户及认证服务器注册;
步骤S4、用户和认证服务器进行双向认证,认证成功进入步骤S5;
步骤S5、生成用户与注册节点之间会话的会话密钥。
进一步的,所述椭圆曲线的定义为:Zp(p>3) 上的椭圆曲线指满足以下条件的所有对(x,y)∈Zp的集合
y2≡x3+ax+b mod p
以及一个无穷大的虚数点ϱ ,其中a,b∈Zp,a,b都是随机数,Zp是椭圆曲线域,p是素数,并且满足4a3+27b2 ≠0 mod p。
进一步的,所述认证服务器,是由多个监管节点构成的节点群,在用户完成注册后登录系统时进行认证,认证成功后的会话密钥作为用户与注册节点通信的依据。
进一步的,所述初始配置包括建立参数系统,参数系统包括:
q阶的加法循环群G1和q阶的乘法循环群G2,P为加法循环群G1的生成元;令e为G1和G2上的双线性映射,即e:G1×G1→G2;
用户的系统私钥S和认证服务器的系统公钥Ppub;
三个哈希函数H1、H2和H。
进一步的,所述步骤S3包括:
S31、用户将身份标识符发送至区块链平台的注册节点,触发智能合约程序进行验证,验证成功后注册节点将用户密文发送至用户;
用户验证用户密文的有效性,验证有效即注册成功;
S32、认证服务器将身份标识符发送至注册节点,触发智能合约进行验证,验证成功后注册节点将认证服务器密文发送至认证服务器;
认证服务器验证认证服务器密文的有效性,验证有效即注册成功。
进一步的,所述S31包括:
S311、用户发送身份标识符IDi至注册节点,注册节点选取一个随机数ri,并计算对应椭圆曲线上的点Ri= ri•P以及随机数xi=(ri + H1 (IDi || Ri)•S);
S312、注册节点将S311计算所得(xi,Ri)发送至用户;
S313、用户接收(xi,Ri)并验证xi•P 是否=Ri+ H1(IDi || Ri)Ppub是否成立,如果成立则注册成功。
进一步的,所述S32包括:
S321、认证服务器发送身份标识符IDj至注册节点,注册节点选取一个随机数rj,并计算对应椭圆曲线上的点Rj= rj•P以及随机数xj=(rj + H1 (IDj || Rj)•S);
S322、注册节点将S321计算所得(xj,Rj)发送至认证服务器;
S323、认证服务器接收(xj,Rj)并验证xj•P 是否=Rj+ H1(IDj || Rj)Ppub是否成立,如果成立则注册成功。
进一步的,所述步骤S4具体包括:
S41、用户选择一个随机数a,并计算临时密钥A=a•P,V1=H2(xj•P||a•Rj)⨁a⨁(xj•P||a•Rj)x||(xj•P||a•Rj)y;
计算完成后,用户将(IDi,A,Ppub,V1)发送给认证服务器;
S42、认证服务器接收来自用户的认证请求后,计算A•rj=k1,并验证Y轴坐标k1 是否=H2(xj•P||k1)⨁V1⨁ xj•P||a•Rj)X||(xj•P||a•Rj)Y,验证成功则进入步骤S43, 其中X是X轴坐标,Y是Y轴坐标;
S43、认证服务器选择一个随机数b,并计算临时密钥B=b•P,k2=A•b,Auth=H(IDi,Ppub,A,k2,k1) ,T=H(a•Rj,A,Auth);
计算完成后,认证服务器将(b, Auth)发送给用户;
S44、用户验证Auth是否=H(IDi,A,Ppub,a•Rj,a•B),如果等式成立的话,用户计算会话密钥sk1=H(Ppub,IDi,b,A,k1,k2)and V=H(Pki || Pkj)a+H(Pki || Pkj)s•T,其中Pki=xi•P,Pkj=xj•P,计算完成后,用户将V发送给认证服务器;
S45、认证服务器接收到V之后,首先验证e H(Pki || Pkj),A+T •Ppub)是否= e(P,V);
如果等式成立的话,认证服务器可以得到会话密钥sk2=H(Ppub,IDi,b,A,a•Rj,a•B),判定认证成功;
其中IDi为身份标识符IDi,Ppub为认证服务器的系统公钥,H1、H2和H是三个哈希函数,P为加法循环群G1的生成元,xj表示随机数,Rj表示对应椭圆曲线上的点,e为法循环群G1和加法循环群G2上的双线性映射。
进一步的,所述S5得到会话密钥:sk= H(Ppub,IDi,b,A,k1,k2)=H(Ppub,IDi,b,A,a•Rj,a•B),因为 k1=a•Rj, k2=a•B。
进一步的,所述q为160位、192位、256位或512位素数。
为实现上述目的,本发明还提供如下技术方案:
基于区块链的研究型审计双向认证装置,包括:
初始化单元,用于在区块链平台进行初始配置;
部署单元,用于在区块链平台上部署智能合约,所述智能合约基于椭圆曲线和双线性对;
注册单元,用于用户及认证服务器注册;
双向认证单元,用于用户和认证服务器进行双向认证,认证成功进入下一步;
生成单元,用于生成用户与注册节点之间会话的会话密钥。
进一步的,所述注册单元包括认证及注册模块,用于用户将身份标识符发送至区块链平台的注册节点,触发智能合约程序进行验证,验证成功后注册节点将用户密文发送至用户;
用户验证用户密文的有效性,验证有效即注册成功;以及
认证服务器将身份标识符发送至注册节点,触发智能合约进行验证,验证成功后注册节点将认证服务器密文发送至认证服务器;
认证服务器验证认证服务器密文的有效性,验证有效即注册成功。
为实现上述目的,本发明还提供如下技术方案:
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上述中任一项所述方法的步骤。
为实现上述目的,本发明还提供如下技术方案:
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述中任一项所述的方法的步骤。
与现有技术相比,本发明的有益效果是:
本发明,通过椭圆曲线和双线性对来实现联盟链的成员资格认证,成员资格认证由联盟链监督者直接通过智能合约进行,然后成员间进行密钥协商,密钥协商后确定的会话密钥则通过哈希函数生成哈希摘要,作为联盟链成员的唯一交易地址,即会话密钥,从而解决针对用户无法评价CA(Certification Authority,证书授权中心)可信度的问题。
本发明,用户和认证服务器进行双向认证,通过在用户与注册节点之间会话生成会话密钥,不仅提高了认证效率,也确保认证安全性。
总的来说本发明能够有效解决目前CA单向认证和集中式CA容易失效以及认证不但效率低,还容易造成单点故障,具有安全隐患的问题。
附图说明
图1为本发明的系统框架图。
图2为本发明的注册部分使用的流程图。
图3为本发明的认证部分使用的流程图。
图4为本发明的基于区块链的研究型审计双向认证方法步骤流程图。
图5为本发明的基于区块链的研究型审计双向认证装置结构框图。
图6为本发明的计算机设备的内部结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“上端”、下端”、“内”、“外”、“前端”、“后端”、“两端”、“一端”、“另一端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、 “套设有”、“套接”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
请参阅图1至图6,本发明提供一种技术方案:
一种基于区块链的研究型审计双向认证系统及方法。
所述椭圆曲线的定义为:Zp(p>3) 上的椭圆曲线指满足以下条件的所有对(x,y)∈Zp的集合
y2≡x3+ax+b mod p
以及一个无穷大的虚数点ϱ,其中a,b∈Zp,并且满足4a3+27b2 ≠0 mod p。
本发明是通过以下技术方案实现的:
如图4所示,一种基于区块链的研究型审计双向认证方法,包括以下步骤:
S1、区块链初始化,在区块链平台进行初始配置;
S2、智能合约部署,在区块链平台上部署智能合约,所述智能合约基于椭圆曲线和双线性对;
S3、用户及认证服务器注册
S31、用户将身份标识符发送至区块链平台的注册节点,触发智能合约程序进行验证,验证成功后注册节点将用户密文发送至用户;
用户验证用户密文的有效性,验证有效即注册成功;
S311、用户发送身份标识符IDi至注册节点,注册节点选取一个随机数ri,并计算Ri= ri·P以及xi=(ri + H1 (IDi || Ri)·S);
S312、注册节点将S311计算所得(xi,Ri)发送至用户;
S313、用户接收(xi,Ri)并验证xi·P =Ri+ H1(IDi || Ri)Ppub是否成立,如果成立则注册成功;
S32、认证服务器将身份标识符发送至注册节点,触发智能合约进行验证,验证成功后注册节点将认证服务器密文发送至认证服务器;
认证服务器验证认证服务器密文的有效性,验证有效即注册成功;
S321、认证服务器发送身份标识符IDj至注册节点,注册节点选取一个随机数rj,并计算Rj= rj·P以及xj=(rj + H1 (IDj || Rj)·S);
S322、注册节点将S321计算所得(xj,Rj)发送至认证服务器;
S323、认证服务器接收(xj,Rj)并验证xj·P =Rj+ H1(IDj || Rj)Ppub是否成立,如果成立则注册成功;
S4、双向认证,用户和认证服务器进行双向认证,认证成功进入S5;
S41、用户选择一个随机数a,并计算A=a·P,V1=H2(xj·P||a·Rj)⨁a⨁( xj·P||a·Rj)x||(xj·P||a·Rj)y;
计算完成后,用户将 (IDi,A,Ppub,V1)发送给认证服务器;
S42、认证服务器接收来自用户的认证请求后,计算A·rj=k1,并验证k1是否=H2(xj·P||k1)⨁V1⨁ xj·P||a·Rj)x||(xj·P||a·Rj)y,验证成功则进入S43;
S43、认证服务器选择一个随机数b,并计算B=b·P,k2=A·b,Auth=H(IDi,Ppub,A,k2,k1) ,T=H(a·Rj,A,Auth).
计算完成后,认证服务器将(b, Auth)发送给用户;
S44、用户验证Auth =H(IDi,A,Ppub,a·Rj,a·B),如果等式成立的话,用户计算sk1=H(Ppub,IDi,b,A,k1,k2)and V=H(Pki || Pkj)a+H(Pki || Pkj)s·T,其中 Pki=xi·P,Pkj=xj·P.计算完成后,用户将V发送给认证服务器;
S45、认证服务器接收到V之后,首先验证e H(Pki || Pkj),A+T ·Ppub)= e(P,V);
如果等式成立的话,认证服务器可以得到sk2=H(Ppub, IDi,b,A,a·Rj,a·B),判定认证成功;
S5、生成用户与注册节点之间会话的会话密钥;
得到会话密钥:sk= H(Ppub,IDi,b,A,k1,k2)=H(Ppub,IDi,b,A,a·Rj,a·B),因为 k1=a·Rj, k2=a·B。
具体的,所述认证服务器,是由一系列监管节点构成的节点群,在用户完成注册后登录系统时进行认证,认证成功后的会话密钥作为用户与注册节点通信的依据。
具体的,所述初始配置包括建立参数系统,参数系统包括:
q阶的加法循环群G1和q阶的乘法循环群G2,P为加法循环群G1的生成元;令e为G1和G2上的双线性映射,即e:G1 x G1→G2;所述q为160位、192位、256位或512位素数;
只有当以上映射满足一下条件时存在一个有效算法计算e(f,h),(f,h)表示两个乘法循环群内的任意元素:
(1)双线性:对所有的对所有的u,v∈G1,以及所有的a,b∈Zp都满足等式:e(ua,vb)=e(u,v)ab,a、b是随机整数,(u,v)表示两个乘法循环群内的任意元素;
(2)非退化性:∃f ∈G1,使得e(f,f)≠1,(f,f)表示乘法循环群里的某一元素;
(3)可计算性:对于∀f,h∈G1。
用户的系统私钥S和认证服务器的系统公钥Ppub;
三个哈希函数H1、H2和H。
具体的,如图1所示,本发明提出的身份认证方法适用于区块链平台中的应用系统。首先对区块链完成初始化,然后进行智能合约的部署;用户以及认证服务器将自己的身份标识符发送到区块链平台的注册节点,注册节点触发智能合约,验证身份标识符的有效性;验证成功后,注册节点将有效密文分别发送至用户以及认证服务器;用户以及认证服务器验证密文的有效性,验证有效即注册成功;注册成功后,用户和认证服务器进行双向认证,认证成功后得出会话密钥。
如图2-3中所示,一种基于区块链的研究型审计双向认证方法,包括以下步骤:
S1、区块链初始化,在区块链平台进行初始配置,包括建立参数系统,参数系统包括:
q阶的加法循环群G1和q阶的乘法循环群G2,P为加法循环群G1的生成元;令e为G1和G2上的双线性映射,即e:G1 x G1→G2;所述q为256位素数;
用户的系统私钥S和认证服务器的系统公钥Ppub;
三个哈希函数H1、H2和H;
S2、智能合约部署,在区块链平台上部署智能合约,所述智能合约基于椭圆曲线和双线性对;
S3、用户及认证服务器注册
S311、用户发送身份标识符IDi至注册节点,注册节点选取一个随机数ri,并计算Ri= ri·P以及xi=(ri + H1 (IDi || Ri)·S);
S312、注册节点将S311计算所得(xi,Ri)发送至用户;
S313、用户接收(xi,Ri)并验证xi·P =Ri+ H1(IDi || Ri)Ppub是否成立,如果成立则注册成功;
S321、认证服务器发送身份标识符IDj至注册节点,注册节点选取一个随机数rj,并计算Rj= rj·P以及xj=(rj + H1 (IDj || Rj)·S);
S322、注册节点将S321计算所得(xj,Rj)发送至认证服务器;
S323、认证服务器接收(xj,Rj)并验证xj·P =Rj+ H1(IDj || Rj)Ppub是否成立,如果成立则注册成功;
S4、双向认证,用户和认证服务器进行双向认证,认证成功进入S5;
S41、用户选择一个随机数a,并计算A=a·P,V1=H2(xj·P||a·Rj)⨁a⨁( xj·P||a·Rj)x||(xj·P||a·Rj)y;
计算完成后,用户将 (IDi,A,Ppub,V1)发送给认证服务器;
S42、认证服务器接收来自用户的认证请求后,计算A·rj=k1,并验证k1是否=H2(xj·P||k1)⨁V1⨁ xj·P||a·Rj)X||(xj·P||a·Rj)Y,验证成功则进入S43;
S43、认证服务器选择一个随机数b,并计算B=b·P,k2=A·b,Auth=H(IDi,Ppub,A,k2,k1) ,T=H(a·Rj,A,Auth).
计算完成后,认证服务器将(b, Auth)发送给用户;
S44、用户验证Auth =H(IDi,A,Ppub,a·Rj,a·B),如果等式成立的话,用户计算sk1=H(Ppub,IDi,b,A,k1,k2)and V=H(Pki || Pkj)a+H(Pki || Pkj)s·T,其中 Pki=xi·P,Pkj=xj·P.计算完成后,用户将V发送给认证服务器;
S45、认证服务器接收到V之后,首先验证e H(Pki || Pkj),A+T ·Ppub)= e(P,V);
如果等式成立的话,认证服务器可以得到sk2=H(Ppub, IDi,b,A,a·Rj,a·B),判定认证成功;
S5、生成用户与注册节点之间会话的会话密钥;
得到会话密钥:sk= H(Ppub,IDi,b,A,k1,k2)=H(Ppub,IDi,b,A,a·Rj,a·B),因为 k1=a·Rj, k2=a·B。
本发明,椭圆曲线密码学(ECC)使用较短的操作数,可提供与RSA或离散对数系统同等的安全等级。ECC基于推广的离散对数问题,因此,DL协议(比如Diffie-Hellman密钥交换)也可以使用椭圆曲线实现。椭圆曲线是一种特殊的多项式方程,它是在有限域内的曲线。对于大多数基于身份的密码系统都使用了双线性映射这个代数结构,它具有的良好的性质可以使整个密码学方案简单高效。
本发明是针对现在联盟链身份认证大多采用PKI(Public Key Infrastructure)体系下的CA(Certification Authority,证书授权中心)的证书认证,但CA的认证是单向认证,用户无法评价CA的可信度,而且其集中式结构容易出现单点故障,这将带来很大的安全隐患,从而提供了一种基于区块链的研究型审计双向认证方法。
本发明中认证服务器,是由一系列监管节点构成的节点群,在用户完成注册后登录系统时进行认证,认证成功后的会话密钥作为用户与注册节点通信的依据;通过椭圆曲线和双线性对来实现联盟链的成员资格认证,成员资格认证由联盟链监督者直接通过智能合约进行,然后成员间进行密钥协商,密钥协商后确定的会话密钥则通过哈希函数生成哈希摘要,作为联盟链成员的唯一交易地址。本发明能够有效解决CA单向认证和集中式CA容易失效的问题。
如图5所示,提出基于区块链的研究型审计双向认证装置100,其特征在于,包括:
初始化单元110,用于在区块链平台进行初始配置;
部署单元120,用于在区块链平台上部署智能合约,所述智能合约基于椭圆曲线和双线性对;
注册单元130,用于用户及认证服务器注册;
双向认证单元140,用于用户和认证服务器进行双向认证,认证成功进入下一步;
生成单元150,用于生成用户与注册节点之间会话的会话密钥。
本发明提供的计算机设备的结构示意,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述的认证方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
同时提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(DynamicRandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (14)
1.基于区块链的研究型审计双向认证方法,其特征在于,包括:
步骤S1、在区块链平台进行初始配置;
步骤S2、在区块链平台上部署智能合约,所述智能合约基于椭圆曲线和双线性对;
步骤S3、用户及认证服务器注册;
步骤S4、用户和认证服务器进行双向认证,认证成功进入下一步骤;
步骤S5、生成用户与注册节点之间会话的会话密钥。
2.如权利要求1所述的基于区块链的研究型审计双向认证方法,其特征在于,
所述椭圆曲线的定义为:Zp(p>3) 上的椭圆曲线指满足以下条件的所有对(x,y)∈Zp的集合
y2≡x3+ax+b mod p
以及一个无穷大的虚数点ϱ ,其中a,b∈Zp,a,b都是随机数,Zp是椭圆曲线域,p是素数,并且满足4a3+27b2 ≠0 mod p。
3.如权利要求1所述的基于区块链的研究型审计双向认证方法,其特征在于,所述认证服务器,是由多个监管节点构成的节点群,在用户完成注册后登录系统时进行认证,认证成功后的会话密钥作为用户与注册节点通信的依据。
4.如权利要求1所述的基于区块链的研究型审计双向认证方法,其特征在于,所述初始配置包括建立参数系统,参数系统包括:
q阶的加法循环群G1和q阶的乘法循环群G2,P为加法循环群G1的生成元;令e为G1和G2上的双线性映射,即e:G1×G1→G2;
用户的系统私钥S和认证服务器的系统公钥Ppub;
三个哈希函数H1、H2和H。
5.如权利要求4所述的基于区块链的研究型审计双向认证方法,其特征在于,所述步骤S3包括:
S31、用户将身份标识符发送至区块链平台的注册节点,触发智能合约程序进行验证,验证成功后注册节点将用户密文发送至用户;
用户验证用户密文的有效性,验证有效即注册成功;
S32、认证服务器将身份标识符发送至注册节点,触发智能合约进行验证,验证成功后注册节点将认证服务器密文发送至认证服务器;
认证服务器验证认证服务器密文的有效性,验证有效即注册成功。
6.如权利要求5所述的基于区块链的研究型审计双向认证方法,其特征在于,所述S31包括:
S311、用户发送身份标识符IDi至注册节点,注册节点选取一个随机数ri,并计算对应椭圆曲线上的点Ri= ri•P以及随机数xi=(ri + H1 (IDi || Ri)•S);
S312、注册节点将S311计算所得(xi,Ri)发送至用户;
S313、用户接收(xi,Ri)并验证xi•P 是否=Ri+ H1(IDi || Ri)Ppub是否成立,如果成立则注册成功。
7.如权利要求5所述的基于区块链的研究型审计双向认证方法,其特征在于,所述S32包括:
S321、认证服务器发送身份标识符IDj至注册节点,注册节点选取一个随机数rj,并计算对应椭圆曲线上的点Rj= rj•P以及随机数xj=(rj + H1 (IDj || Rj)•S);
S322、注册节点将S321计算所得(xj,Rj)发送至认证服务器;
S323、认证服务器接收(xj,Rj)并验证xj•P 是否=Rj+ H1(IDj || Rj)Ppub是否成立,如果成立则注册成功。
8.如权利要求1所述的基于区块链的研究型审计双向认证方法,其特征在于,所述步骤S4具体包括:
S41、用户选择一个随机数a,并计算临时密钥A=a•P,认证参数V1=H2(xj•P||a•Rj)⨁a⨁( xj•P||a•Rj)X||(xj•P||a•Rj)Y,其中X是X轴坐标,Y是Y轴坐标;
计算完成后,用户将(IDi,A,Ppub,V1)发送给认证服务器;
S42、认证服务器接收来自用户的认证请求后,计算A•rj=k1,并验证Y轴坐标k1 是否=H2(xj•P||k1)⨁V1⨁ xj•P||a•Rj)x||(xj•P||a•Rj)y,验证成功则进入步骤S43,其中x 是x轴坐标,y是y轴坐标;
S43、认证服务器选择一个随机数b,并计算临时密钥B=b•P,k2=A•b,Auth=H(IDi,Ppub,A,k2,k1) ,认证参数T=H(a•Rj,A,Auth);
计算完成后,认证服务器将(b, Auth)发送给用户;
S44、认证参数Auth是否=H(IDi,A,Ppub,a•Rj,a•B),如果等式成立的话,用户计算会话密钥sk1=H(Ppub,IDi,b,A,k1,k2)and V=H(Pki || Pkj)a+H(Pki || Pkj)s•T,其中Pki=xi•P,临时密钥Pkj=xj•P,计算完成后,用户将V发送给认证服务器;
S45、认证服务器接收到V之后,首先验证e H(Pki || Pkj),A+T •Ppub)是否= e(P,V);
如果等式成立的话,认证服务器可以得到会话密钥sk2=H(Ppub,IDi,b,A,a•Rj,a•B),判定认证成功;
其中IDi为身份标识符IDi,Ppub为认证服务器的系统公钥,H1、H2和H是三个哈希函数,P为加法循环群G1的生成元,xj表示随机数,Rj表示对应椭圆曲线上的点,e为法循环群G1和加法循环群G2上的双线性映射。
9.如权利要求8所述的基于区块链的研究型审计双向认证方法,其特征在于,所述S5得到会话密钥:sk= H(Ppub,IDi,b,A,k1,k2)=H(Ppub,IDi,b,A,a•Rj,a•B),因为 k1=a•Rj,k2=a•B。
10.如权利要求4所述的基于区块链的研究型审计双向认证方法,其特征在于,所述q为160位、192位、256位或512位素数。
11.基于区块链的研究型审计双向认证装置,其特征在于,包括:
初始化单元,用于在区块链平台进行初始配置;
部署单元,用于在区块链平台上部署智能合约,所述智能合约基于椭圆曲线和双线性对;
注册单元,用于用户及认证服务器注册;
双向认证单元,用于用户和认证服务器进行双向认证,认证成功进入下一步;
生成单元,用于生成用户与注册节点之间会话的会话密钥。
12.如权利要求11所述的基于区块链的研究型审计双向认证装置,其特征在于,所述注册单元包括认证及注册模块,用于用户将身份标识符发送至区块链平台的注册节点,触发智能合约程序进行验证,验证成功后注册节点将用户密文发送至用户;
用户验证用户密文的有效性,验证有效即注册成功;以及
认证服务器将身份标识符发送至注册节点,触发智能合约进行验证,验证成功后注册节点将认证服务器密文发送至认证服务器;
认证服务器验证认证服务器密文的有效性,验证有效即注册成功。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至10中任一项所述方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310208886.8A CN116074119A (zh) | 2023-03-07 | 2023-03-07 | 基于区块链的研究型审计双向认证方法、装置及可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310208886.8A CN116074119A (zh) | 2023-03-07 | 2023-03-07 | 基于区块链的研究型审计双向认证方法、装置及可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116074119A true CN116074119A (zh) | 2023-05-05 |
Family
ID=86175081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310208886.8A Pending CN116074119A (zh) | 2023-03-07 | 2023-03-07 | 基于区块链的研究型审计双向认证方法、装置及可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116074119A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118172029A (zh) * | 2024-05-14 | 2024-06-11 | 南京笔戈智能科技有限公司 | 一种基于区块链的用工信息共享平台 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101431415A (zh) * | 2008-12-12 | 2009-05-13 | 天柏宽带网络科技(北京)有限公司 | 一种双向认证的方法 |
CN109474610A (zh) * | 2018-12-07 | 2019-03-15 | 西南石油大学 | 基于智能电网的匿名可认证的密钥交换方法 |
CN109687976A (zh) * | 2019-01-07 | 2019-04-26 | 西安邮电大学 | 基于区块链与pki认证机制的车队组建及管理方法及系统 |
CN109902480A (zh) * | 2019-03-01 | 2019-06-18 | 重庆邮电大学 | 一种针对联盟链的高效认证方法 |
CN110505058A (zh) * | 2019-08-20 | 2019-11-26 | 西安电子科技大学 | 跨链场景下异构区块链的身份认证方法 |
KR20200065939A (ko) * | 2018-11-30 | 2020-06-09 | 사단법인 전국은행연합회 | 블록체인 및 스마트 컨트랙트 기반 인증서 상태 관리 장치 및 방법 |
CN111294202A (zh) * | 2020-01-16 | 2020-06-16 | 重庆邮电大学 | 一种面向联盟链的身份认证方法 |
CN111884991A (zh) * | 2020-06-08 | 2020-11-03 | 杭州电子科技大学 | 一种面向智能家居的用户可监管匿名身份认证方法 |
CN112039872A (zh) * | 2020-08-28 | 2020-12-04 | 武汉见邦融智科技有限公司 | 基于区块链的跨域匿名认证方法及系统 |
CN112818368A (zh) * | 2021-02-09 | 2021-05-18 | 南京邮电大学 | 一种基于区块链智能合约的数字证书认证方法 |
CN115459920A (zh) * | 2022-08-25 | 2022-12-09 | 浪潮云信息技术股份公司 | 一种基于智能合约的无证书联盟链上身份认证方法及系统 |
CN115515127A (zh) * | 2022-09-28 | 2022-12-23 | 天津大学 | 一种基于区块链的车联网通讯隐私保护方法 |
-
2023
- 2023-03-07 CN CN202310208886.8A patent/CN116074119A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101431415A (zh) * | 2008-12-12 | 2009-05-13 | 天柏宽带网络科技(北京)有限公司 | 一种双向认证的方法 |
KR20200065939A (ko) * | 2018-11-30 | 2020-06-09 | 사단법인 전국은행연합회 | 블록체인 및 스마트 컨트랙트 기반 인증서 상태 관리 장치 및 방법 |
CN109474610A (zh) * | 2018-12-07 | 2019-03-15 | 西南石油大学 | 基于智能电网的匿名可认证的密钥交换方法 |
CN109687976A (zh) * | 2019-01-07 | 2019-04-26 | 西安邮电大学 | 基于区块链与pki认证机制的车队组建及管理方法及系统 |
CN109902480A (zh) * | 2019-03-01 | 2019-06-18 | 重庆邮电大学 | 一种针对联盟链的高效认证方法 |
CN110505058A (zh) * | 2019-08-20 | 2019-11-26 | 西安电子科技大学 | 跨链场景下异构区块链的身份认证方法 |
CN111294202A (zh) * | 2020-01-16 | 2020-06-16 | 重庆邮电大学 | 一种面向联盟链的身份认证方法 |
CN111884991A (zh) * | 2020-06-08 | 2020-11-03 | 杭州电子科技大学 | 一种面向智能家居的用户可监管匿名身份认证方法 |
CN112039872A (zh) * | 2020-08-28 | 2020-12-04 | 武汉见邦融智科技有限公司 | 基于区块链的跨域匿名认证方法及系统 |
CN112818368A (zh) * | 2021-02-09 | 2021-05-18 | 南京邮电大学 | 一种基于区块链智能合约的数字证书认证方法 |
CN115459920A (zh) * | 2022-08-25 | 2022-12-09 | 浪潮云信息技术股份公司 | 一种基于智能合约的无证书联盟链上身份认证方法及系统 |
CN115515127A (zh) * | 2022-09-28 | 2022-12-23 | 天津大学 | 一种基于区块链的车联网通讯隐私保护方法 |
Non-Patent Citations (1)
Title |
---|
金旺科: "《无线传感器网络密钥管理方案研究》", pages: 56 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118172029A (zh) * | 2024-05-14 | 2024-06-11 | 南京笔戈智能科技有限公司 | 一种基于区块链的用工信息共享平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | SCLPV: Secure certificateless public verification for cloud-based cyber-physical-social systems against malicious auditors | |
US20180248706A1 (en) | Authentication system and device including physical unclonable function and threshold cryptography | |
Wang et al. | Certificateless public auditing for data integrity in the cloud | |
Busom et al. | Efficient smart metering based on homomorphic encryption | |
Ma et al. | Outsourcing computation of modular exponentiations in cloud computing | |
EP3265943B1 (en) | Authentication system and device including physical unclonable function and threshold cryptography | |
US20160269186A1 (en) | Authentication system and device including physical unclonable function and threshold cryptography | |
CN103563288B (zh) | 基于口令的单轮密钥交换协议 | |
CN101179380A (zh) | 一种双向认证方法、系统及网络终端 | |
KR20200108343A (ko) | 디지털로 서명된 데이터를 획득하기 위한 컴퓨터 구현된 방법 및 시스템 | |
Wan et al. | HIBEChain: A hierarchical identity-based blockchain system for large-scale IoT | |
Zhang et al. | Achieving fuzzy matching data sharing for secure cloud-edge communication | |
CN116074119A (zh) | 基于区块链的研究型审计双向认证方法、装置及可读介质 | |
Zhao et al. | Fuzzy identity-based dynamic auditing of big data on cloud storage | |
Khan et al. | A secure and energy efficient key agreement framework for vehicle-grid system | |
CN110311778A (zh) | 一种基于ecc门限签名的无人机队列身份认证方法 | |
Qiao et al. | An Anonymous and Efficient Certificate-Based Identity Authentication Protocol for VANET | |
Shim | A secure certificateless signature scheme for cloud-assisted Industrial IoT | |
Wei et al. | Cost-effective and scalable data sharing in cloud storage using hierarchical attribute-based encryption with forward security | |
CN107947923A (zh) | 一种无可信中心的属性密钥分发方法 | |
Li et al. | A forward-secure certificate-based signature scheme | |
Liu et al. | A verifiable privacy-preserving data collection scheme supporting multi-party computation in fog-based smart grid | |
CN111541668A (zh) | 一种基于区块链的能源物联网信息安全传输与存储方法 | |
Tan | Efficient identity-based authenticated multiple key exchange protocol | |
Wang et al. | Server-aided verification proxy re-signature |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230505 |