掌桥专利:专业的专利平台
掌桥专利
首页

一种基于区块链的联盟信任分布式身份认证方法及系统

文献发布时间:2023-06-19 09:30:39


一种基于区块链的联盟信任分布式身份认证方法及系统

技术领域

本发明属于信息安全领域的身份认证安全领域,具体涉及到一种基于区块链的联盟信任 分布式身份认证方法及系统。

背景技术

近年来,随着物联网、互联网+、5G、大数据等技术的快速发展,联盟组织中人员、设备等分布式异构网络实体之间信息交互日益增强,各分布式业务应用信息系统之间多方协作、 数据融合需求增大。身份认证作为保护分布式应用信息系统安全的第一道关口,通过对各分 布式网络实体身份信息的可靠识别实现网络实体间的互信,也变得越来越重要。然而,联盟 组织中各分布式业务应用系统由于缺乏身份信息互通,不仅使得跨系统的分布式网络实体需 要在各系统频繁注册身份,而且存在多方协作效率低、“数据孤岛”加大、身份被冒用等难 题,难满足各业务系统多方协作和身份数据融合的跨域身份认证需求,亟需建立针对分布式 异构网络实体的统一、安全、适应新业务发展的跨域身份认证方案。针对上述跨域认证身份 需求,传统“中心化、以用户为中心”的身份认证方案有以下的弊端:(1)中心化身份认 证方案中,用户的身份数据管理中心化,不为用户所控制,用户隐私数据散落在互联网上难 以保护,如果中心认证服务器被攻击成功,整个身份认证系统会崩溃;(2)以用户为中心 的身份认证方案中,用户自己完全掌控身份数据,但因双方认证过程缺乏信任,用户无法有 效识别身份提供者的欺诈身份,很难防范“网络钓鱼”攻击。因此,利用区块链去中心化、 不可篡改等特性,提出了基于区块链的去中心的身份认证方案。

现有的基于区块链技术的身份认证方案,无法针对联盟组织中人员、设备、企业、组织 机构等分布式异构网络实体,实现用户的身份信息自主控制、易扩展的跨域统一联盟信任分 布式身份认证。专利《基于区块链技术的身份认证系统及其实现方法》(CN202010372661.2) 提出基于区块链身份认证系统架构,及实名注册、身份认证和级联认证等过程实现,但是不 同应用场景下的身份认证采用同一数字身份,不能满足不同场景下数字身份的应用需求,同 时身份信息容易被归集,造成身份信息的泄露;该专利仅实现了数字身份注册、认证过程, 缺少针对联盟内分布式异构网络实体的数字身份全生命周期的管理,分布式异构网络实体无 法灵活自主的控制身份信息,防止身份隐私的泄露。

专利《一种面向联盟链的身份认证方法》(CN202010046737.2)给出了用户在互不信任 的情况下共同参与密钥生成并实现身份认证的方案,但用户不能自主的控制完成身份的生成、 注册、更新、撤销;不同应用场景下采用同一私钥表示身份,身份信息也容易被归集,造成 用户自身整个身份信息泄露,使其面临安全隐患。

本发明提出了基于区块链的联盟信任分布式身份认证方法及系统,为联盟内人员、设备、 企业、组织机构等分布式异构网络实体设计了由联盟分布式身份标识符的联盟分布式数字身 份,并通过联盟分布式身份标识符管理模型对联盟分布式身份标识符进行注册、验证、更新、 注销全生命周期管理,联盟分布式身份认证运行机制模型为联盟内分布式异构网络实体提供 安全的跨域联盟信任分布式身份认证。该系统包含联盟分布式身份账本、联盟分布式身份服 务节点和分布式身份客户端。其中,联盟数字身份账本用于保存联盟数字身份信息,通过共 识机制和隐私保护机制保证联盟内分布式异构网络实体的联盟数字身份安全存储和安全共 享;联盟分布式身份服务节点是连接联盟分布式身份账本和分布式身份客户端的桥梁,接收 分布式身份客户端身份认证及身份管理请求,借助联盟分布式身份账本对联盟分布式数字身 份进行写入、查询、标记操作;分布式身份客户端为分布式异构网络实体提供本地的联盟分 布式数字身份管理,并通过该客户端内置的身份钱包存储实体的联盟分布式数字身份。分布 式异构网络实体通过该系统可自主的控制联盟内联盟分布式数字身份,实现在联盟内不同应 用场景下统一、安全的跨域身份认证。

