Aleo隐私智能合约编程__第四章__部署进链上Aleo Testnet3网络

这篇具有很好参考价值的文章主要介绍了Aleo隐私智能合约编程__第四章__部署进链上Aleo Testnet3网络。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • 相关资料链接
    • 官方部署文档 https://developer.aleo.org/testnet/getting_started/deploy_execute_demo/
    • 查看链上所有的程序 https://explorer.hamp.app/programs
    • 测试网领水 https://twitter.com/AleoFaucet
    • Aleo SDK在线工具 https://aleo.tools/
    • snarkOS源码 https://github.com/AleoHQ/snarkOS
    • leo源码 https://github.com/AleoHQ/leo
    • Aleo CSDN http://t.csdn.cn/BUUAx

安装相关软件

  • 安装cargo、snarkos、leo
# 1. 下载安装Rust工具链管理器(内涵Rust编译工具)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
# 查看是否安装成功,未输出找不到此命令则表示安装成功
cargo --version
# 2. 下载安装aleo隐私应用部署工具
git clone https://github.com/AleoHQ/snarkOS.git --depth 1
cd snarkOS
cargo install --path . --locked
# 查看是否安装成功,未输出找不到此命令则表示安装成功
# 3. 下载安装aleo隐私应用编译工具
git clone https://github.com/AleoHQ/leo --depth 1
cd leo
cargo install --path . --locked
# 查看是否安装成功,未输出找不到此命令则表示安装成功
leo

账户数据准备

  1. 生成Aleo项目账户

    • 通过 https://aleo.tools/ 网站 Account 栏目的 Generate按钮生成Aleo项目账户,然后将 Private Key、View Key、Address 记录下来,在这里我们把这三个值分别命名为 private_key , view_key , wallet_dddress . 如下图所示。
    • 把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源
  2. 领水,在自己的推特账户上发表如下信息(填写自己的Aleo账户地址),从而获得测试网Gas,用于之后的测试网链上部署隐私应用的Gas。 如下图所示。

    @AleoFaucet
    
    Please send 10 credits to address Aleo账户地址
    

    把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源

  3. 验证是否领水成功

    • 等待5分钟后查看自己是否领水成功,领水成功的话,如下图红框内所示会得到 @AleoFaucet 的一个引用,然后点击红框内的内容。如下图所示。
    • 把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源
  4. 点击上图红框内内容后,就会跳转到下图,然后点击下图红框内的内容。如下图所示。

    • 把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源
  5. 点击上图红框内链接后,会返回一个Json字符串,如下图所示。将第三个value的内容复制下来,在这里我们称呼这个内容为 record_ciphertext ,是我们加密后的链上数据的记录。或者按下面的方式将Json字符串进行格式化后再进行复制。如下图所示。

    • 把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源
  6. 复制上图的 Json字符串通到 https://json.cn 网站进行格式化,或者安装谷歌插件 https://chrome.google.com/webstore/detail/json-beautifier-editor/lpopeocbeepakdnipejhlpcmifheolpl 后再打开红框内的链接即可得到如下图所示格式化后的数据。 将下图黄色背景的内容复制下来,在这里我们称呼这个内容为 record_ciphertext ,是我们加密后的链上数据的记录。如下图所示。

    • 把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源
  7. 游览器上打开 https://aleo.tools/ ,选择 Record 栏目,然后将 record_ciphertext 数据复制粘贴到 Record (Ciphertext) 方框内,然后在View Key方框里输入自己的 view_key 的值, 网站就会自动解密得到 Record (Plaintext) 方框内的内容。在这里我们将Record (Plaintext) 方框内的内容称为 record_plaintext ,是我们解密后的链上数据的记录。如下图所示。

    • 把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源
  8. 记录好 private_key , wallet_dddress , record_plaintext 三个值,在接来下部署隐私应用的时候需要用到。文章来源地址https://www.toymoban.com/news/detail-824431.html

部署隐私应用

wallet_dddress="" # 填入自己的Aleo账户地址
private_key="" # 填入自己的Aleo账户的私钥

app_name="helloworld_${wallet_dddress:0-6:6}" # 设置隐私应用名称,需要在Aleo网络里全网唯一,不能重名。因此我们截取Aleo账户地址的部分字符串加入隐私应用名称内,以防止重名。
leo new "${app_name}" # 创建一个隐私应用
cd "${app_name}" && leo run && cd - # 进入隐私应用目录,进行编译,返回上层目录

# 定义 Record 的明文
record_plaintext="{
  owner: aleo1xvlh6eyfxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.private,
  gates: 10000000u64.private,
  _nonce: 41689884563743409008191298xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxgroup.public
}"

# 执行部署操作
snarkos developer deploy "${app_name}.aleo" --private-key "${private_key}" --query "https://vm.aleo.org/api" --path "./${app_name}/build/" --broadcast "https://vm.aleo.org/api/testnet3/transaction/broadcast" --fee 600000 --record "${record_plaintext}" 
# 如下所示的日志,表示部署成功。
# 将交易ID记录下来(重要,查询交易记录以及进行进行下一次交易时都可能需要用到),例如 at1j97a8qmy6k2udaw9h9w34nu7wwahpkljnvvfpjvklht5uzwgsv8ss30g43 。
📦 Creating deployment transaction for 'helloworld_gk5x0t.aleo'...

