一种基于区块链的跨域支付身份认证方法与流程

文档序号:33498877发布日期:2023-03-17 21:38阅读:129来源:国知局
一种基于区块链的跨域支付身份认证方法与流程

1.本发明涉及区块链技术,模糊提取技术,具体设计一种基于区块链的跨域支付身份认证方法。


背景技术:

2.跨域支付是指国家或地区间因发生国际间债权债务而出现的结算工具和支付系统,根据市场参与方不同,可以分为专业汇款公司、银行电汇、第三方支付公司、国际信用卡公司等支付模式。随着移动通信网络的迅速普及和网速的不断提升,跨域贸易活动越来越频繁,跨域支付的重要性也日益凸显。但是在网络高速发展的同时,跨域支付的安全问题也不断出现,如信用卡信息复制、跨域用户身份认证困难、黑客对指纹人脸识别等支付技术的破解,造成用户因使用跨域支付带来的损失。在本发明中,针对跨域身份认证困难提出了一种解决方案。
3.区块链技术是一种分布式数据库技术,其核心技术主要包含密码学技术和分布式共识机制。区块链技术具有去中心化、不可篡改性、可追溯性等特点,能有效的解决移动支付所带来的安全性问题。


技术实现要素:

4.本发明提供一种基于区块链的跨域支付身份认证方法,由于公链的单链架构存在性能、容量等瓶颈问题,因此该发明主要是通过构建多链的形式来实现跨域支付身份认证,将指纹作为身份认证的重要数据,由于任意提取的生物指纹特征都不能保证100%的相同,同时用户也不希望指纹特征被服务器记录,一旦服务器被黑客攻陷,用户隐私数据将会被泄露,因此,我们采用了模糊提取技术来保证用户隐私安全。在输入指纹特征是,可以以容错的方式输入一个私密的随机字符串r和一个公开的信息p。即当指纹特征因子有差异是,只要在可信范围内,可以借助公开信息p即可恢复出相同的字符串r,因此认证服务器只要安全存储随机字符r就能替代用户的指纹特征。
5.本发明技术方案为一种基于区块链的跨域支付身份认证方法,该方法分为两个阶段,分别为身份注册和跨域身份认证;
6.s1.身份注册
7.步骤s11:指纹采集器与注册链节点通过算法协商生成会话密钥,用于双方通信加密;
8.步骤s12:用户在指纹采集器中输入用户名、指纹特征,并设定口令,指纹采集器将用户名和指纹特征发送给当前注册链节点;
9.步骤s13:注册链节点通过该注册链查询用户身份是否已经注册;
10.步骤s14:指纹采集器利用模糊提取算法计算出公开信息和指纹特征,然后将获取的指纹特征发送给注册链节点;
11.步骤s15:注册链节点执行智能合约发起本次注册交易并背书,然后将注册信息广
播到验证节点;
12.步骤s16:验证节点验证此次交易,通过共识机制将若干个注册交易打包上链;
13.s2.跨域身份认证
14.步骤s21:指纹采集器与a域注册节点通过算法协商生成会话密钥,用于双方通信加密;
15.步骤s22:用户在a域注册节点的指纹采集器输入用户名、口令、指纹特征,指纹采集器将获取的信息发送到a域注册节点并请求b域认证;
16.步骤s23:a域注册节点通过本地存储的注册链确认用户名注册交易是否存在;若存在,进行步骤s24的操作,若不存在,则将采集的用户信息广播到验证节点进行验证,若验证存在,则执行账本同步,进行步骤s24的操作,若验证不存在,则认证失败;
17.步骤s24:a域注册节点通过用户名注册交易中的id和签名验签追溯该用户为a域已注册用户,验证口令是否符合注册区块的口令,若符合,则将指纹特征的公开信息发回给指纹采集器,反之,则认证失败。
18.步骤s25:指纹采集器通过模糊提取技术的恢复算法将公开信息和指纹特征恢复出指纹特征私有信息,将私有信息加密后发送到a域注册节点;
19.步骤s26:a域注册节点请求b域进行身份认证;节点执行智能合约,从注册交易中获取指纹注册信息,比较指纹注册信息r和采集信息r’,计算ε’=|r
’‑
r|,a域注册节点为ε’背书;
20.步骤s27:认证域b域节点比较ε’和阈值ε;
21.步骤s28:验证节点验证此次交易,通过共识机制将若干个认证交易打包成区块写入到认证链中。
22.本发明通过构建基于区块链技术和模糊提取理论来实现指纹特征和口令的双因子跨域身份认证方案,实现了用户的身份匿名且避免了指纹特征泄露。为了避免单链架构存在的性能差的问题,本发明采用了多链结构。利用区块链智能合约和共识机制,通过不同域节点的相互背书实现了跨域身份认证,以保证跨域身份认证的安全性。本发明可广泛应用于身份认证领域。
附图说明
23.图1为本发明框架示意图;
24.图2为本发明身份注册示意图;
25.图3为本发明跨域身份认证示意图。
具体实施方式
26.下面根据附图和实施例详细阐述此发明,并对本发明的技术方案进行清楚的描述。此处所选的实施例仅用于解释该发明,并不能够限定此发明。
27.如图1所示,跨域身份认证模型中共有两条不同的区块链。本发明联盟链采用多链结构,分别包括注册链和认证链,分别将注册交易和认证交易的交易区块写到对应的链中。本发明的身份注册过程是指用户通过fc提取指纹特征,在任一域rnp中进行身份注册,rnp通过智能合约生成身份注册交易并为其背书,将身份注册交易信息广播到vp节点,vp节点
验证交易并通过共识机制将多个注册交易生成区块写入到注册链中。发明的跨域身份认证,是通过注册域、认证域rnp对认证交易进行两次背书保证认证可信,其中注册域rnp对用户身份校验背书,认证与rnp对认证交易背书。
28.为了解决跨域交易身份认证安全性低的问题,本发明实施例提供一种基于区块链的跨域支付身份认证方法。如图2所示,是本发明的身份注册过程,包括如下步骤:
29.步骤1:指纹采集器(fc)与注册链节点(rnp)通过diffie-hellman算法协商生成会话密钥k,用于双方通信加密;
30.步骤2:用户在fc中输入用户名id、指纹特征f,并设定口令pf,fc将(id、f)发送给当前rnp;
31.步骤3:rnp通过该注册链查询id是否已经注册,验证成功后继续执行步骤4,反之,则返回用户已注册信息;
32.步骤4:fc利用模糊提取技术计算提取的指纹特征的r和p,其中r是私密信息,p是公开信息。对pf进行哈希后得到h(pf),并用rnp的公钥加密r得到e(r)。fc将(id、e(r)、p、h(pf))发送给注册链节点,fc不保存任何用户的信息。
33.步骤5:rnp执行智能合约发起本次注册交易并背书,使用自身私钥对(id、e(r)、p、h(pf)、id
rnp
)签名生成sig
rnp
,其中id
rnp
是rnp的id信息。rnp将注册信息广播到验证节点vp;
34.步骤6:验证节点vp验证此次交易,通过共识机制将若干个注册交易生成区块并上链。
35.如图3所示,是本发明跨域身份认证过程,本发明通过注册域、认证域rnp对认证交易进行两次背书保证认证可信,其中注册域rnp对用户身份校验背书,认证与rnp对认证交易背书。下面是a域注册用户ua在a域请求b域认证实现跨域身份认证的过程:
36.步骤1:fc与a域rnpa通过diffie-hellman算法协商生成会话密钥k,用于双方通信加密。
37.步骤2:用户在a域的fc输入用户名id’、口令pf’,再输入指纹特征f’,fc发送(id’,h(pf’))到rnpa并请求b域认证。
38.步骤3:rnpa通过本地存储的注册链确认id’注册交易是否存在,
39.(a)若存在,则继续执行第四步。
40.(b)若不存在,则rnpa广播id’到vp作进一步查询id’注册交易是否存在,
41.i.若存在,则说明当前a域rnp未同步更新区块链网络中的账本,执行账本同步,并继续执行第四步;
42.ii.若不存在,则返回认证拒绝信息fc,用户认证失败
43.步骤4:rnpa通过id’注册交易中的id
rnp
和sig
rnp
验签追溯id’为a域已注册用户,验证h(pf’)是否等于注册区块的h(pf),
44.(a)是,则通过注册交易查询id’的指纹特征公开信息p,将返回(pk,p)给fc,pk为注册域a域rnpa的公钥,继续执行第五步。
45.(b)否,则返回身份认证失败,用户口令错误。
46.步骤5:fc通过模糊提取技术的恢复算法rev(f’,p)恢复出指纹特征私有信息r’,使用pk加密r’得到e(r’),发送(id’,e(r’))到rnpa,fc删除pf’和f’。
47.步骤6:rnpa请求b域rnpb进行身份认证,
48.rnpa执行智能合约从id’注册交易中获取e(r),利用私钥解密e(r’)和e(r),得到r’和r,比较r’和r,计算得到ε’=|r
’‑
r|,rnpa为ε’背书签名为其得到sig(ε’),将(id’,h(pf’),ε’,sig(ε’))发送给认证域b域rnpb,继续执行第七步。
49.步骤7:认证域b域rnp比较ε’和阈值ε,
50.(a)ε’《ε。rnpb生成本次认证交易信息并签名背书。将交易广播至vp节点,继续执行第八步;
51.(b)ε’≥ε。则返回身份认证失败给fc。
52.步骤8:vp节点验证此次交易,并在在一定时间内通过共识机制将若干个认证交易打包成区块写入到认证链中。
53.实施例一
54.用户a在a域银行执行向b域银行转账交易时,需要进行跨域身份认证,用户a在a域的指纹采集器中输入用户名、录入指纹特征,并设置口令,fc将信息发送到a域注册链节点并请求b域认证。a域注册链节点通过本地存储的注册信息验证用户a身份注册信息是否存在,如果验证成功,则说明a域银行存在用户a的注册信息;如果不存在,a域注册链节点会将信息发送给验证节点,由验证节点进一步验证,若存在则说明a域银行没有同步更新区块链的账本信息,执行账本同步,以保证用户a的信息不被重复注册。指纹采集器通过模糊提取技术恢复出指纹特征私有信息,使用公钥加密私有信息得到密文,将发送身份信息和密文发送给a域注册节点,指纹采集器不保留任何信息。a域注册节点请求b域节点进行身份认证,a域注册节点执行智能合约从用户的注册交易中获取指纹注册信息,利用私钥解密当前密文和注册密文,得到当前输入的指纹特征r’和已注册的指纹特征r,比较两次指纹特征,计算得到ε’=|r
’‑
r|,a域注册节点为ε’背书签名为其得到sig(ε’),将(id’,h(pf’),ε’,sig(ε’))发送给认证域b域节点,认证域b域节点比较ε’和阈值ε,若ε’≥ε。则返回身份认证失败给指纹采集器。若ε’《ε。认证域b域节点生成本次认证交易信息并签名背书。将交易广播至验证节点,验证节点验证此次交易,并在在一定时间内通过共识机制将若干个认证交易打包成区块写入到认证链中。完成本次跨域身份认证。
55.以上所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1