[发明专利]一种基于区块链技术的高效双因子跨域认证方法有效
| 申请号: | 201910287332.5 | 申请日: | 2019-04-11 |
| 公开(公告)号: | CN110069918B | 公开(公告)日: | 2020-12-04 |
| 发明(设计)人: | 马小峰;徐晶晶 | 申请(专利权)人: | 苏州同济区块链研究院有限公司 |
| 主分类号: | G06F21/46 | 分类号: | G06F21/46;G06F21/60;G06F21/62;G06Q30/06;H04L9/08;H04L29/06 |
| 代理公司: | 北京同辉知识产权代理事务所(普通合伙) 11357 | 代理人: | 刘洪勋 |
| 地址: | 215000 江苏省苏州市相城区*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 区块 技术 高效 因子 认证 方法 | ||
1.一种基于区块链技术的高效双因子跨域认证方法,其特征在于,包括以下步骤:
步骤1:系统整体架构设计;
依照Diffie-Hellman算法的A,B会话密钥协商机制的步骤为:
第11步:随机选取大素数n和原始根g,两个信息公开,且A、B已经对两个信息约定好;
第12步:A随机生成一个数x,计算X=gxmodn,然后把X发送给B;
第13步:B随机生成一个数y,计算Y=gymodn,然后把Y发送给A;
第14步:A计算K=Yxmodn;
第15步:B计算K’=Xymodn;
步骤2:系统工作流程;
步骤21:用户注册流程;
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥,并将ID、H(PW)、H(DID)信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询ID是否已经存在,是则返回用户已注册信息,否则可以注册;注册时首先对用户H(DID)使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),然后ServerA节点执行智能合约,发起注册交易并背书;当共识节点完成验证生成区块后,返回给客户端ClientA注册成功的信息;
第4步:客户端ClientA收到注册成功的消息,补充用户其他信息Info,通过安全信道发送给A域认证服务器ServerA;
第5步:A域认证服务器ServerA将用户补充的其他信息Info使用A域节点公钥PUBA进行加密得到EA(Info),然后ServerA节点执行智能合约,发起更新用户信息交易并背书;
步骤22:用户本地认证;
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥,并将ID、H(PW)、H(DID)信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域信息;
第4步:A域认证服务器ServerA比对客户端ClientA发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息;
步骤23:用户异地跨域认证;
第1步:A域注册用户i在B域客户端ClientB上输入登陆信息ID和PW;
第2步:客户端ClientB提取用户设备编号DID,作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与B域认证服务器ServerB协商会话密钥,并将ID、H(PW)、H(DID)信息通过会话密钥加密发送给B域认证服务器ServerB;
第3步:B域认证服务器ServerB收到客户端ClientB发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域信息;
第4步:B域认证服务器ServerB比对客户端ClientB发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州同济区块链研究院有限公司,未经苏州同济区块链研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910287332.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种密码验证方法及系统
- 下一篇:信息获取方法和装置