发明内容

本发明技术解决问题:针对联盟组织中分布式异构网络实体在各分布式应用系统之间身 份认证互通的需求,而传统的身份认证方案或多或少存在安全隐患,本发明提出了基于区块 链的联盟信任分布式身份认证方法及系统,该系统为联盟内人员、设备、企业、组织机构等 分布式异构网络实体设计了由联盟分布式身份标识符的联盟分布式数字身份,采用联盟数字 身份账本保存联盟内分布式异构网络实体的联盟分布式数字身份信息,通过共识机制和隐私 保护机制保证联盟内分布式异构网络实体的联盟分布式数字身份安全存储和安全共享;并通 过联盟分布式身份标识符管理模型对联盟分布式身份标识符进行注册、验证、更新、注销全 生命周期管理,联盟分布式身份认证运行机制模型为联盟内分布式异构网络实体提供安全的 跨域联盟信任分布式身份认证。联盟内分布式异构网络实体通过该系统自主的控制拥有的一 个或多个联盟分布式身份标识符及相关联盟数字身份凭证,实现在联盟内不同应用场景下统 一、安全的跨域身份认证,有效防止身份信息被归集和隐私泄露。

本发明技术解决方案为一种基于区块链的联盟信任分布式身份认证系统,主要包括联盟 分布式身份账本、联盟分布式身份服务节点、分布式身份客户端。联盟分布式身份账本用来 存储联盟内人员、设备、企业、组织机构等分布式网络实体的联盟分布式数字身份信息,并 通过共识机制和隐私保护机制保证联盟内分布式异构网络实体的联盟分布式数字身份安全 存储和安全共享,为上层联盟分布式身份服务节点提供联盟分布式数字身份信息支撑。联盟 分布式身份服务节点是连接联盟分布式身份账本和分布式身份客户端的桥梁,接收分布式网 络实体的分布式身份客户身份管理或认证请求,借助联盟分布式身份账本对联盟分布式数字 身份进行写入、查询、标记操作;分布式身份客户端为分布式异构网络实体提供本地的联盟 分布式数字身份管理,并通过该客户端内置的身份钱包存储实体的联盟分布式数字身份。该 系统通过联盟分布式身份标识符管理模型实现对联盟分布式身份标识符进行注册、验证、更 新、注销全生命周期管理,联盟分布式身份认证运行机制模型为联盟内分布式异构网络实体 提供跨域联盟信任分布式身份认证。分布式异构网络实体通过该系统可自主的控制联盟内联 盟分布式数字身份,主动防止身份隐私泄露,同时实现在联盟内不同应用场景下统一、安全 的跨域身份认证。其中联盟分布式身份标识符是针对联盟内人员、设备、企业、组织机构等 分布式异构网络实体而设计,具有联盟内全局唯一、易扩展、可信度高等优点。

所述的一种基于区块链的联盟信任分布式身份认证系统,包括,联盟分布式身份账本、 联盟分布式身份服务节点、分布式身份客户端;

联盟分布式身份账本,用来存储联盟内分布式网络实体的联盟分布式数字身份信息,并 通过共识机制和隐私保护机制保证联盟内分布式异构网络实体的联盟分布式数字身份安全 存储和安全共享,为上层联盟分布式身份服务节点提供联盟分布式数字身份信息支撑,所述 联盟内分布式网络实体包括人员、设备、企业、组织机构;

联盟分布式身份服务节点,用于连接联盟分布式身份账本和分布式身份客户端,接收分 布式网络实体的分布式身份客户身份管理或认证请求,借助联盟分布式身份账本对联盟分布 式数字身份进行写入、查询、标记操作;

分布式身份客户端,为分布式异构网络实体提供本地的联盟分布式数字身份管理,并通 过该客户端内置的身份钱包存储实体的联盟分布式数字身份。

进一步的,该系统通过联盟分布式身份标识符管理模型实现对联盟分布式身份标识符进 行注册、验证、更新、注销全生命周期管理,联盟分布式身份认证运行机制模型为联盟内分 布式异构网络实体提供跨域联盟信任分布式身份认证;分布式异构网络实体通过该系统自主 的控制联盟内联盟分布式数字身份,主动防止身份隐私泄露,同时实现在联盟内不同应用场 景下统一、安全的跨域身份认证。

进一步的,分布式网络实体联盟分布式身份标识符的生成过程包括:

分布式网络实体通过分布式身份客户端首先根据自身类型选择联盟身份的type;然后基 于选择的联盟身份type生成固定头部ConsortiumID、随机字符串RandomString、以及与之 关联的公私钥对(pk,sk),其中pk代表公钥,sk代表私钥,进而组合得到联盟分布式身份 标识符{,pk};最后将生成的联盟分布式身份标识符存储的 内置身份钱包中。

进一步的,分布式网络实体联盟分布式身份标识符的注册过程包括:

分布式网络实体通过分布式身份客户端首先从自身身份钱包取出联盟分布式身份标识 符,对取出的联盟分布式身份标识符进行哈希运算hash,生成联盟分布式身份标识符信息摘 要,并附加时间戳;然后利用自己的私钥对该联盟分布式身份标识符信息摘要和附加时间戳 进行签名,生成联盟分布式身份标识符相关的签名信息;接着将生成的联盟分布式身份标识 符相关的签名信息和钱包已取出的联盟分布式身份标识符作为注册请求参数发送到联盟分 布式身份服务节点;联盟分布式身份服务节点收到这个注册请求以后,通过提取注册请求中 联盟分布式身份标识符里的公钥对收到的注册请求中的签名信息进行验签;如果验签通过, 则联盟分布式身份服务节点将收到的联盟分布式身份标识符通过共识机制存储在联盟分布 式身份账本中;否则,注册失败。

进一步的,分布式网络实体联盟分布式身份标识符的验证过程包括:

分布式网络实体首先通过分布式身份客户端对自身联盟分布式身份标识符进行哈希运 算hash,生成联盟分布式身份标识符信息摘要H,并附加时间戳;然后利用自己的私钥对该 联盟分布式身份标识符信息摘要H和附加时间戳进行签名,生成联盟分布式身份标识符相关 的签名信息;接着将携带生成的联盟分布式身份标识符相关的签名和联盟分布式身份标识符 的验证请求发送联盟分布式身份服务节点;联盟分布式身份服务节点接收到这个验证请求后, 首先查询发送验证请求的分布式网络实体在联盟分布式身份账本上的联盟分布式身份标识 符信息,并提取出联盟分布式身份标识符里的公钥pk;然后利用提取到公钥pk对收到请求里 的联盟分布式身份标识符相关的签名信息进行验签,则联盟分布式身份服务节点将验证结果 通过共识机制存储在联盟分布式身份账本中,以备其他分布式网络实体查询,同时将验证结 果返回给发送验证请求的分布式网络实体。

进一步的,分布式网络实体联盟分布式身份标识符的更新过程包括:

分布式网络实体首先通过分布式身份客户端生成新联盟分布式身份标识符,然后对新联 盟分布式身份标识符进行哈希运算hash,生成新联盟分布式身份标识符信息摘要,并附加时 间戳,然后利用旧联盟分布式身份标识符对应私钥对新联盟分布式身份标识符信息摘要和附 加时间戳进行签名,得到签名信息S,接着将携带旧联盟分布式身份标识符、新联盟分布式 身份标识符和签名信息S的更新请求发送给联盟分布式身份服务节点;联盟分布式身份服务 节点收到该更新请求,首先查询在联盟分布式身份账本上旧联盟分布式身份标识符信息,并 在联盟分布式身份账本上提取出旧联盟分布式身份标识符里对应的公钥pk;然后利用该提取 出的公钥pk对收到签名信息S进行验签,如果验证通过,联盟分布式身份服务节点通过共识 机制在联盟分布式身份账本中存储新联盟分布式身份标识符,标记旧联盟分布式身份标识符 不可用,同时通知发送更新请求的分布式网络实体在自己分布式身份客户端的身份钱包中存 储新联盟分布式身份标识符及删除旧联盟分布式身份标识符;否则,更新失败。

