[发明专利]一种基于智能合约的自认证数字身份管理系统及其方法有效
申请号: | 201810074075.2 | 申请日: | 2018-01-25 |
公开(公告)号: | CN108234515B | 公开(公告)日: | 2020-07-24 |
发明(设计)人: | 赵赫;周桐;李芳;李晓风;谭海波;张中贤;王卫东;吕波 | 申请(专利权)人: | 中国科学院合肥物质科学研究院 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L9/32 |
代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 陆丽莉;何梅生 |
地址: | 230031 安徽省*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 智能 合约 认证 数字 身份 管理 系统 及其 方法 | ||
1.一种基于智能合约的自认证数字身份管理系统,其特征包括:普通身份终端、权威身份终端、身份云服务器、区块链上智能合约和区块链下分布式数据库;
所述普通身份终端包括:密钥生成模块、二维码模块、数字身份注册模块、数字身份登录模块、数字信息加密与授权模块、身份云服务器交互接口;
所述权威身份终端包括:所述普通身份终端的所有功能模块、身份云服务器交互接口以及数字信息验证模块;
所述身份云服务器包括:区块链上智能合约交互接口、区块链下分布式数据库交互接口;
所述区块链上智能合约包括:数字身份管理合约、数字信息存储合约、操作日志合约接口;
所述普通身份终端或权威身份终端的数字身份注册模块通过所述密钥生成模块生成数字身份的主公开密钥和主私有密钥,并通过所述区块链上智能合约交互接口将所述主公开密钥发送给所述数字身份管理合约,使得所述数字身份管理合约能根据所述主公开密钥生成数字身份代理合约和数字身份控制合约;所述数字身份控制合约包含:身份验证合约、权限验证合约;
所述数字身份管理合约将所述数字身份代理合约的地址返回给所述普通身份终端或权威身份终端作为其身份标识;
所述数字身份注册模块获取所述普通身份终端或权威身份终端的数字信息;
所述普通身份终端或权威身份终端根据所述主公开密钥和主私有密钥,利用分层确定性种子产生和传播协议产生公私密钥树序列,并利用所述公私密钥树序列中的私钥对所述数字信息进行加密,得到数字加密信息后发送给所述区块链下分布式数据库用于存储;
所述普通身份终端或权威身份终端通过所述区块链下分布式数据库交互接口获取所述区块链下分布式数据库在存储所述数字加密信息后的过程中产生的数字指纹;
所述普通身份终端或权威身份终端将所述数字指纹、所述数字指纹对应的数字信息的名称和自身身份标识存储在所述数字信息存储合约中;
以所述普通身份终端或权威身份终端作为登录方,以另一个普通身份终端或权威身份终端作为服务方,所述服务方的数字身份登录模块利用自身的二维码模块生成二维码,所述二维码包含随机数和服务方的主公开密钥;所述登录方的数字身份登录模块利用自身的二维码模块识别所述服务方的主公开密钥和所述随机数获得识别结果,并利用自身的主私有密钥对所述识别结果进行加密,得到密文并与所述登录方的身份标识一起通过所述身份云服务器交互接口发送给所述服务方;所述服务方的数字身份登录模块将所述密文、随机数、登录方的身份标识一起发送给所述身份验证合约进行验证,若验证成功,则表示所述登录方的身份已确认,否则表示所述登录方的身份无法确认,从而完成登录方在服务方的无密登录过程;
所述服务方的数字信息加密与授权模块产生用户属性需求列表,并通过所述身份云服务器交互接口发送给身份已确认的登录方,所述身份已确认的登录方的数字信息加密与授权模块根据所述用户属性需求列表选择相应的数字信息,并利用登录方的主私有密钥和服务方的主公开密钥对所选择的数字信息的名称、所述公私密钥树序列中与所选择的数字信息相对应的公钥进行双重加密,得到加密结果,并对所选择的数字信息赋予相应的操作权限后通过所述区块链上智能合约交互接口将相应的操作权限存储在所述权限验证合约中,同时将加密结果通过所述身份云服务器交互接口反馈给所述服务方;
所述服务方的数字信息加密与授权模块利用自身的主私有密钥和登录方的主公开密钥对所述加密结果进行解密,得到所选择的数字信息的名称、所述公私密钥树序列中与所选择的数字信息相对应的公钥;
所述权限验证合约利用所述服务方的身份标识对所述服务方的操作权限进行验证,当验证成功时,所述服务方的数字信息加密与授权模块根据所选择的数字信息的名称通过所述区块链上智能合约交互接口在所述数字信息存储合约上查询数字指纹,并根据查询到的数字指纹通过所述区块链下分布式数据库交互接口在所述区块链下分布式数据库中查询与所述数字指纹对应的数字加密信息;所述服务方的数字信息加密与授权模块利用与所选择的数字信息相对应的公钥对查询得到的数字加密信息进行解密,得到相应的数字信息,从而完成登录方对所述服务方数字信息的授权过程;
所述登录方将所述服务方在所述用户属性需求列表中所需要验证的数字信息通过所述身份云服务器交互接口提交至所述权威身份终端;
所述权威身份终端对所提交的数字信息进行验证,若验证成功,则生成一个随机数作为验证凭证,再将所述验证凭证和所提交的数字信息进行哈希运算,得到验证结果;所述权威身份终端利用自身主私有密钥对所述验证结果进行加密,得到加密后的验证结果并通过所述身份云服务器交互接口发送给所述身份云服务器,同时,将所述验证凭证通过所述身份云服务器交互接口发送给所述登录方;若验证失败,则反馈验证失败结果给所述登录方;
所述登录方将所述验证凭证和所述权威身份终端的身份标识提供给所述服务方;
所述服务方根据所述权威身份终端的身份标识从所述数字身份管理合约上获取所述权威身份终端的主公开密钥,并通过所述身份云服务器交互接口从所述身份云服务器上获取所述加密后的验证结果,从而利用所述主公开密钥解密所述加密后的验证结果,得到验证结果;
所述服务方对所述验证凭证和登录方选择的数字信息进行哈希运算,得到哈希结果,并与所述验证结果进行比较,若两者一致,则表示所述服务方授权的数字信息为认证信息;否则表示所述服务方授权的数字信息为未认证信息,从而完成登录方选择的数字信息的验证过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院合肥物质科学研究院,未经中国科学院合肥物质科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810074075.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:培训信息的推广方法与装置
- 下一篇:一种网络泛洪攻击的检测方法及装置