基于区块链和IPFS的溯源权限管理系统.pdf

上传人:le****a 文档编号:10175039 上传时间:2021-06-10 格式:PDF 页数:13 大小:808.57KB
收藏 版权申诉 举报 下载
基于区块链和IPFS的溯源权限管理系统.pdf_第1页
第1页 / 共13页
基于区块链和IPFS的溯源权限管理系统.pdf_第2页
第2页 / 共13页
基于区块链和IPFS的溯源权限管理系统.pdf_第3页
第3页 / 共13页
文档描述:

《基于区块链和IPFS的溯源权限管理系统.pdf》由会员分享,可在线阅读,更多相关《基于区块链和IPFS的溯源权限管理系统.pdf(13页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010789126.7 (22)申请日 2020.08.07 (71)申请人 同济大学 地址 200092 上海市杨浦区四平路1239号 (72)发明人 李江峰禹祎凡张晨曦史扬 (74)专利代理机构 上海科盛知识产权代理有限 公司 31225 代理人 宣慧兰 (51)Int.Cl. G06F 16/182(2019.01) G06F 21/60(2013.01) G06F 21/64(2013.01) (54)发明名称 一种基于区块链和IPFS的溯源权限管理系 统 (57)。

2、摘要 本发明涉及一种基于区块链和IPFS的溯源 权限管理系统, 包括设于区块链上对区块链和星 际文件系统上的数据进行直接操作的对象模块、 记录权限信息的角色模块和由区块链执行的智 能合约, 智能合约包括对角色模块进行权限管理 的角色权限列表合约和查看对象模块的数据信 息的对象数据访问合约, 角色权限列表合约包括 角色模块拥有的所有权限以及相应权限的判别 单元组, 对象数据访问合约包括对象模块信息及 对应的操作接口, 通过角色权限列表合约对溯源 权限进行管理, 溯源权限对应的溯源数据以与星 际文件系统对应的哈希值的形式存储于区块链 中。 与现有技术相比, 本发明具有保证溯源系统 链条上企业的信息。

3、安全、 缓解区块链的存储压力 等优点。 权利要求书1页 说明书5页 附图6页 CN 112084162 A 2020.12.15 CN 112084162 A 1.一种基于区块链和IPFS的溯源权限管理系统, 包括设于区块链上对区块链和星际文 件系统上的数据进行直接操作的对象模块、 记录权限信息的角色模块和由区块链执行的智 能合约, 其特征在于, 所述智能合约包括对角色模块进行权限管理的角色权限列表合约和 查看对象模块的数据信息的对象数据访问合约, 所述角色权限列表合约包括角色模块拥有 的所有权限以及相应权限的判别单元组, 所述对象数据访问合约包括对象模块信息及对应 的操作接口, 通过所述角色。

4、权限列表合约对溯源权限进行管理, 所述溯源权限对应的溯源 数据以与星际文件系统对应的哈希值的形式存储于区块链中。 2.根据权利要求1所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所 述角色模块的单个权限包括对象数据访问合约的存储地址、 权限对应的操作和权限的失效 时间。 3.根据权利要求2所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所 述权限对应的操作包括读操作和写操作。 4.根据权利要求3所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所 述权限的判别单元组包括对角色模块的读操作进行判断的读操作判别单元和对角色模块 的写操作进行判断。

5、的写操作判别单元。 5.根据权利要求3所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所 述对象数据访问合约的操作接口包括读操作接口和写操作接口。 6.根据权利要求1所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所 述角色模块内权限的数量为1个或1个以上。 7.根据权利要求1所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所 述对象模块信息包括对象名称和产品单元。 8.根据权利要求7所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所 述产品单元包括产品批次和产品信息。 9.根据权利要求7所述的一种基于区块链和IPFS的溯。

6、源权限管理系统, 其特征在于, 所 述产品单元的数量为1个或1个以上。 10.根据权利要求1所述的一种基于区块链和IPFS的溯源权限管理系统, 其特征在于, 所述角色权限列表合约和对象数据访问合约之间的操作包括构造角色权限列表合约、 构造 对象数据访问合约、 访问授权、 读溯源数据和写溯源数据。 权利要求书 1/1 页 2 CN 112084162 A 2 一种基于区块链和IPFS的溯源权限管理系统 技术领域 0001 本发明涉及区块链技术领域, 尤其是涉及一种基于区块链和IPFS的溯源权限管理 系统。 背景技术 0002 近些年来产品质量和食品安全问题频发, 通过溯源系统来追踪产品的生产、 。

7、转运、 消费过程来保证产品安全问题引起了人们的关注。 现在有很多溯源系统可以对供应链中产 品的状态进行追踪, 但是这些系统都面临着一些数据篡改的风险。 原因就在于这些系统很 多都使用集中式的系统架构, 这让溯源数据很容易被改写。 这个时候可以保证数据不可篡 改的区块链技术吸引了研究者的目光, 很多基于区块链的溯源系统被开发出来。 但是这些 系统都缺少一定的访问控制, 这可能导致区块链上全公开的数据泄露企业的商业机密, 从 而带来很多不必要的损失, 所以很多研究者展开了对区块链权限管理方面的研究, 并且取 得了很多成果。 0003 基于区块链的访问控制技术研究主要包括的就是基于交易进行的权限管理。

8、和基 于智能合约进行访问控制这两个方面。 基于交易进行的权限管理主要是将区块链中的交易 与访问控制相结合, 而基于智能合约进行访问控制主要就是在智能合约中通过编程实现系 统资源的访问控制。 0004 基于交易进行的权限管理是通过区块链中的交易完成权限的创建与授予, 系统根 据区块链的不可篡改性和可追溯性得到一个权限转移的链条, 整个权限的管理都是公开透 明的, 并且利用共识机制获取区块链网络的信任。 比如Damiano机制定义了两种特殊的交 易, 一种用于给出权限新建与转移的策略并创建权限交易, 另一种就是根据策略实现用户 间权限的转移。 通过这两种交易, 基本的权限管理功能得以完成, 并且区。

9、块链中记载了整个 权限的转移过程, 可以溯源和审计。 0005 基于智能合约进行访问控制是在智能合约中定义一些访问控制的策略, 通过智能 合约的自动执行完成对用户访问资源的控制。 同样的, 因为智能合约存储在区块链中, 所以 这些策略会经过区块链网络的共识过程, 得到大家的认可。 比如MedRec框架通过定义三种 不同类型的智能合约, 完成了用户与权限的连接, 一种智能合约就是代表患者和信息提供 者的信息, 它指向了记录该用户权限列表的智能合约地址, 这也是第二种智能合约类型。 第 三种智能合约类型就是对权限的具体描述。 通过这三种智能合约的组合以及智能合约的自 动执行就可以完成基本的权限控制。

10、。 0006 这些现有的权限控制技术都基本实现了权限控制的功能, 但是也有着一定的缺 陷。 首先就是区块链共识机制上的缺陷, 由于是通过工作量证明(POW)、 权益证明(POS)等需 要大量的算力与时间的共识算法, 极大地限制了区块链的吞吐量, 即每分钟可以处理的交 易条数; 其次由于原始的数据信息存储在区块链上, 区块链账本被攻击会导致大量隐私数 据的泄露, 信息安全存在隐患; 并且由于数据直接存储在区块链上, 导致区块链节点存储区 块链副本需要较大的存储空间, 给节点的存储带来了更大的成本, 区块链的存储压力过大。 说明书 1/5 页 3 CN 112084162 A 3 发明内容 000。

11、7 本发明的目的就是为了克服上述现有技术存在的吞吐量较小、 信息安全存在隐 患、 存储压力过大的缺陷而提供一种基于区块链和IPFS的溯源权限管理系统。 0008 本发明的目的可以通过以下技术方案来实现: 0009 一种基于区块链和IPFS的溯源权限管理系统, 包括设于区块链上对区块链和星际 文件系统(IPFS)上的数据进行直接操作的对象模块、 记录权限信息的角色模块和由区块链 执行的智能合约, 所述智能合约包括对角色模块进行权限管理的角色权限列表合约和查看 对象模块的数字合约的对象数据访问合约, 所述角色权限列表合约包括角色模块拥有的所 有权限以及相应权限的判别单元组, 所述对象数据访问合约包。

12、括对象模块信息及对应的操 作接口, 通过所述角色权限列表合约对溯源权限进行管理, 所述溯源权限对应的溯源数据 以与星际文件系统(IPFS)对应的哈希值的形式存储于区块链中。 0010 所述溯源权限管理系统设有基于区块链的Role-Based Access Control(RBAC)框 架, 所述RBAC框架中设有多个事件和多个规则。 0011 所述角色模块的单个权限包括对象数据访问合约的存储地址、 权限对应的操作和 权限的失效时间。 0012 进一步地, 对象数据访问合约的存储地址表示对应角色模块具有存储地址指向的 对象的读操作或者写操作的权限。 0013 进一步地, 所述权限对应的操作包括读。

13、操作和写操作。 0014 进一步地, 所述权限的判别单元组包括对角色模块的读操作进行判断的读操作判 别单元和对角色模块的写操作进行判断的写操作判别单元。 0015 进一步地, 所述对象数据访问合约的操作接口包括读操作接口和写操作接口, 读 操作接口用于获取存储的对象模块对应的数据模型的具体信息, 写操作接口用于修改数据 模型的内容。 0016 所述角色模块内权限的数量为1个或1个以上。 0017 所述对象模块信息包括对象名称和产品单元。 0018 进一步地, 所述产品单元包括产品批次和产品信息。 0019 进一步地, 所述产品单元的数量为1个或1个以上。 0020 所述角色权限列表合约和对象数。

14、据访问合约之间的操作包括构造角色权限列表 合约、 构造对象数据访问合约、 访问授权、 读溯源数据和写溯源数据。 0021 与现有技术相比, 本发明具有以下有益效果: 0022 本发明通过设于区块链上的对象模块、 对区块链和星际文件系统(IPFS)进行操作 的角色模块和由区块链执行的智能合约来对溯源数据的权限进行管理, 其中区块链的不可 篡改性保证了溯源数据的可信性和可审计性, IPFS缓解了区块链的存储压力并且把原始数 据转换成了哈希存储在区块链上, 从而保证了溯源系统链条上企业的信息安全。 附图说明 0023 图1为本发明的结构示意图; 0024 图2为本发明构造角色权限列表合约的流程示意图。

15、; 0025 图3为本发明构造对象数据访问合约的流程示意图; 说明书 2/5 页 4 CN 112084162 A 4 0026 图4为本发明访问授权的流程示意图; 0027 图5为本发明读溯源数据的流程示意图; 0028 图6为本发明写溯源数据的流程示意图。 具体实施方式 0029 下面结合附图和具体实施例对本发明进行详细说明。 本实施例以本发明技术方案 为前提进行实施, 给出了详细的实施方式和具体的操作过程, 但本发明的保护范围不限于 下述的实施例。 0030 如图1所示, 一种基于区块链和IPFS的溯源权限管理系统, 包括设于区块链上对区 块链和星际文件系统(IPFS)上的数据进行直接操。

16、作的对象模块、 记录权限信息的角色模块 和由区块链执行的智能合约, 智能合约包括对角色模块进行权限管理的角色权限列表合约 和查看对象模块的数字合约的对象数据访问合约, 角色权限列表合约包括角色模块拥有的 所有权限以及相应权限的判别单元组, 对象数据访问合约包括对象模块信息及对应的操作 接口, 通过角色权限列表合约对溯源权限进行管理, 溯源权限对应的溯源数据以与星际文 件系统(IPFS)对应的哈希值的形式存储于区块链中。 0031 溯源权限管理系统设有基于区块链的Role-Based Access Control(RBAC)框架, RBAC框架中设有5个事件和3个规则, 5个事件包括操作、 数据。

17、实体、 权限、 职能和使用者, 3个 规则包括角色唯一性规则、 权限升级规则和访问关联性规则。 0032 角色模块的单个权限包括对象数据访问合约的存储地址、 权限对应的操作和权限 的失效时间。 0033 对象数据访问合约的存储地址表示对应角色模块具有存储地址指向的对象的读 操作或者写操作的权限。 0034 权限对应的操作包括读操作和写操作。 0035 权限的判别单元组包括对角色模块的读操作进行判断的读操作判别单元和对角 色模块的写操作进行判断的写操作判别单元。 0036 对象数据访问合约的操作接口包括读操作接口和写操作接口, 读操作接口用于获 取存储的对象模块对应的数据模型的具体信息, 写操作。

18、接口用于修改数据模型的内容。 0037 角色模块内权限的数量为1个或1个以上。 0038 对象模块信息包括对象名称和产品单元。 0039 产品单元包括产品批次和产品信息。 0040 产品单元的数量为1个或1个以上。 0041 角色权限列表合约和对象数据访问合约之间的操作包括构造角色权限列表合约、 构造对象数据访问合约、 访问授权、 读溯源数据和写溯源数据。 0042 如图2所示, 构造角色权限列表合约的步骤具体如下: 0043 步骤S101: 输入待添加的角色模块, 判断待添加的角色模块是否在角色模块集合 中, 若是转至步骤S102, 若否转至步骤S103; 0044 步骤S102: 通知申请。

19、者角色模块已经存在; 0045 步骤S103: 初始化角色权限列表合约, 并部署完成初始化的角色权限列表合约, 再 添加新角色模块到角色模块集合中; 说明书 3/5 页 5 CN 112084162 A 5 0046 步骤S104: 判断待添加角色模块的角色权限集合是否为空集, 若为空集则退出, 否 则转至步骤S105; 0047 步骤S105: 取出该角色模块的一条权限, 若该权限对应的对象模块不在对象模块 集里, 则添加该权限对应的对象模块到对象模块集里; 0048 步骤S106: 判断该权限是否在权限集中, 若否则添加该权限到权限集, 初始化权限 对应对象模块的对象数据访问合约, 部署完。

20、成初始化的对象数据访问合约, 添加该权限到 角色权限列表合约, 转至步骤S104。 0049 如图3所示, 构造对象数据访问合约的步骤具体如下: 0050 步骤S201: 输入待添加的对象模块、 该对象模块所属的角色模块以及角色模块具 备的操作该对象模块的权限, 判断待添加的对象模块所属的角色模块是否在角色模块集合 中, 若否转至步骤S202, 若是转至步骤S203; 0051 步骤S202: 通知申请者待添加的对象模块所属的角色模块不存在; 0052 步骤S203: 初始化角色权限列表合约, 并部署完成初始化的角色权限列表合约, 再 添加新角色模块到角色模块集合中; 0053 步骤S204:。

21、 判断待添加的对象模块是否在对象模块集合中, 若是则通知申请者待 添加的对象模块已经存在, 若否则转至步骤S205: 0054 步骤S205: 初始化对象数据访问合约, 并部署完成初始化的对象数据访问合约, 再 添加该对象模块到对象模块集合中, 添加对象模块的权限到权限集合中, 并添加对象模块 的权限到所属角色模块的权限集合中, 然后添加对象模块的权限到对象所属角色模块的角 色权限列表合约中。 0055 如图4所示, 访问授权的步骤具体如下: 0056 步骤S301: 输入对象模块的所属的拥有者角色模块, 进行权限请求的请求者角色 模块以及相应请求的权限, 判断拥有者角色模块和请求者角色模块是。

22、否都在角色模块集合 中, 若是则转至步骤S302, 否则通知申请者角色模块不存在; 0057 步骤S302: 判断请求的权限是否在权限集合中, 若否则通知申请者权限不存在, 若 是则转至步骤S303; 0058 步骤S303: 判断请求的权限对应的对象模块是否在对象模块集合中, 若否则通知 申请者对象模块不存在, 若是则转至步骤S304; 0059 步骤S304: 初始化对象数据访问合约, 获取拥有者角色模块的授权信息, 若拥有者 角色模块不同意授权, 通知申请者对象模块不存在, 若同意授权则转至步骤S305; 0060 步骤S305: 添加对象模块的权限到权限集合, 并添加请求的权限到请求者。

23、角色模 块的权限集合, 然后添加请求的权限到请求者角色模块的角色权限列表合约中。 0061 如图5所示, 读溯源数据的步骤具体如下: 0062 步骤S401: 输入需要进行操作的角色模块、 请求的权限和需要查询的数据, 判断需 要进行操作的角色模块是否在角色模块集合中, 若否则通知申请者角色模块不存在, 若是 则转至步骤S402; 0063 步骤S402: 判断请求的权限是否在权限集合中, 若否则通知申请者权限不存在, 若 是则转至步骤S403; 0064 步骤S403: 判断请求的权限对应的对象模块是否在对象模块集合中, 若否则通知 说明书 4/5 页 6 CN 112084162 A 6 。

24、申请者对象模块不存在, 若是则转至步骤S404; 0065 步骤S404: 判断需要进行操作的角色模块是否具有其请求的权限, 若是则转至步 骤S405, 若请求的权限不在角色模块的角色权限列表中或角色模块针对该对象模块的权限 不是读操作的权限, 则通知申请者不具备对应权限; 0066 步骤S405: 获取该权限对应对象模块的对象数据访问合约, 进行读操作获取区块 链上存储的需要查询的数据的哈希值, 根据该哈希值在IPFS上下载需要查询的数据, 并返 回需要查询的数据。 0067 如图6所示, 写溯源数据的步骤具体如下: 0068 步骤S501: 输入需要进行操作的角色模块、 请求的权限和需要修。

25、改的数据, 判断需 要进行操作的角色模块是否在角色模块集合中, 若否则通知申请者角色模块不存在, 若是 则转至步骤S502; 0069 步骤S502: 判断请求的权限是否在权限集合中, 若否则通知申请者权限不存在, 若 是则转至步骤S503; 0070 步骤S503: 判断请求的权限对应的对象模块是否在对象模块集合中, 若否则通知 申请者对象模块不存在, 若是则转至步骤S504; 0071 步骤S504: 判断需要进行操作的角色模块是否具有其请求的权限, 若是则转至步 骤S505, 若请求的权限不在角色模块的角色权限列表中或角色模块针对该对象模块的权限 不是写操作的权限, 则通知申请者不具备对。

26、应权限; 0072 步骤S505: 获取该权限对应对象模块的对象数据访问合约, 将需要修改的数据上 传到IPFS中, 接收IPFS返回的需要修改的数据对应的哈希值, 通过写操作将收到的哈希值 存入区块链的节点上。 0073 此外, 需要说明的是, 本说明书中所描述的具体实施例, 所取名称可以不同, 本说 明书中所描述的以上内容仅仅是对本发明结构所做的举例说明。 凡依据本发明构思的构 造、 特征及原理所做的等效变化或者简单变化, 均包括于本发明的保护范围内。 本发明所属 技术领域的技术人员可以对所描述的具体实例做各种各样的修改或补充或采用类似的方 法, 只要不偏离本发明的结构或者超越本权利要求书所定义的范围, 均应属于本发明的保 护范围。 说明书 5/5 页 7 CN 112084162 A 7 图1 说明书附图 1/6 页 8 CN 112084162 A 8 图2 说明书附图 2/6 页 9 CN 112084162 A 9 图3 说明书附图 3/6 页 10 CN 112084162 A 10 图4 说明书附图 4/6 页 11 CN 112084162 A 11 图5 说明书附图 5/6 页 12 CN 112084162 A 12 图6 说明书附图 6/6 页 13 CN 112084162 A 13 。

展开阅读全文
内容关键字: 基于 区块 IPFS 溯源 权限 管理 系统
关于本文
本文标题:基于区块链和IPFS的溯源权限管理系统.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/10175039.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1