进一步的,分布式网络实体联盟分布式身份标识符的撤销过程包括:

分布式网络实体通过分布式身份客户端首先从自身身份钱包中取出待被撤销的联盟分 布式身份标识符,对待被撤销的联盟分布式身份标识符进行哈希运算hash,生成待被撤销的 联盟分布式身份标识符信息摘要,并附加时间戳;然后利用自己的私钥对该待被撤销的联盟 分布式身份标识符信息摘要和附加时间戳进行签名,生成待被撤销的联盟分布式身份标识符 相关的签名信息;接着将携带待被撤销的联盟分布式身份标识符相关的签名信息和被撤销的 联盟分布式身份标识符的撤销请求发送到联盟分布式身份服务节点;联盟分布式身份服务节 点收到该撤销请求,首先查询在联盟分布式身份账本上待被撤销的联盟分布式身份标识符, 并在联盟分布式身份账本上提取出待被撤销的联盟分布式身份标识符的公钥;然后利用该提 取出公钥对被待撤销的联盟分布式身份标识符相关的签名信息进行验签,若验签通过,则将 在联盟分布式身份账本上的待被撤销的联盟分布式身份标识符信息标记为已撤销;同时通知 发送撤销请求的分布式网络实体将在自己分布式身份客户端的身份钱包中的待被撤销的联 盟分布式身份标识符删除。

根据本发明的另一方面,提出一种基于区块链的联盟信任分布式身份认证方法,分布式 异构网络实体通过分布式身份客户端生成联盟分布式身份标识符,并向联盟分布式身份服务 节点请求联盟分布式身份标识符注册、验证、更新、注销服务,自主的控制联盟分布式身份 标识符的全生命周期管理;具体包括如下步骤:

(1.1)分布式网络实体联盟分布式身份标识符的生成;

(1.2)分布式网络实体联盟分布式身份标识符的注册;

(1.3)分布式网络实体联盟分布式身份标识符的验证;

(1.4)分布式网络实体联盟分布式身份标识符的更新;

(1.5)分布式网络实体联盟分布式身份标识符的撤销。

进一步的,所述(1.1)分布式网络实体联盟分布式身份标识符的生成具体包括:

分布式网络实体通过分布式身份客户端首先根据自身类型选择联盟身份的type;然后基 于选择的联盟身份type生成固定头部ConsortiumID、随机字符串RandomString、以及与之 关联的公私钥对(pk,sk),其中pk代表公钥,sk代表私钥,进而组合得到联盟分布式身份 标识符{,pk};最后将生成的联盟分布式身份标识符存储的 内置身份钱包中。

进一步的,所述(1.2)分布式网络实体联盟分布式身份标识符的注册具体包括:

(1.2.1)分布式网络实体通过分布式身份客户端首先从自身身份钱包取出联盟分布式身 份标识符,对取出的联盟分布式身份标识符进行哈希运算hash,生成联盟分布式身份标识符 信息摘要,并附加时间戳;然后利用自己的私钥对该联盟分布式身份标识符信息摘要和附加 时间戳进行签名,生成联盟分布式身份标识符相关的签名信息;接着将生成的联盟分布式身 份标识符相关的签名信息和钱包已取出的联盟分布式身份标识符作为注册请求参数发送到 联盟分布式身份服务节点;

(1.2.2)联盟分布式身份服务节点收到这个注册请求以后,通过提取注册请求中联盟分布 式身份标识符里的公钥对收到的注册请求中的签名信息进行验签;如果验签通过,则联盟分 布式身份服务节点将收到的联盟分布式身份标识符通过共识机制存储在联盟分布式身份账 本中;否则,注册失败。

进一步的,所述(1.3)分布式网络实体联盟分布式身份标识符的验证具体包括:

(1.3.1)分布式网络实体首先通过分布式身份客户端对自身联盟分布式身份标识符进行 哈希运算hash,生成联盟分布式身份标识符信息摘要H,并附加时间戳;然后利用自己的私 钥对该联盟分布式身份标识符信息摘要H和附加时间戳进行签名,生成联盟分布式身份标识 符相关的签名信息;接着将携带生成的联盟分布式身份标识符相关的签名和联盟分布式身份 标识符的验证请求发送联盟分布式身份服务节点;

