本技术涉及互联网,尤其涉及一种分布式身份管理方法和装置。
背景技术:
1、安全的身份认证协议是网络空间安全稳定发展的一个必要前提。在如今大数据搜索、人脸识别、云计算和中心化认证等互联网环境下,庞大的数据和智能算法给社会带来便利的同时,也给用户的数字身份隐私安全带来了巨大的挑战。
2、早期的身份信息管理从单点登录身份模型,发展到联合身份认证模型,再演变为以oauth、openid为主的以用户为中心认证模型,虽然身份认证模型的演变总能带来新的提升,但是这些方案无法摆脱集中式身份认证带来的隐私泄露问题,使用户丧失对自己身份信息的可控性,导致用户始终无法掌控自己的身份数据。针对这一现象,近年来有人提出了自我主权(self-sovereign identity,ssi)的概念,它能提供一种可移植、安全和可控的身份的方式。通过ssi,个人可以直接掌控和管理其身份信息,选择与哪些组织或个人分享这些信息,从而实现了更加安全、隐私保护和自主的身份验证方式。
3、ssi作为新一代的身份认证概念,大部分企业在实现都是基于区块链的,虽然区块链技术相比中心化的实现具有一些技术优势,但是对于实现ssi的细粒度授权和隐私保护,仍然存在缺陷。由于ssi身份系统背后依托区块链技术,需要通过密码学的方式对用户完成最终的身份认证,但是直接用于身份认证的私钥无法被用户直接记忆,而且身份认证私钥的保管和迁移也存在诸多问题和风险, 导致了用户持有认证私钥的成本成倍上升。很多企业在实现ssi过程中都通过代替用户持有/操作身份认证私钥来规避这些问题,虽然解决了用户操作、保管和迁移身份认证私钥的问题,却引发了一个更严重的问题:用户在实质上丧失了对自我主权身份的治理能力,且带来了使不良企业得以彻底控制用户自我主权身份的隐患。
技术实现思路
1、为了解决上述问题,本发明提供了一种分布式身份管理方法和装置。本发明通过将分布式身份锚定至原始身份,为用户漫游其身份认证私钥,降低用户使用成本和私钥迁移成本的同时,不直接持有用户私钥,杜绝可能出现的用户自我主权身份被意外滥用的可能。
2、本发明采用的技术方案为:一种分布式身份管理方法,包括:
3、1. 身份主体向身份控制器提交原始身份认证凭据、身份主体认证私钥密文和身份主体验证公钥。
4、2. 身份控制器验证身份原始身份认证凭据是否有效,身份主体验证公钥是否符合身份主体验证策略。
5、3. 身份控制器使用身份主体原始身份认证凭据获取身份主体原始身份信息。
6、4. 身份控制器为身份主体计算生成分布式身份标识。
7、5. 身份控制器保存身份主体提供的身份主体认证私钥密文,并与身份主体分布式身份标识绑定。
8、6. 身份控制器与身份核心服务交互,为身份主体创建分布式身份文档和签发可验证凭证。
9、7. 身份核心服务在当前域中存储身份主体的分布式身份文档和可验证凭证,并将分布式身份文档和可验证凭证生效信息发布至外部分布式基础设施中。
10、8. 身份控制器将可验证凭证返回给身份主体。
11、一种分布式身份管理方法,所述身份主体向身份控制器提交原始身份认证凭据、身份主体认证私钥密文和身份主体验证公钥前,还包括:
12、1. 身份主体通过操作设备随机生成一对公私钥作为身份主体认证密钥对,并将其中的身份主体认证私钥保存于操作设备内部的可信执行环境中。
13、2. 身份主体对身份主体认证私钥加密,得到身份主体认证私钥密文,身份主体对身份主体认证私钥加密时,可以采用对称密钥加密和非对称密钥加密。优选的,为了提升身份主体认证私钥的安全性,可以使用设备内部可信执行环境(tee)对身份主体认证私钥加密。优选的,在确保安全性的同时为了提升身份主体认证私钥的便利性和可迁移性,可以通过基于口令的加密算法(pbes)对身份主体认证私钥加密。
14、3. 身份主体与身份控制器交互,获取原始身份认证策略,所述原始身份认证策略包含:支持的原始身份类型,原始身份验证机构,原始身份认证凭据中的必要参数。
15、4. 身份主体根据原始身份认证策略,构建原始身份认证凭据并提交给身份控制器。
16、一种分布式身份管理方法,所述身份控制器将可验证凭证返回给身份主体后,还包括:身份主体将可验证凭证保存于操作设备可信执行环境中。
17、一种分布式身份管理方法,所述原始身份信息,其特征为身份主体在其他域的身份信息,原始身份信息可以是其他域中存储的分布式身份信息,也可以是其他域存储的中心式身份信息。
18、一种分布式身份管理方法,所述原始身份认证凭据,其特征为一组用于认证身份主体原始身份的参数,根据原始身份类型的不同,参数数目和结构也不同,每种原始身份对应一种身份认证凭据。
19、一种分布式身份管理方法,所述身份核心服务,其特征为一组用于存储、检索、更新身份主体所对应的分布式身份文档的逻辑服务,其中,检索服务对域外服务公开;存储和更新服务仅面向身份控制器开放使用。
20、一种分布式身份管理方法,所述分布式身份文档,其特征为至少包含身份主体分布式身份标识和验证身份主体身份的公钥的数字档案。
21、一种分布式身份管理方法,所述可验证凭证,其特征为至少包含了凭证身份标识、身份主体许可公开的原始身份信息属性、身份主体分布式身份标识、签发者分布式身份标识、签发时间和签发者数字签名的数字档案。
22、一种分布式身份管理方法,所述可验证凭证生效信息,其特征为至少包含凭证身份标识、凭证生效时间、凭证失效时间、凭证失效状态的数字档案。
23、一种分布式身份管理方法,所述分布式基础设施,其特征为一种区块链网络,以公有链、私有链或联盟链的形式对外提供服务。
24、一种分布式身份认证方法,包括:
25、1. 身份主体从操作设备可信执行环境中,提取身份主体身份认证私钥和可验证凭证。
26、2. 身份主体与与身份依赖方交互,获取分布式身份认证策略,所述分布式身份认证策略包含一个由身份依赖方随机生成的种子值作为挑战参数。
27、3. 身份主体根据分布式身份认证策略使用身份主体认证私钥对随机种子值进行数字签名,并与可验证凭证一同组装为可验证展示文档。
28、4. 身份主体与身份依赖方交互,提交可验证展示文档。
29、5. 身份依赖方解析可验证展示文档,从可验证文档中提取身份主体的可验证凭证。
30、6. 身份依赖方与分布式基础设施交互,获取身份主体对应的分布式身份文档和可验证凭证的生效状态。
31、7. 身份依赖方使用身份主体对应的分布式身份文档中的身份主体验证公钥,验证可验证展示文档中身份主体的数字签名是否正确。
32、一种分布式身份认证方法,所述身份主体从操作设备可信执行环境中,提取身份主体身份认证私钥和可验证凭证前,还包括:
33、1. 操作设备判断身份主体的可验证凭证和身份主体认证私钥是否存储与可信执行环境中,如果为是则结束。
34、2. 身份主体与身份控制器交互,获取恢复可验证凭证的原始身份认证策略。
35、3. 身份主体根据原始身份认证策略构建原始身份认证凭据并提交给身份控制器。
36、4. 身份控制器使用身份主体原始身份认证凭据获取身份主体原始身份信息。
37、5. 身份控制器与身份核心服务交互,检索身份主体对应的分布式身份文档和可验证凭证。
38、6. 身份控制器向身份主体返回身份主体对应的可验证凭证。
39、一种分布式身份认证方法,所述可验证展示文档,其特征为至少包含了可验证凭证、身份依赖方随机生成的种子值和身份主体使用身份认证私钥对随机种子值计算的数字签名的数字文档。
40、一种分布式身份管理装置,包含:
41、1. 身份主体代理模块:运行在操作设备中的软件引用,用于代理实际的身份主体完成与身份控制器的交互。
42、2. 身份控制器模块:一组逻辑服务,每个服务与不同的原始身份机构通信,验证身份主体提交的原始身份认证凭据。
43、3. 身份核心服务模块:一组逻辑服务,处理来自身份控制器的分布式身份文档创建、更新请求,并将相应的结果写入域外分布式基础设施;处理来自域内身份依赖方的分布式身份文档的检索请求。
44、4. 身份依赖模块:一组逻辑服务,通过对身份主体进行身份验证后,处理来自身份主体的实际业务请求。
1.一种分布式身份管理方法,包括:
2.根据权利要求1所述的方法,所述身份主体向身份控制器提交原始身份认证凭据、身份主体认证私钥密文和身份主体验证公钥前,还包括:
3.根据权利要求1所述的方法,所述身份控制器将可验证凭证返回给身份主体后,还包括:身份主体将可验证凭证保存于操作设备可信执行环境中。
4.根据权利要求1所述的方法,所述原始身份信息,其特征为身份主体在其他域的身份信息,原始身份信息可以是其他域中存储的分布式身份信息,也可以是其他域存储的中心式身份信息。
5.根据权利要求1所述的方法,所述原始身份认证凭据,其特征为一组用于认证身份主体原始身份的参数,根据原始身份类型的不同,参数数目和结构也不同,每种原始身份对应一种身份认证凭据。
6.根据权利要求1所述的方法,所述身份核心服务,其特征为一组用于存储、检索、更新身份主体所对应的分布式身份文档的逻辑服务,其中,检索服务对域外服务公开;存储和更新服务仅面向身份控制器开放使用。
7.根据权利要求1所述的方法,所述分布式身份文档,其特征为至少包含身份主体分布式身份标识和验证身份主体身份的公钥的数字档案。
8.根据权利要求1所述的方法,所述可验证凭证,其特征为至少包含了凭证身份标识、身份主体许可公开的原始身份信息属性、身份主体分布式身份标识、签发者分布式身份标识、签发时间和签发者数字签名的数字档案。
9.根据权利要求1所述的方法,所述可验证凭证生效信息,其特征为至少包含凭证身份标识、凭证生效时间、凭证失效时间、凭证失效状态的数字档案。
10.根据权利要求1所述的方法,所述分布式基础设施,其特征为一种区块链网络,以公有链、私有链或联盟链的形式对外提供服务。
11.一种分布式身份认证方法,包括:
12.根据权利要求11所述的方法,所述身份主体从操作设备可信执行环境中,提取身份主体身份认证私钥和可验证凭证前,还包括:
13.根据权利要求11所述的方法,所述可验证展示文档,其特征为至少包含了可验证凭证、身份依赖方随机生成的种子值和身份主体使用身份认证私钥对随机种子值计算的数字签名的数字文档。
14.一种分布式身份管理装置,包含: