全网唯一标准王
(19)中华 人民共和国 国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202111428260.5 (22)申请日 2021.11.29 (71)申请人 之江实验室 地址 310023 浙江省杭州市余杭区文一西 路1818号人工智能小镇10号楼 申请人 北京理工大 学 (72)发明人 郭铁铮 张志威 王国仁  (74)专利代理 机构 杭州浙科专利事务所(普通 合伙) 33213 代理人 杨小凡 (51)Int.Cl. H04L 67/1074(2022.01) H04L 67/1097(2022.01) H04L 9/40(2022.01) H04L 9/32(2006.01) (54)发明名称 一种基于SGX的链上链下混合共识方法及系 统 (57)摘要 本发明公开了一种基于SGX的链上链下混合 共识方法及系统, 方法包括: S1, 事务提交阶段; S2, 事务执行阶段; S3, 结果上链阶段; 系统包括: 客户端、 区块链平台、 SGX服务器集群以及链下数 据库; 客户端可向区块链发起SGX事务与提交事 务结果; 区块链将SGX事务及其结果上链, 同时根 据事务需求将数据与智能合约发送到SGX服务器 集群; 服务器集群通过访问数据库获得链下数据 并构建安全区执行智能合约与共识; 链下数据库 保存数据供应商的机密或大规模 数据。 本发明通 过SGX连接链上链下数据存储, 实现链上链下的 混合共识, 并通过SGX保证了数据与执行的机密 性、 完整性。 权利要求书2页 说明书6页 附图4页 CN 114301928 A 2022.04.08 CN 114301928 A 1.一种基于SGX的链上链下混合共识方法, 其特 征在于包括如下步骤: S1, 事务提交阶段, 包括如下步骤: S11, 客户端构建区块链事务并发送到区块链, 区块链事务包 含普通事务和SGX事务; S12, 区块链对普通事务进行模拟执行, 不对S GX事务模拟执行, 将区块链事务打包到区 块; S13, 区块链判断区块中是否有SGX事务, 若有, 则从区块链中查询SGX事务相关信息以 及智能合约, 相关信息包含链上数据, 将SGX事务、 SGX事务相关信息、 智能合约发送到SGX服 务器集群; S2, 事务执 行阶段, 包括如下步骤: S21, SGX服 务器集群接收SGX事务、 SGX事务相关信息、 智能合约; S22, SGX服务器创建安全区并将智能合约部署在安全区内, 根据SGX事务及其相关信 息, 查询相应链下数据库并获得链下数据, 将链下数据与 链上数据放入安全区, 在安全区内 利用智能合约, 对链上 数据、 链下 数据进行处 理, 执行SGX事务; S23, SGX服 务器集群内, 对SGX事务的执 行结果进行共识; S24, 共识通过后, SGX服务器修改链下数据库状态, 将执行结果发送到客户端; 若共识 失败, 则将共识失败的信息发送到客户端; S3, 结果上链阶段, 包括如下步骤: S31, 客户端获取 执行结果, 并发送到区块链, 再发送到客户端; S32, 客户端构建已执行的SGX事务, 提交到区块链, 并根据其执行结果修改区块链状 态。 2.根据权利要求1所述的一种基于SGX的链上链下混合共识方法, 其特征在于所述S13 中, 区块链的背书节 点接收区块链事务, 并对普通事务进 行模拟执行、 签名操作, 不对SGX事 务模拟执行, 对SGX事务进 行签名, 客户端收集背书节 点返回的签名, 在满足背书 条件后, 将 区块链事务发送到排序节点, 排序节点将区块链事务打包到区块并发送到验证节点, 验证 节点对SGX事务进行判断、 查询, 将SGX事务、 SGX事务相关信息、 智能合约, 发送到SGX服务器 集群; 所述S31中, 执 行结果发送到区块链的背 书节点, 背 书节点直接签名并发送到客户端。 3.根据权利要求1所述的一种基于SGX的链上链下混合共识方法, 其特征在于所述S13 的区块中, 普通事务与SGX事务共享 成块规则, 但分别打包, 将未执行的SGX事务按时间戳顺 序排序并保存在区块尾部 。 4.根据权利要求1所述的一种基于SGX的链上链下混合共识方法, 其特征在于所述S13 中的共享成块 规则, 是指在区块链中两种事务共享 最大出块时长以及区块 最大事务数。 5.根据权利要求1所述的一种基于SGX的链上链下混合共识方法, 其特征在于所述S13 中, SGX事务、 SGX事务相关信息、 智能合约的通信包, 并发送到SGX服务器集群, 通信包按 SGX事务的时间戳顺序生成; 所述S21中, SGX服务器集群根据通信包的时间戳顺序, 插入事 务队列, 并按时间戳 顺序执行队列中的事务。 6.根据权利要求1所述的一种基于SGX的链上链下混合共识方法, 其特征在于所述SGX 服务器收到新的请求后, 生成当前服务器状态记录并返回区块链, 区块链上维护了一个包 含SGX服务器集群中SGX服务器状态的表, 用于将SGX事务发送到SGX服务器集群以及查询 SGX服务器状态, SGX服 务器状态包括 IP地址、 拥有者、 所属组织信息以及当前 是否可用。权 利 要 求 书 1/2 页 2 CN 114301928 A 27.根据权利要求1所述的一种基于SGX的链上链下混合共识方法, 其特征在于所述S32 中, 客户端将构建的已执行的SGX事务, 提交到区块链并根据其执行结果中附加的链上读写 集修改区块链状态。 8.根据权利要求1所述的一种基于SGX的链上链下混合共识方法, 其特征在于所述客户 端维护一对公钥与私钥, 所述S2 4中, 将执行结果通过客户端提供的公钥进 行加密并发送到 客户端, 所述S31中, 客户端通过私钥解密执 行结果, 并发送到区块链。 9.一种基于SGX的链上链下混合共识系统, 包括客户端、 区块链、 SGX服务器集群及链下 数据库, 其特征在于所述客户端包括请求构 造模块、 结果 获取模块, 所述区块链包括事务上 链模块、 请求提交模块, 所述SGX服务器集群包括数据获取模块、 事务计算模块、 结果共识模 块、 结果返回模块; 所述请求构造模块, 用于构建SGX事务, 并将SGX事务发送到区块链; 所述结果获取模块, 获取SGX执行结果, 将需要上链的部分重新构建SGX事务发送到区 块链; 所述事务上链模块, 对未执行的SGX事务直接跳过执行阶段, 并打包成块; 对已执行的 SGX事务, 通过从客户端获取的执 行结果, 修改区块链状态; 所述请求提交模块, 根据未执行S GX事务, 查询SGX事务相关信息以及智能合约, 相关信 息包含链上数据, 并将SGX事务、 SGX事务相关信息、 智能合约, 发送到SGX服 务器集群; 所述数据获取模块, 接收SGX事务、 SGX事务相关信息、 智能合约, 并对链下数据库进行 访问与查询, 获得链下 数据; 所述事务计算模块, SGX服务器基于SGX扩展指令集生成可信执行空间, 将智能合约部 署在可信执行 空间中, 并将链上数据、 链下数据传 入可信执行 空间, 在可信执行 空间内执行 SGX事务; 所述结果共识模块, 在集群内部对执 行结果进行共识; 所述结果返回模块, 将共识通过后的执 行结果发送到客户端; 所述链下 数据库, 存放链下 数据, 通过SGX服 务器对其进行访问。 10.根据权利要求9所述的一种基于SGX的链上链下混合共识系统, 其特征在于所述请 求构造模块构造的区块链事务包括普通事务和SGX事务, 所述事务上链模块对普通事务进 行模拟执 行, 并与SGX事务分别打包到区块。权 利 要 求 书 2/2 页 3 CN 114301928 A 3

.PDF文档 专利 一种基于SGX的链上链下混合共识方法及系统

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