(1.3.2)联盟分布式身份服务节点接收到这个验证请求后,首先查询发送验证请求的分布 式网络实体在联盟分布式身份账本上的联盟分布式身份标识符信息,并提取出联盟分布式身 份标识符里的公钥pk;然后利用提取到公钥pk对收到请求里的联盟分布式身份标识符相关 的签名信息进行验签,则联盟分布式身份服务节点将验证结果通过共识机制存储在联盟分布 式身份账本中,以备其他分布式网络实体查询,同时将验证结果返回给发送验证请求的分布 式网络实体。

进一步的,所述(1.4)分布式网络实体联盟分布式身份标识符的更新具体包括:

(1.4.1)分布式网络实体通过分布式身份客户端首先生成新联盟分布式身份标识符,然后 对新联盟分布式身份标识符进行哈希运算hash,生成新联盟分布式身份标识符信息摘要,并 附加时间戳,然后利用旧联盟分布式身份标识符对应私钥对新联盟分布式身份标识符信息摘 要和附加时间戳进行签名,得到签名信息S,接着将携带旧联盟分布式身份标识符、新联盟 分布式身份标识符和签名信息S的更新请求发送给联盟分布式身份服务节点。

(1.4.2)联盟分布式身份服务节点收到该更新请求,首先查询在联盟分布式身份账本上旧 联盟分布式身份标识符信息,并在联盟分布式身份账本上提取出旧联盟分布式身份标识符里 对应的公钥pk;然后利用该提取出的公钥pk对收到签名信息S进行验签,如果验证通过, 联盟分布式身份服务节点通过共识机制在联盟分布式身份账本中存储新联盟分布式身份标 识符,标记旧联盟分布式身份标识符不可用,同时通知发送更新请求的分布式网络实体在自 己分布式身份客户端的身份钱包中存储新联盟分布式身份标识符及删除旧联盟分布式身份 标识符;否则,更新失败。

进一步的,所述(1.5)分布式网络实体联盟分布式身份标识符的撤销具体包括:

(1.5.1)分布式网络实体通过分布式身份客户端首先从自身身份钱包中取出待被撤销的 联盟分布式身份标识符,对待被撤销的联盟分布式身份标识符进行哈希运算hash,生成待被 撤销的联盟分布式身份标识符信息摘要,并附加时间戳;然后利用自己的私钥对该待被撤销 的联盟分布式身份标识符信息摘要和附加时间戳进行签名,生成待被撤销的联盟分布式身份 标识符相关的签名信息;接着将携带待被撤销的联盟分布式身份标识符相关的签名信息和被 撤销的联盟分布式身份标识符的撤销请求发送到联盟分布式身份服务节点。

(1.5.2)联盟分布式身份服务节点收到该撤销请求,首先查询在联盟分布式身份账本上待 被撤销的联盟分布式身份标识符,并在联盟分布式身份账本上提取出待被撤销的联盟分布式 身份标识符的公钥;然后利用该提取出公钥对被待撤销的联盟分布式身份标识符相关的签名 信息进行验签,若验签通过,则将在联盟分布式身份账本上的待被撤销的联盟分布式身份标 识符信息标记为已撤销。同时通知发送撤销请求的分布式网络实体将在自己分布式身份客户 端的身份钱包中的待被撤销的联盟分布式身份标识符删除。

本发明与现有技术相比有优点在于:

(1)传统的身份认证技术多采用中心化身份认证方案,在分布式基础架构上采用中心 化认证方案存在一定的安全风险,易受DDOS攻击、单点故障攻击等影响。本发明多个联盟 组织提供内部一个或多个独立对等的节点,构建可信分布式身份认证联盟网络,其节点分散、 去中心,能够有效防御DDoS攻击。并且当攻击者对某个单一节点攻击时,即便该节点失效, 也不会影响整个联盟分布式认证服务。

(2)传统中心化的身份认证方案中,用户身份信息散落在各异构分布式系统上,用户 不能控制相关私有数据,这将造成个人的身份隐私泄露;而以用户为中心的身份认证方案中, 用户完全自主的控制身份信息,但双方认证过程缺乏信任,用户无法有效识别身份提供者的 欺诈身份,很难防范“网络钓鱼”攻击。本发明通过区块链共识机制和身份隐私保护机制保 证联盟网络环境中身份数据的安全、可信、共享,用户自主的控制自身身份信息,并只向联 盟内特定组织或个人暴漏身份数据,防止身份隐私泄露。

