[发明专利]一种基于区块链技术的完全跨域身份认证方法有效
申请号: | 202010511018.3 | 申请日: | 2020-06-08 |
公开(公告)号: | CN112583596B | 公开(公告)日: | 2021-09-28 |
发明(设计)人: | 兰晓;张红霞;陈兴蜀;金泓键;曹琪 | 申请(专利权)人: | 四川大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32 |
代理公司: | 成都禾创知家知识产权代理有限公司 51284 | 代理人: | 裴娟 |
地址: | 610065 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 技术 完全 身份 认证 方法 | ||
1.一种基于区块链技术的完全跨域身份认证方法,其特征在于,包括以下步骤:
(1)系统初始化
(i)域实体公私钥初始化
域A和域B中的全部实体,包含相应的域代理服务器和域内的全部用户,按照域密码学体制初始化各自的公私钥;
(ii)区块链网络的建立以及链码的部署
该步骤为域A及域B中的认证服务器ASA和ASB建立区块链网络;经过许可后,域A及域B中的认证服务器ASA和ASB加入到区块链网络中,同时事前定义好的链码也将会被部署;此链码包含三个函数;
该函数处理域认证服务器发来的域信息存储请求,将域认证服务器的公钥散列值作为键,其所在域的签名SignX和散列算法HashX作为值以键值对的形式存储至区块链网络中;
该函数处理域认证服务器发来的用户身份信息存储请求,将用户的公钥散列值作为键,其所在域认证服务器的公钥散列值和身份状态state作为值以键值对的形式存储至区块链网络中;
该函数处理域认证服务器发来的用户身份验证请求;
(iii)域信息存储
域A及域B中的认证服务器ASA和ASB向区块链网络BC发送域信息存储请求将各域的签名及散列信息存储至区块链网络中;
(2)域内认证
包括用户身份的申请、验证、更新和撤销操作;
(i)申请
系统初始化之后,域A和域B中的用户向本域的验证服务器ASX发送注册申请信息请求域内身份认证;
(ii)验证
X域的域认证服务器ASX在收到域内用户发送的注册申请信息后,对用户的身份进行认证,并将用户的身份信息存储到区块链网络中;
(iii)更新
用户在更新身份信息时,需要向本域认证服务器ASX提交身份更新申请信息,请求域认证服务器ASX对相关用户身份信息进行更新操作;通过验证后,域认证服务器ASX会对区块链账本中的用户身份信息进行更新;
(iv)撤销
在用户离开本域之前,须向本域的认证服务器ASX提交用户身份撤销信息以将区块链账本上该用户的身份信息撤销;
(3)跨域认证
(i)即域A中的用户请求访问域B中的验证服务器ASB;
(ii)即域B中的认证服务器ASB响应域A中的用户发来的访问请求信息,利用随机数生成算法产生随机数N,向域A中的用户返回消息{N};
(iii)即域A中的用户在接收到域B中的认证服务器ASB返回的消息后,使用自己的签名私钥对随机数N签名,向认证服务器ASB发送消息其中,和分别对应用户的私钥和公钥,是域A认证服务器ASA的公钥;
(iv)ASB→BC:即域B认证服务器ASB接收到域A中的用户返回的消息后,开始向区块链网络发送交易信息其中Verify是区块链网络链码中事先定义好的函数;
(v)BC→ASB:{Ver Res},即接收到来自域B认证服务器ASB发生的交易信息后,区块链BC开始执行在链码事先定义好的函数并在执行完成后向域B认证服务器发送链码验证结果{Ver Res};
域B认证服务器ASB验证认证结果信息{Ver Res}:返回信息为认证成功信息,则成功完成本次认证,否则此次认证失败。
2.根据权利要求1所述的一种基于区块链技术的完全跨域身份认证方法,其特征在于,第(3)步第(v)点的函数调用过程具体为:
步骤1)获取域A签名算法以及散列算法信息{SignA,HashA}
按照事先存储在区块链网络的键值对信息,根据返回消息中的域A认证服务器ASA的公钥散列信息链码将其作为键值对账本进行查询;如果查询有误,直接中断本次认证,并向域B认证服务器ASB返回Ver Res“会话N中的用户声称所在域有误”的错误信息;如果查询成功,继续进行下面的认证过程;
步骤2)验证签名
以返回消息中的签名公钥随机数N以及上步返回的用户所在域签名算法SignA为参数,链码对签名的正确性进行验证;如果验证失败,直接中断本次认证,并向域B认证服务器ASB返回Ver Res“会话N中的用户声称公钥有误”的错误信息;如果验证成功,继续进行下面的认证过程;
步骤3)验证用户身份信息
按照事先存储在区块链网络的键值对信息,以返回消息中用户公钥和步骤1)返回的域散列算法HashA为参数,链码对用户身份信息的正确性进行验证;
查询信息为空:直接中断本次认证,并向域B认证服务器ASB返回Ver Res“会话N中的用户不存在”的错误信息;
查询信息中的与域B认证服务器ASB发来的不一致:直接中断本次认证,并向域B认证服务器ASB返回Ver Res“会话N中的用户声称所在域有误”的错误信息;
查询信息中的state为false:直接中断本次认证,并向域B认证服务器ASB返回Ver Res“会话N中的用户身份不可用”的错误信息;
查询成功:向域B认证服务器ASB返回Ver Res“会话N中的用户验证成功”的成功信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川大学,未经四川大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010511018.3/1.html,转载请声明来源钻瓜专利网。