[发明专利]一种基于可信环境的智能合约保护方法和系统有效
申请号: | 201710540117.2 | 申请日: | 2017-07-05 |
公开(公告)号: | CN107342858B | 公开(公告)日: | 2019-09-10 |
发明(设计)人: | 金海;代炜琦;邹德清;代春凯 | 申请(专利权)人: | 武汉凤链科技有限公司 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/32;H04L29/06;G06Q20/38;G06Q20/40 |
代理公司: | 武汉臻诚专利代理事务所(普通合伙) 42233 | 代理人: | 宋业斌 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 可信 环境 智能 合约 保护 方法 系统 | ||
1.一种基于可信环境的智能合约保护方法,其是应用在一种智能合约保护系统中,所述智能合约保护系统包括区块链节点、客户端和数据提供方,其特征在于,所述方法包括以下步骤:
(1)客户端创建智能合约,并在可信环境下对该智能合约进行哈希运算,使用对称加密算法对智能合约进行加密处理,并将加密处理后的智能合约部署在区块链上,以获得智能合约地址。
(2)区块链节点向客户端发送合约信息获取请求,客户端根据该信息获取请求与区块链节点进行可信环境认证,如果可信环境认证通过则进入步骤(3),否则过程结束。
(3)客户端在可信环境中使用区块链节点提供的一次性公钥对步骤(1)中哈希运算的结果、对称加密智能合约过程使用的密钥、以及智能合约地址作为合约信息进行非对称加密,并将加密结果传送到区块链节点;
(4)区块链节点在可信环境中使用与一次性公钥对应的一次性私钥对加密结果进行非对称解密,并使用非对称加密算法对解密得到的对称密钥以及哈希值进行加密,连同智能合约地址一同存储在本地合约信息存储池;
(5)区块链节点从客户端获取其需要执行的智能合约地址,根据该智能合约地址获取区块链中对应的智能合约密文、以及步骤(4)中本地存储的合约信息,在可信环境中对合约信息进行非对称解密,以得到哈希运算的结果以及加密智能合约时使用的对称密钥,使用该对称密钥解密智能合约密文,并对解密后的智能合约进行哈希运算,判断得到的结果与哈希运算的结果是否一致,如果一致则进入步骤(6),否则过程结束。
(6)区块链节点向数据提供方发送数据获取请求,数据提供方根据该数据获取请求与区块链节点进行可信环境认证,如果可信环境认证通过则进入步骤(7),否则过程结束。
(7)区块链节点将新的一次性公钥发送到数据提供方,数据提供方在可信环境中使用对称加密算法对数据获取请求对应的数据进行加密,使用新的一次性公钥对对称加密算法中的一次性对称密钥进行加密,并将加密后的数据和加密后的对称密钥发送到区块链节点;
(8)区块链节点将加密后的数据和加密后的对称密钥读入到可信环境中,并对可信环境的数据输出做出一定的限制,在可信环境中使用与一次性公钥对应的一次性私钥对加密后的一次性对称密钥进行非对称解密,使用解密后的一次性对称密钥对加密后的数据进行解密,并使用步骤(5)中解密后的智能合约对解密后的数据进行处理,以获得智能合约运算结果。
(9)区块链节点向客户端发送一次性对称密钥获取请求,客户端根据该一次性对称密钥获取请求与区块链节点进行可信环境认证,如果可信环境认证通过则进入步骤(10),否则过程结束。
(10)区块链节点将新的一次性公钥发送到客户端,客户端在可信环境中产生一次性对称密钥,使用该新的一次性公钥对一次性对称密钥进行加密,并将加密结果发送到区块链节点;
(11)区块链节点在可信环境中使用与一次性公钥对应的一次性私钥对加密后的一次性对称密钥进行非对称解密,使用得到的一次性对称密钥对步骤(8)中得到的智能合约运算结果进行加密,并将加密结果在区块链节点之间进行共识;
(12)客户端获取共识的结果,并在可信环境中使用步骤(10)中的一次性对称密钥对共识的结果进行解密。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉凤链科技有限公司,未经武汉凤链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710540117.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:分组方法及装置
- 下一篇:一种匿名认证方法及其应用