(3)传统的身份是在中心化身份的基础上增加了可移植性。与之不同的是,本发明的 身份信息可移植性在于用户根据自身的需要对相应联盟分布式数字身份进行移植。即一个分 布式网络实体基于去中心化的身份移植,可获得不同身份认证场景下的多个联盟分布式身份 标识符及相关联盟数字身份凭证,完成分布式网络实体用户身份的移植。

附图说明

图1本发明的整体架构示意图;

图2本发明的联盟分布式身份标识符管理模型示意图;

图3本发明的联盟分布式身份认证运行机制模型示意图。

具体实施方式

为使本发明的目的、优点以及技术方案更加清楚明白,通过以下具体措施,并结合附图 1-3,对本发明作进一步详细说明。

基于区块链的联盟信任分布式身份认证系统,如图1所示,主要由联盟分布式身份账本、 联盟分布式身份服务节点、分布式身份客户端组成。联盟分布式身份账本用来存储联盟内人 员、设备、企业、组织机构等分布式网络实体的联盟数字身份信息,并通过共识机制和隐私 保护机制保证联盟内分布式异构网络实体的联盟数字身份安全存储和安全共享,为上层联盟 分布式身份服务节点提供联盟数字身份信息支撑。联盟分布式身份服务节点是连接联盟分布 式身份账本和分布式身份客户端的桥梁,接收分布式网络实体的分布式身份客户身份管理或 认证请求,借助联盟分布式身份账本对联盟分布式数字身份进行写入、查询、标记操作;分 布式身份客户端为分布式异构网络实体提供本地的联盟分布式数字身份管理,并通过该客户 端内置的身份钱包存储实体的联盟分布式数字身份。该系统通过联盟分布式身份标识符管理 模型实现对联盟分布式身份标识符进行注册、验证、更新、注销全生命周期管理,联盟数字 身份凭证管理模型实现对联盟数字身份凭证进行颁发、验证、更新、撤消的全生命周期管理, 联盟分布式身份认证运行机制模型为联盟内分布式异构网络实体提供跨域联盟信任分布式 身份认证。分布式异构网络实体通过该系统可自主的控制联盟内联盟分布式数字身份,主动 防止身份隐私泄露,同时实现在联盟内不同应用场景下统一、安全的跨域身份认证。

一、联盟分布式身份标识符管理模型工作机制

如图2所示,联盟分布式身份标识符是针对联盟内人员、设备、企业、组织机构等分布 式异构网络实体而设计,具有联盟内全局唯一、易扩展、可信度高等优点。联盟分布式身份 标识符管理模型实现了对联盟分布式身份标识符注册、验证、更新、注销全生命周期管理, 分布式异构网络实体通过分布式身份客户端生成联盟分布式身份标识符,并向联盟分布式身 份服务节点请求联盟分布式身份标识符注册、验证、更新、注销服务,自主的控制联盟分布 式身份标识符的全生命周期管理,主动防止身份隐私泄露。

(1.1)分布式网络实体联盟分布式身份标识符的生成。分布式网络实体通过分布式身份 客户端首先根据自身类型选择联盟身份的type;然后基于选择的联盟身份type生成固定头部 ConsortiumID、随机字符串RandomString、以及与之关联的公私钥对(pk,sk),其中pk代 表公钥,sk代表私钥,进而组合得到联盟分布式身份标识符 {,pk};最后将生成的联盟分布式身份标识符存储的内置身 份钱包中。

(1.2)分布式网络实体联盟分布式身份标识符的注册。

(1.2.1)分布式网络实体通过分布式身份客户端首先从自身身份钱包取出联盟分布式身 份标识符,对取出的联盟分布式身份标识符进行哈希运算hash,生成联盟分布式身份标识符 信息摘要,并附加时间戳;然后利用自己的私钥对该联盟分布式身份标识符信息摘要和附加 时间戳进行签名,生成联盟分布式身份标识符相关的签名信息;接着将生成的联盟分布式身 份标识符相关的签名信息和钱包已取出的联盟分布式身份标识符作为注册请求参数发送到 联盟分布式身份服务节点。