✅ Successfully deployed 'helloworld_gk5x0t.aleo' to https://vm.aleo.org/api/testnet3/transaction/broadcast.
at1j97a8qmy6k2udaw9h9w34nu7wwahpkljnvvfpjvklht5uzwgsv8ss30g43
  • 通过网站 https://explorer.hamp.app/programs 查看被部署进网络里的隐私应用。
  • 输入 交易ID 进行查询,例如我这里部署成功后的交易ID为 at1j97a8qmy6k2udaw9h9w34nu7wwahpkljnvvfpjvklht5uzwgsv8ss30g43 。查询结果如下图所示。
    把snarkos软件升级到测试网3分支,Aleo,区块链,区块链,零知识证明,rust,开源

到了这里,关于Aleo隐私智能合约编程__第四章__部署进链上Aleo Testnet3网络的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 智能寻迹避障清障机器人设计(第四章)

            在Arduino出现之前,意大利一所高科技技术学校的学生常常抱怨市面上的微控处理器基本上操作复杂,性价比低,无法同时适应多种复杂多变的微传感器。至此,2005年的某一天,该校的老师马西莫·班兹和来这所学校研究的学者大卫·卡泰尔斯一起讨论了现下微控制

    2024年02月03日
    浏览(43)
  • 曲线艺术编程 coding curves 第四章 利萨茹曲线(Lissajous Curves)

    原作:Keith Peters https://www.bit-101.com/blog/2022/11/coding-curves/ 译者:池中物王二狗(sheldon) blog: http://cnblogs.com/willian/ 源码:github: https://github.com/willian12345/coding-curves 曲线艺术编程系列第四章 确保您已知晓了最初一章中我们对示例代码的约定。 利萨茹曲线一直以来是我最喜欢的技术

    2024年02月07日
    浏览(33)
  • 中文编程入门(Lua5.4.6中文版)第四章 Lua 流程控制

    Lua 编程语言中的流程控制就像推塔游戏战场上的智谋队长,挥舞着策略之剑,根据战场局势(条件语句)的演变,精准地指挥团队成员执行或猛攻或防守的操作。在这场代码与逻辑的对战中,当判定条件亮起 “true” 的胜利信号时,指定的战术动作会被果断地施展,类似“全

    2024年03月19日
    浏览(47)
  • 第四章 Linux网络编程 4.1 网络结构模式 4.2MAC地址、IP地址、端口

    C/S结构 简介 服务器 - 客户机 ,即 Client - Server(C/S)结构。C/S 结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。客户机是因特网上访问别人信息的机器,服务器则是提供信息供人访问的计算机。 客户机通过局域网与服务器相连,接受用户

    2024年02月08日
    浏览(45)
  • 《Linux操作系统编程》第四章 屏幕编程器vi : 了解屏幕编辑器vi的概述和基本操作命令

    🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 🌊 《IDEA开发秘籍》学会IDEA常用操作,工作效率翻倍~💐 🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬

    2024年02月11日
    浏览(64)
  • 【云计算与虚拟化】第四章 实验二 vCenter Server网络部署及基本操作

    实验二    vCenter Server网络部署及基本操作 一、实验内容 通过vSphere client 客户端登陆vCenter服务器,为新建的虚拟机Windows7 激活,并修改计算机名为姓名拼音的首字母-学号 通过vSphere client 客户端登陆vCenter服务器,将虚拟机windows7的cpu和内存设置为可以热插拔 通过vSphere clie

    2024年04月22日
    浏览(34)
  • 【 Linux命令行与Shell脚本编程】第四章 进程管理 ,磁盘统计信息,挂载新磁盘,数据排序,数据归档

    第四章 更多命令 进程管理 磁盘统计信息 挂载新磁盘 数据排序 数据归档 4.1,监测程序 4.1.1,ps 探查进程 4.1.2,top 实时监测进程 4.1.3,kill pkill 结束进程 1,kill 命令 2,pkill 命令 4.2,检测磁盘空间 4.2.1,mount umount挂载存储设备 1. mount 命令 其他选项 2,umount 命令 4.2.2, df 命令 4.2.3, du 命令

    2023年04月24日
    浏览(49)
  • 第四章 磁盘设备

    第四章 磁盘设备 一、 关于挂装的基本常识 •与 DOS/Windows 采用驱动器标识符(A:、B:、C:)使用磁 盘设备的方法不同。Linux 采用单根目录树管理全部文件系 统。磁盘设备必须挂载到系统目录树上才能使用。 (Linux 启动过程已完成对/、/ boot 和/swap 三个分区的挂装) •所谓挂

    2024年02月03日
    浏览(45)
  • 第四章 搜索功能

    指定返回的字段 在ES中,通过_source子句可以设定返回结果的字段。_source指向一个JSON数组,数组中的元素是希望返回的字段名称。 例如,通过source指定查询字段 结果计数 给前端传递搜索匹配结果的文档条数,即需要对搜索结果进行计数。ES提供了_count API功能,在该API中,用

    2023年04月08日
    浏览(40)
  • 第四章 Text

    在本章中,您将学习如何在页面上绘制文本。 绘图文本是 PDF 图形中最复杂的部分,但它也是帮助 PDF 击败竞争对手成为当今国际标准的原因。 当其他原始播放器将文本转换为光栅图像或矢量路径(以保持视觉完整性)时,PDF 的发明者知道用户需要可以搜索和复制的文本,而

    2024年02月06日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包