全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210719360.1 (22)申请日 2022.06.23 (71)申请人 北京链道科技有限公司 地址 100015 北京市朝阳区酒仙桥北路甲 10号院10 6号楼1至7层101内2层207室 (72)发明人 丘志杰 蔡湘伟 陈虹 王行行  徐竟浩  (74)专利代理 机构 成都行之智 信知识产权代理 有限公司 5125 6 专利代理师 温利平 (51)Int.Cl. H04L 9/40(2022.01) H04L 9/32(2006.01) (54)发明名称 区块链智能合约的访问控制方法 (57)摘要 本发明公开了一种区块链智能合约 的访问 控制方法, 在区块链节点中设置用户 系统合约, 通过用户系统合约实现用户注册并对用户属性 进行管理, 根据实际需要编写智能合约并部署在 区块链节 点上, 智能合约中编写基于用户属性信 息的访问控制判断方法, 区块链节 点在接收到业 务系统发送的交易请求后, 根据交易请求中携带 的用户信息进行用户身份验证, 验证通过后由目 标智能合约进行用户鉴权, 鉴权通过后目标智能 合约对交易请求进行执行, 如果用户身份验证或 用户鉴权未通过则终止交易并将此交易标记为 无效交易。 本发 明将访问控制判断方法放置在目 标智能合约端, 提供灵活的访问控制, 在复杂的 业务场景便于区块链和业务系统间的对接和 需 求实现。 权利要求书1页 说明书4页 附图2页 CN 115208637 A 2022.10.18 CN 115208637 A 1.一种区块链智能合约的访问控制方法, 其特 征在于, 包括以下步骤: S1: 在区块链节点中设置用户系统合约, 通过用户系统合约实现用户注册并对用户属 性进行管理, 在用户注册时设备用户的唯一标识、 用户公钥以及用户的属性信息, 业务管 理 员设置用户属性权限, 用户的属性信息通过系统合约调用和节点共识流程最 终存储在区块 链账本上; S2: 根据实际需要编写智能合约并部署在区块链节点上, 智能合约中编写基于用户属 性信息的访问控制判断方法; S3: 区块链节点在接收到业务系统发送的交易请求后, 解析交易请求中携带的用户唯 一标识, 以及用户私钥对交易请求数据的签名; S4: 区块链节点调用用户系统合约对用户身份进行验证, 具体方法为: 用户系统合约根 据用户唯一标识, 获取用户注册的公钥并采用公钥对交易请求数据的签名进行验证, 如果 验证未通过, 进入步骤S7, 如果验证通过, 则获取该用户的属性信息并将属性信息整合至交 易请求中, 将整合后的交易请求发送至目标智能合约, 进入步骤S5; S5: 目标智能合约接收到整合交易请求后, 进行调用鉴权, 具体方法如 下: 合约端SDK从 整合交易请求中提取出用户的属性信息, 然后采用目标合约中编写的访问控制判断方法根 据用户属性信息对用户进行鉴权, 如果鉴权不通过, 进入步骤S7, 如果鉴权通过, 则进入步 骤S6; S6: 目标智能合约对交易请求进行执行, 将执行结果反馈至区块链节点, 进行全网共识 并记录至各区块链 节点的账本中; S7: 区块链节点终止交易终止, 将此交易标记为无效交易, 然后向业务系统反馈提示消 息。 2.根据权利要求1所述的区块链智能合约的访问控制方法, 其特征在于, 所述步骤S1中 用户属性的管理操作包括: 1)用户注册: 业务管理员为新用户进行注册, 注册携带用户的唯一标识、 用户公钥以及 用户的属性信息; 2)用户属性添加: 业务管理员指定用户唯一标识, 指定属性的key值和value值, 向指定 用户添加此 条key‑value属性; 3)用户属性更新: 业务管理员指定用户唯一标识, 指定属性的key值和value值, 向指定 用户更新该key值的value值; 4)用户属性删除: 业务管理员指定用户唯一标识, 指定属性的key值将指定用户的指定 key属性删除。权 利 要 求 书 1/1 页 2 CN 115208637 A 2区块链智能合约的访 问控制方 法 技术领域 [0001]本发明属于区块链技术领域, 更为具体地讲, 涉及一种区块链智能合约的访问控 制方法。 背景技术 [0002]在区块链的实际应用中, 时常需要对接外部业务系统。 图1是区块链对接外部业务 系统的场景示意图。 如图1所示, 业务系统承载了实际场景的业务逻辑, 如溯源、 存证、 各类 交易等。 区块链节点可以是区块链P2P网络中任意的一个节点, 每个节点 都存储了完整的区 块链账本, 且各自管控了网络中已部署、 启动的智能合约。 智能合约是外部业务系统与区块 链账本交互的入口, 来自业务系统的请求会由区块链节点根据请求携带的调用合约的名 称、 版本、 方法名、 参数等信息, 转发至对应的合约中调用指定方法以实现业 务逻辑。 [0003]随着区块链的推广及应用, 区块链系统所对接 的业务系统愈加复杂。 智能合约作 为区块链系统中承载业务的关键模块, 除了提供图灵完备 的编程能力外, 还需要提供灵活 可靠的访问控制 机制, 以支持日渐复杂的实际业务需求。 由于外部系统所使用的权限系统 模式众多, 区块链系统需要能够灵活支持各类的访问控制 。 智能合约作为外部系统与区块 链进行数据 交互的入口,提供了可编写的逻辑调用能力,使得外部系统可对链上数据进行 查询与修改操作。 目前对于智能合约的访问控制一部分是对合约本身的调用权限进行管 控, 由于控制的粒度是整个合约而非某个具体方法, 在复杂场景下缺少灵活性。 另一部 分是 将鉴权过程放在系统中内置的合约 或直接由节点完成, 而非在目标调用合约中完成, 因此 合约开发阶段 无法明确方法的访问控制规则, 增 加了额外的规则指定流 程。 发明内容 [0004]本发明的目的在于克服现有技术的不足, 提供一种区块链智能合约的访问控制方 法, 将访问控制判断方法放置在目标智能合约端, 提供灵活的访问控制, 在复杂的业务场景 便于区块链和业 务系统间的对接和需求实现。 [0005]为了实现上述发明目的, 本发明区块链智能合约的访问控制方法包括以下步骤: [0006]S1: 在区块链节点中设置用户系统合约, 通过用户系统合约实现用户注册并对用 户属性进 行管理, 在用户注册时设备用户的唯一标识、 用户公钥以及用户的属性信息, 业务 管理员设置用户属性权限, 用户的属性信息通过系统合约调用和节点共识 流程最终存储在 区块链账本上; [0007]S2: 根据实际需要编写智能合约并部署在区块链节点上, 智能合约中编写基于用 户属性信息的访问控制判断方法; [0008]S3: 区块链节点在接收到业务系统发送的交易请求后, 解析交易请求中携带的用 户唯一标识, 以及用户私钥对交易请求数据的签名; [0009]S4: 区块链节点调用用户系统合约对用户身份进行验证, 具体方法为: 用户系统合 约根据用户唯一标识, 获取用户注册的公钥并采用公钥对交易请求数据的签名进行验证,说 明 书 1/4 页 3 CN 115208637 A 3

.PDF文档 专利 区块链智能合约的访问控制方法

文档预览
中文文档 8 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共8页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 区块链智能合约的访问控制方法 第 1 页 专利 区块链智能合约的访问控制方法 第 2 页 专利 区块链智能合约的访问控制方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 08:18:43上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。