(1.2.2)联盟分布式身份服务节点收到这个注册请求以后,通过提取注册请求中联盟分布 式身份标识符里的公钥对收到的注册请求中的签名信息进行验签;如果验签通过,则联盟分 布式身份服务节点将收到的联盟分布式身份标识符通过共识机制存储在联盟分布式身份账 本中;否则,注册失败。

(1.3)分布式网络实体联盟分布式身份标识符的验证。

(1.3.1)分布式网络实体首先通过分布式身份客户端对自身联盟分布式身份标识符进行 哈希运算hash,生成联盟分布式身份标识符信息摘要H,并附加时间戳;然后利用自己的私 钥对该联盟分布式身份标识符信息摘要H和附加时间戳进行签名,生成联盟分布式身份标识 符相关的签名信息;接着将携带生成的联盟分布式身份标识符相关的签名和联盟分布式身份 标识符的验证请求发送联盟分布式身份服务节点。

(1.3.2)联盟分布式身份服务节点接收到这个验证请求后,首先查询发送验证请求的分布 式网络实体在联盟分布式身份账本上的联盟分布式身份标识符信息,并提取出联盟分布式身 份标识符里的公钥pk;然后利用提取到公钥pk对收到请求里的联盟分布式身份标识符相关 的签名信息进行验签,则联盟分布式身份服务节点将验证结果通过共识机制存储在联盟分布 式身份账本中,以备其他分布式网络实体查询,同时将验证结果返回给发送验证请求的分布 式网络实体。

(1.4)分布式网络实体联盟分布式身份标识符的更新。

(1.4.1)分布式网络实体通过分布式身份客户端首先生成新联盟分布式身份标识符,然后 对新联盟分布式身份标识符进行哈希运算hash,生成新联盟分布式身份标识符信息摘要,并 附加时间戳,然后利用旧联盟分布式身份标识符对应私钥对新联盟分布式身份标识符信息摘 要和附加时间戳进行签名,得到签名信息S,接着将携带旧联盟分布式身份标识符、新联盟 分布式身份标识符和签名信息S的更新请求发送给联盟分布式身份服务节点。

(1.4.2)联盟分布式身份服务节点收到该更新请求,首先查询在联盟分布式身份账本上旧 联盟分布式身份标识符信息,并在联盟分布式身份账本上提取出旧联盟分布式身份标识符里 对应的公钥pk;然后利用该提取出的公钥pk对收到签名信息S进行验签,如果验证通过, 联盟分布式身份服务节点通过共识机制在联盟分布式身份账本中存储新联盟分布式身份标 识符,标记旧联盟分布式身份标识符不可用,同时通知发送更新请求的分布式网络实体在自 己分布式身份客户端的身份钱包中存储新联盟分布式身份标识符及删除旧联盟分布式身份 标识符;否则,更新失败。

(1.5)分布式网络实体联盟分布式身份标识符的撤销。

(1.5.1)分布式网络实体通过分布式身份客户端首先从自身身份钱包中取出待被撤销的 联盟分布式身份标识符,对待被撤销的联盟分布式身份标识符进行哈希运算hash,生成待被 撤销的联盟分布式身份标识符信息摘要,并附加时间戳;然后利用自己的私钥对该待被撤销 的联盟分布式身份标识符信息摘要和附加时间戳进行签名,生成待被撤销的联盟分布式身份 标识符相关的签名信息;接着将携带待被撤销的联盟分布式身份标识符相关的签名信息和被 撤销的联盟分布式身份标识符的撤销请求发送到联盟分布式身份服务节点。

(1.5.2)联盟分布式身份服务节点收到该撤销请求,首先查询在联盟分布式身份账本上待 被撤销的联盟分布式身份标识符,并在联盟分布式身份账本上提取出待被撤销的联盟分布式 身份标识符的公钥;然后利用该提取出公钥对被待撤销的联盟分布式身份标识符相关的签名 信息进行验签,若验签通过,则将在联盟分布式身份账本上的待被撤销的联盟分布式身份标 识符信息标记为已撤销。同时通知发送撤销请求的分布式网络实体将在自己分布式身份客户 端的身份钱包中的待被撤销的联盟分布式身份标识符删除。

