(19)国家知识产权局
(12)发明 专利
(10)授权公告 号
(45)授权公告日
(21)申请 号 202211244143.8
(22)申请日 2022.10.12
(65)同一申请的已公布的文献号
申请公布号 CN 115309433 A
(43)申请公布日 2022.11.08
(73)专利权人 江苏移动信息系统集成有限公司
地址 210013 江苏省南京市虎 踞路59号
(72)发明人 高瑞芳 罗昌焕 周晓阳 吕明
刘旭 包岩 俞璐璐
(74)专利代理 机构 南京泰普专利代理事务所
(普通合伙) 32360
专利代理师 张磊
(51)Int.Cl.
G06F 8/65(2018.01)
G06F 9/54(2006.01)H04L 9/40(2022.01)
H04L 67/10(2022.01)
(56)对比文件
CN 110348202 A,2019.10.18
CN 110334525 A,2019.10.15
WO 2021/132454 A1,2021.07.01
审查员 刘升
(54)发明名称
基于区块链的角色权限管理智能合约升级
方法及系统
(57)摘要
本发明公开基于区块链的角色权限管理智
能合约升级方法及系统, 属于区块链的技术领
域。 至少包括以下步骤: 创建角色管理逻辑智能
合约、 创建数据逻辑智 能合约、 创建业务逻辑智
能合约、 按照节点部署到区块链以及创建第三方
业务智能合约; 引入至少四种角色账户, 对每个
角色赋予对应的职责和权限, 并将每个角色的授
权和管理操作以代码的方式编程到智能合约中
提供接口给第三方智能合约外部调用, 从而保证
了区块链上数据存储和查询安全可控、 可信共
享。 解决了区块链上的数据风险, 保护了联盟链
机构不受攻击 。
权利要求书2页 说明书7页 附图2页
CN 115309433 B
2022.12.20
CN 115309433 B
1.基于区块链的角色权限管理智能合约升级方法, 其特 征在于, 至少包括以下步骤:
创建角色管理逻辑智能合约: 基于业务需求创建角色账户最小集, 同时建立角色账户
最小集内部元素相互之间的权限关系; 所述角色账户最小集内至少包括: 超级 管理员账户、
机构委员会账户、 授权 机构账户和普通账户; 所述权限关系如下:
超级管理员账户具有最高权限, 被设置为基于业务需求指定主体机构和对应的授权机
构, 并定义为机构委员会账户和授权机构账户; 对机构委员会账户和授权机构账户赋予操
作权限的赋予、 修改链上合约地址;
机构委员会账户的权限为: 对其名下的主体机构、 与主体机构相对应的授权机构账户
赋予操作权限、 启动/禁用;
授权机构账户的权限为: 对其名下的授权 机构赋予操作权限、 启动/禁用;
将所述角色管理逻辑智能合约采用分层式设计, 分为业务逻辑层合约和数据处理层合
约; 所述业务逻辑层合约为第三方智能合约的业务需求的处理接口, 基于所述业务需求生
成合约调用函数, 对指定角色账户赋予对应的权限、 以及账户地址; 将合约调用函数以编译
代码的形式编译到处理接口上, 得到对应的链上合约地址; 所述数据 处理层合约基于合约
调用函数定义数据结构, 所述数据结构用于存 储、 查询合约调用函数;
当业务需求发生变更时, 处理接口基于变更后的供业务需求更新合约调用函数, 基于
更新合约调用函数以编译代码的形式再次编译到对应处理接口上, 获取更新后的链上合约
地址; 第三方智能合约传入更新后的链上合约地址 。
2.根据权利要求1所述的基于区块链的角色权限管理智能合约升级方法, 其特征在于,
生成合约调用函数时还包括: 创建权限检查函数; 所述权限检查函数基于账户地址和所需
的操作项目常量判断账户地址是否具有执行对应操作项目的操作权限; 如果具备权限, 则
允许合约调用函数继续执行, 如果不具备权限, 则禁止合约调用函数执行, 并产生合约调用
函数非法调用事 件广播;
其中所述账户地址为原 始用户地址, 表示 为tx.origi n。
3.根据权利要求1所述的基于区块链的角色权限管理智能合约升级方法, 其特征在于,
所述合约调用函数 由超级管理员账户生成, 所述合约调用函数至少包括: 对角色账户最小
集内的角色赋予角色操作函数, 对非角色账户最小集的角色赋予增加/删除角色函数, 并配
置对应的角色权限函数。
4.根据权利要求3所述的基于区块链的角色权限管理智能合约升级方法, 其特征在于,
所述角色操作函数至少包括: 关于机构委员会账户的操作函数、 关于授权机构账户的操作
函数;
所述机构委员会账户的操作函数至少包括: 判断是否为机构委员会账户函数、 删除机
构委员会账户函数、 添加机构委员会账户函数、 以及获取机构委员会账户数据数组长度函
数和获取机构委员会账户地址索引函数。
5.根据权利要求4所述的基于区块链的角色权限管理智能合约升级方法, 其特征在于,
所述授权机构账户的操作函数至少包括: 判断是否为授权机构账户函数、 添加授权机账户
函数、 删除授权机构账户函数以及获取授权机构账户数据长度函数、 返回授权机构数据数
组长度。
6.根据权利要求3所述的基于区块链的角色权限管理智能合约升级方法, 其特征在于,权 利 要 求 书 1/2 页
2
CN 115309433 B
2若业务所需的账户不属于当前 的角色账户集, 则超级管理员账户生成添加角色函数, 使业
务所需的账户以角色的形式添加到角色账户集; 并输入相对应的账户地址、 赋予角色权限
常量;
若当前的角色账户集中存在业务所需以外的账户, 则超级管理员账户生成删除角色函
数, 使业务所需以外的账户、 对应的账户地址和角色权限常量从当前的角色账户集中删除。
7.根据权利要求1所述的基于区块链的角色权限管理智能合约升级方法, 其特征在于,
所述普通账户为区块链上的普通外 部账户, 由公钥私钥对组成。
8.基于区块链的角色权限管理智能合约升级系统, 用于实现如权利要求1至7中任意一
项所述的智能合约升级方法, 其特 征在于, 包括:
第一模块, 被设置为创建角色管理逻辑智能合约: 基于业务需求创建角色账户最小集,
同时建立角色账户最小集内部元素相互之间的权限关系; 所述角色账户最小集内至少包
括: 超级管理员账户、 机构委员会账户、 授权 机构账户和普通账户; 所述权限关系如下:
超级管理员账户具有最高权限, 被设置为基于业务需求指定主体机构和对应的授权机
构, 并定义为机构委员会账户和授权机构账户; 对机构委员会账户和授权机构账户赋予操
作权限的赋予、 修改链上合约地址;
机构委员会账户的权限为: 对其名下的主体机构、 与主体机构相对应的授权机构账户
赋予操作权限、 启动/禁用;
授权机构账户的权限为: 对其名下的授权 机构赋予操作权限、 启动/禁用;
第二模块, 被设置为将所述角色管理逻辑智能合约采用分层式设计, 分为业务逻辑层
合约和数据 处理层合约; 所述业务逻辑层合约为第三方智能合约的业务需求的处理接口,
基于所述业务需求生成合约调用函数, 对指 定角色账户赋予对应的权限、 以及账户地址; 将
合约调用函数以编译代码的形式编译到处理接口上, 得到对应的链上合约地址; 所述数据
处理层合约基于合约调用函数定义数据结构, 所述数据结构用于存 储、 查询合约调用函数;
第三模块, 被设置为当业务需求发生变更时, 处理接口基于变更后的供业务需求更新
合约调用函数, 基于更新合约调用函数以编译代码的形式再次编译到对应处理接口上, 获
取更新后的链上合约地址; 第三方智能合约传入更新后的链上合约地址 。权 利 要 求 书 2/2 页
3
CN 115309433 B
3
专利 基于区块链的角色权限管理智能合约升级方法及系统
文档预览
中文文档
12 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共12页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 16:42:24上传分享