Qtum区块链开发指南--HelloWorld.pdfVIP

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Qtum区块链开发指南 -- Hello World ! 作者:cryptominder 简介 在作者之前的⼀篇⽂章(/qtum/@cryptominder/qtum-blockchain-development- environment-setup)中,描述了如何利⽤Docker部署⼀个3节点的Qtum区块链环境。这篇指南将会以此为基 础,希望读者在阅读本⽂之前先配置好相关环境。 作为Qtum智能合约开发系列教程的第⼀篇⽂章,我们将从⼤家熟悉的以太坊智能合约实例“Ethereum Greeter tutorial” (参考/greeter)开始。本⽂会该实例中相同的Solidity智能合约,并⽤ Qtum命令⾏⼯具(即 qtum-cli )进⾏创建和运⾏。 希望在阅读完本教程后,读者能对Qtum区块链有⼀个更加深⼊的认识,进⽽开发出更多有趣的去中⼼化应⽤ (DApp)。 为何选择Qtum⽽不是以太坊? Qtum结合了⼏个⽐较成熟的区块链⽣态系统的优势,并进⾏了多种创新,这些区块链包括: Bitcoin :Qtum采⽤了和⽐特币相同的UTXO模型(当然也包含由此带来的安全性),同样⽀持简单⽀付协议 (SPV); Ethereum :Qtum ⽬前采⽤了以太坊运⾏智能合约的虚拟机(也即EVM); Blackcoin :Qtum借鉴了⿊币的权益证明共识机制(PoS),并对其进⾏多项改进; Qtum实现了账户抽象层(AAL),使得UTXO模型能够和以太坊的账户模型进⾏⽆缝交互。并且除了EVM 外,Qtum近期还宣布会⽀持更多不同虚拟机。 由于⽀持SPV,Qtum客户端可以在带宽/ 内存受限的设备上运⾏,在这些设备上下载和保存所有区块信息是 不太现实的。Qtum的SPV客户端可以在iOS (如iPhone,iPad)及Android设备上运⾏,甚⾄在卫星上也可 以运⾏Qtum。需要说明的是,虽然Qtum⽀持移动设备,但移动端市场只是他们蓝图中的⼀部分,Qtum关注 的领域⾮常⼴泛。 由于Qtum采⽤PoS共识机制,这使得在低功耗设备上挖矿成为可能 -- ⽐如树莓派。这⽐⽬前⽐特币和以太坊 采⽤的PoW机制要环保得多。 同时,为了防⽌分叉,Qtum推出分布式⾃治协议(DGP)以实现区块链参数的动态调整。 基于以上的⼀些原因(当然还有其他原因,⽐如他们出⾊的团队组成等),作者认为Qtum区块链提供了许多 超越以太坊的特性。 准备开始 除了作者之前提到的本教程的准备外,这⾥补充⼏点: 确保你已经安装了Docker,并已经设置并运⾏好Qtum regtest环境 你运⾏以下所有命令时所在的开始路径包含对应config⽂件(如node1qtumd.conf),以及对应datadir数 据路径(如node1data) 在需要的时候,你可以为以下命令创建batch/shell脚本 另外,在⽂中提到的 $PWD 环境变量代表Linux和MacOs/OSX的当前途径。在Windows中,应采 ⽤ %cd% 。 在docker使⽤-v选项时,命令⾏注意要使⽤全路径。 第⼀步 - 你准备好了么? 在开始之前,请务必检查以下环境是否都已设置妥当。⾸先我们要确认3个qtumd节点正确运⾏: $ docker ps -f name=qtumd 以上命令会运⾏3个Docker容器(即qtumdnode1, qtumdnode2, qtumd_node3)。 接下来,请确保⽬前区块⾼度⼤于或等于600,并且有⾄少⼀个钱包的余额⼤于0 : $ docker run -i --network container:qtumd_node1 -v ${PWD}/node1_qtumd.conf:/home/q tum/qtum.conf:ro -v ${PWD}/node1_data:/data cryptominder/qtum:latest qtum-cli geti nfo 以上命令正常情况下应该返回类似如下信息: { version: 140301, protocolversion: 70016, walletversion: 130000, balance: 2000000 stake: 0 blocks: 600, timeoffset: 0, connections: 2, proxy: , difficulty: { proof-of-work: 4.65654237390692

文档评论(0)

wx171113 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档