二、联盟数字身份凭证

其中联盟数字身份凭证是与联盟分布式身份标识符关联的分布式网络实体身份属性集 合,使分布式网络实体适应联盟内不同应用场景下分布式跨域身份认证。依据联盟数字身份 凭证定义,通过属性赋值进而生成联盟数字身份凭证,其中联盟数字身份凭证定义的数据结 构是由元数据Credential Metadata、属性集合Claims及凭证颁发者签名信息Proofs三部分 组成,如:{Credential Metadata:{credentialName,issuanceDate,expireDate,Issuer},Claims:{claim1,...,cla imN},Proofs:{signatureValue,signatureAlgorithm,createdTime}},其中元数据包含凭证 名称credentialName、颁发日期issuanceDate及有效期expireDate、凭证颁发者Issuer等信 息;凭证颁发者签名信息包括签名信息signatureValue、签名算法signatureAlgorithm、签 名创建时间createdTime等。

三、联盟分布式身份认证运行机制模型

联盟分布式身份认证运行机制模型包括分布式数字身份标识生成、联盟数字身份凭证生 成、联盟数字身份区块生成和联盟数字身份验证四级运行机制,为联盟内分布式异构网络实 体提供在联盟内不同应用场景下统一、安全的跨域身份认证,如图3所示:

(3.1)分布式数字身份标识生成:分布式网络实体通过分布式身份客户端首先生成自身联 盟分布式身份标识符,该联盟分布式身份标识符主要包含:固定头部ConsortiumID、随机字 符串RandomString、以及与之关联的公私钥对(pk,sk)其中pk代表公钥,sk代表私钥;对 联盟分布式身份标识符进行哈希运算hash,生成联盟分布式身份标识符信息摘要,并附加时 间戳;然后利用自己的私钥对该联盟分布式身份标识符信息摘要和附加时间戳进行签名,生 成联盟分布式身份标识符相关签名,接着将生成的联盟分布式身份标识符相关签名和联盟分 布式身份标识符发送到联盟分布式身份服务节点。

(3.2)联盟数字身份凭证生成:分布式网络实体作为凭证颁发者,通过分布式身份客户端 对联盟数字身份凭证定义进行哈希运算hash,生成联盟数字身份凭证定义信息摘要,并附加 时间戳;然后利用(a)分布式数字身份标识生成过程中自身的私钥对该联盟数字身份凭证定义 信息摘要和附加时间戳进行签名,生成联盟数字身份凭证定义相关签名;接着将生成联盟数 字身份凭证定义相关签名和联盟数字身份凭证定义发送到联盟分布式身份服务节点。凭证颁 发者将基于该数字身份凭证定义为分布式网络实体颁发联盟数字身份凭证。

(3.3)联盟数字身份区块的生成:联盟分布式身份服务节点接收到各分布式网络实体的联 盟分布式身份标识符相关签名和联盟数字身份凭证定义相关签名后,对收到的签名进行验证, 若验证通过,则根据接收到的联盟分布式身份标识符和联盟数字身份凭证定义生成新的区块, 并广播至全网,接收到的联盟分布式身份标识符和联盟数字身份凭证定义通过共识机制存储 到联盟分布式身份账本。

(3.4)联盟数字身份验证:某分布式网络实体作为联盟数字身份凭证持有者,申请访问一 个应用系统。该系统的联盟数字身份凭证验证者,首先对该申请访问分布式网络实体联盟数 字身份标识符进行验证,然后查询并获取该申请访问分布式网络实体在联盟分布式身份账本 上的数字身份凭证定义,对该申请访问分布式网络实体所出示的联盟数字身份凭证信息进行 验证,从而完成对用户身份的验证,获得对该应用系统的访问。

尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理 解本发明,且应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员 来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显 而易见的,一切利用本发明构思的发明创造均在保护之列。

相关技术
  • 一种基于区块链的联盟信任分布式身份认证方法及系统
  • 一种基于联盟区块链的智能电网分布式密文检索方法和系统模型
技术分类

06120112193523