佛萨奇2.0智能合约系统丨佛萨奇2.0智能合约系统开发(功能版)丨佛萨奇2.0智能合约现成源码案例开发

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 隐私计算网关调用系统合约把执行结果与签名传到链上。系统合约会从链上获取Enclave远程证明,从中提取出签名公钥,并对执行结果的签名进行验证,并从执行结果中提取隐私合约、链上数据部分,与区块链上的信息进行比对。如果这些验证都通过了,则系统合约执行成功,隐私合约的执行结果会被打包到区块中等待共识出块。

合约部署阶段
在初始化(远程证明)阶段将Enclave的远程证明写入区块后,就可以在链上进行隐私合约的部署了。v2.2.1_private_contract版本只支持rust语言开发的合约。

用户发起部署合约的请求,并把合约发送给隐私合约环境。

隐私计算网关在接收到用户部署请求后,把其中的合约送入Enclave的WASM中进行初始化。部分情况中,这一步还需要借助链上数据参与,则由隐私计算网关打包查询请求与链交互后,再在WASM中初始化合约。

Enclave初始化合约完成后,通知隐私计算网关。

若Enclave初始化合约成功,隐私计算网关会将合约通过链上系统合约存入区块链存证。链上的合约可用于合约逻辑的可靠性校验参照及合约的公共监管。

隐私计算网关通知用户部署合约的事件状态。

18.2.3. 合约调用阶段
用户可以随时发起对已经部署的隐私合约的调用请求。在调用隐私合约前,用户需要从区块链上获取远程证明并从中获得Enclave的加密公钥和签名验证公钥。隐私合约的调用流程如下:

用户向隐私合约环境发起调用隐私合约的请求。这个请求中包含要调用的隐私合约ID、涉及到的链上数据的key、用户准备的链外数据。(其中,链上的数据和用户准备的链外数据可能是加密的。我们会在之后的小章节中介绍加密数据的推荐处理方式。)

隐私计算网关根据用户调用合约的请求构造一个区块链请求,这个区块链请求用于从链上读取对应的隐私合约和链上数据。隐私计算网关将这个请求发送到区块链。

隐私计算网关从区块链上获取到隐私合约代码和需要的链上数据后,连同来自用户的链外数据一起,转发给Enclave。Enclave接收到隐私合约代码、区块链上数据、用户提供的链外数据后,

若数据是密文,使用加密私钥解密数据;

以传入Enclave的链上、链外数据为入参执行隐私合约;

按需要选择是否对执行结果加密;

打包执行结果,其中内容包括:隐私合约执行结果、隐私合约、链上及链外的入参数据;

使用签名私钥对打包好的执行结果签名。

Enclave将执行结果与签名返回到隐私计算网关。

隐私计算网关调用系统合约把执行结果与签名传到链上。系统合约会从链上获取Enclave远程证明,从中提取出签名公钥,并对执行结果的签名进行验证,并从执行结果中提取隐私合约、链上数据部分,与区块链上的信息进行比对。如果这些验证都通过了,则系统合约执行成功,隐私合约的执行结果会被打包到区块中等待共识出块。

相关文章
|
8月前
|
前端开发 安全 JavaScript
dapp智能合约系统开发解决方案/需求指南/案例步骤/源码程序
定义需求:明确系统的需求和功能。确定你的DApp将提供哪些服务,并了解相关的业务流程和规则。考虑如何实现这些功能,以及你打算使用的智能合约平台(如以太坊、EOS等)。
|
8月前
|
存储 安全 算法
DAPP智能合约项目系统开发原理|详情方案
智能合约是区块链的核心技术之一,它可以帮助我们实现自动化和去中心化微。
|
安全 区块链
DAPP智能合约链游系统开发源码部署示例
  //SPDX-License-Identifier:MIT   pragma solidity^0.8.0;   contract Game{   //游戏合约的名称   string public name;   //游戏玩家的地址   mapping(address=>bool)public players;   //玩家的分数
|
前端开发 安全 JavaScript
区块链智能合约dapp系统开发实现技术原理及详细/案例介绍/源码程序
  一般来说,区块链可按许可权限分为公有区块链、联盟区块链和私有区块链,其中,公有链面向全球所有用户,任何人都可以在其中读取数据和发送交易;联盟链由若干业务相关的机构共同参与管理,每个机构都运行着一个或多个节点,读写权限仅对联盟内的节点有限度地开放。
|
区块链 存储
DAPP智能合约系统开发详细技术及方案项目
区块的作用就是将不同时间阶段内的交易数据按照一定的格式和数量,打包成结构化数据,方便存储和管理。
|
JavaScript 前端开发 Go
区块链Dapp智能合约系统开发(开发功能)丨dapp/defi代币合约项目系统开发成熟案例版及源码部署
The following are important technical points in the development process of smart contract DApp:
|
存储 区块链 数据安全/隐私保护
USDToch(优多趣)智能合约系统开发实现技术方案/源码功能
那智能合约到底是什么呢?In short,a smart contract is a contract that uses Computer language instead of Legal writing to record terms and is automatically executed by a program.简换句话说,智能合约就是传统合约的数字化版本,跑在区块链网络上,由程序自动执行。
|
前端开发 测试技术 区块链
什么是SolaRoad索拉迪智能合约系统开发丨索拉迪SolaRoad系统开发(开发案例)及源码项目
部署智能合约,使用平台提供的工具将编写好的智能合约发布到区块链上;
|
存储 JavaScript 前端开发
Ptahdao/ProTradex智能合约开发稳定版,ProTradex/Ptahdao智能合约系统开发(开发方案)及源码详细
  智能合约dapp开发技术主要由以太坊区块链网络提供支持,该网络提供了一系列的智能合约技术,这些智能合约可以让开发者快速、安全地构建出功能强大的dapp。