11 2018 档案

摘要:接上一章的内容,这篇介绍 deploy相关和结果演示。 deploy一个合约的过程中,需要计算发布的消耗和nonce值。 当进行每笔交易时,发送人设定Gas Limit 和Gas Price,将 Gas Limit*Gas Price ,就得到了ETH交易佣金的成本。 nonce:以太坊要求一个账户 阅读全文
posted @ 2018-11-30 11:18 像我这样的人 阅读(352) 评论(0) 推荐(0)
摘要:本文的目的是通过代码的方式展示如何开发一个能够编译solidity智能合约并且能发布的平台。 1.solcJs solidity文件通过solc来编译的,安装solcjs,他使用javascript的方式编译合约。安装比较简单 安装solcjs: 我安装的时候默认安装的solc是0.4.8,这个版本 阅读全文
posted @ 2018-11-28 21:44 像我这样的人 阅读(901) 评论(0) 推荐(0)
摘要:HD Wallets的全称是Hierachical Deterministic Wallets, 对应中文是 分层确定性钱包。 这种钱包能够使用一组助记词来管理所有的账户的所有币种,在比特币的BIP32提案中提出,通过种子来生成主私钥,然后派生海量的子私钥和地址。种子很长,为了方便记录,转换为一组单 阅读全文
posted @ 2018-11-27 17:32 像我这样的人 阅读(1829) 评论(0) 推荐(0)
摘要:为什么要有内联汇编? //普通循环和内敛汇编循环比较 pragma solidity ^0.4.25; contract Assembly{ function nativeLoop() public view returns(uint _r){ for(uint i=0;i<10;i++){ _r 阅读全文
posted @ 2018-11-25 11:04 像我这样的人 阅读(712) 评论(0) 推荐(0)
摘要:我们已经学习了4种开发和部署智能合约的方法: 第1种是使用 Truffle 和 Ganache 。由于我们从上一篇教程中复制了代码,所以我想告诉你,有些插件可用于目前最流行的文本编辑器和 IDEs。有些只提供语法高亮显示,而另一些则提供其他方面的帮助。 第2种是将 Truffle 的代码部署到 ge 阅读全文
posted @ 2018-11-22 13:41 像我这样的人 阅读(386) 评论(0) 推荐(0)
摘要:call() 方法 call()是一个底层的接口,用来向一个合约发送消息,也就是说如果你想实现自己的消息传递,可以使用这个函数。函数支持传入任意类型的任意参数,并将参数打包成32字节,相互拼接后向合约发送这段数据。 简单说 根据地址调用指定合约的方法。 由于向另一个合约发送数据时,找不到对应的方法签 阅读全文
posted @ 2018-11-21 20:55 像我这样的人 阅读(2923) 评论(0) 推荐(0)
摘要:接口:不用实现方法,仅仅定义方法。 实例化的ae只能调用合约cat中的eat,如果cat合约中有其他方法,但是接口没有同名方法是没办法调用的。 阅读全文
posted @ 2018-11-21 20:26 像我这样的人 阅读(542) 评论(0) 推荐(0)
摘要:library库的申明: library SafeMath{ functrion mul(uint a,uint b) public returns (uint){ uint c= a*b; assert(c/a = b) return c } } 使用library库 1 合约中引入 两种调用方式 阅读全文
posted @ 2018-11-18 18:47 像我这样的人 阅读(721) 评论(0) 推荐(0)
摘要:1.环境安装 1) node安装 2)安装truffle $npm install -g truffle 3)安装python npm install python 2.创建truffle项目 我的项目安装在 /usr/local下、 所以分别执行下面三个命令: 1)cd /usr/local 2) 阅读全文
posted @ 2018-11-16 15:55 像我这样的人 阅读(549) 评论(0) 推荐(0)
摘要:通常一个DAPP的开发包括两部分:智能合约的开发和提供合约进行调用的前端页面。 truffle提供了对这两部分内容比较简单的开发方式,特别是在开发/测试阶段。给开发人员提供快捷的打包/部署,已经本地服务启动的途径。 阅读全文
posted @ 2018-11-16 14:46 像我这样的人 阅读(353) 评论(0) 推荐(0)
摘要:软分叉:向前兼容,新节点或者新协议产生的区块,老节点需要认同。 硬分叉:一旦发生分叉就是两条链。因为两条链A,B分叉前的数据完全相同,这就导致了重放攻击。然后带来了重放保护。 阅读全文
posted @ 2018-11-14 19:46 像我这样的人 阅读(284) 评论(0) 推荐(0)
摘要:转载自 https://www.linuxidc.com/Linux/2018-05/152389.htm 本教程将引导您在CentOS Linux 7.5机器上安装Node.js和npm。 Node.js是一个跨平台的JavaScript运行时环境,允许服务器端执行JavaScript代码。 No 阅读全文
posted @ 2018-11-14 16:02 像我这样的人 阅读(1540) 评论(0) 推荐(0)
摘要:修饰符: 函数修饰符有 constant view pure 其中 constant和view的功能是一样的 不会消耗gas 也就是说不会做任何存储 constant在5.0以后的版本中被废弃 pure则更严格一点 不会消耗gas 也不会使用函数的变量 继承: 合约之间的继承是通过 is 来实现的: 阅读全文
posted @ 2018-11-12 21:50 像我这样的人 阅读(544) 评论(0) 推荐(0)
摘要:以太坊相比比特币有账户的区别: 比特币中没有账户 通过utxo来记账 以太坊账户四个要素: 1.随机数: 用于确定每笔交易只能被处理一次的随机数,参与生成交易的 ID。 防止重放攻击! 2.账户eth 余额: 1eth = 10 *18 次方wei 3.账户对应的合约(如果有的话) 4.账户的存储( 阅读全文
posted @ 2018-11-04 13:53 像我这样的人 阅读(183) 评论(0) 推荐(0)