blockchain
文章平均质量分 78
bnbjin
这个作者很懒,什么都没留下…
展开
-
eos-unittest
eos-unittest 是白盒测试。build/unittests/unit_test 是一个二进制源程序,运行会自动运行所有测试用例。unit_test --list_content 枚举所有测试套及测试用例。./unit_test -t eosio_system_tests/stake_unstake 单独测试eosio_system_tests测试套的stake_unstake测试用...原创 2019-10-15 13:36:15 · 344 阅读 · 0 评论 -
关于区块链的一些思绪
关于区块链升级,是一件很容易引发争议的事情。有感而发。对于常规的思维来说,区块链智能合约升级应该是一件再普通正常不过的事情。但对于区块链本身来说,秉承一种代码即是法律的理念,而法律是不能轻易更改的(如若随意更改,则丧失法律的权威性,沦为当权者的玩物,与人人平等,去中心化的理念背道而驰)。以太坊的智能合约是无法升级的,如果真要升级,则需要通过分叉解决,后果代价可想而知。即便如此,以太坊的社区依然...原创 2018-12-14 10:39:08 · 4142 阅读 · 1 评论 -
eosio.cdt心得
写在前面从eos v1.3.0更新开始,eosio提倡使用eosio.cdt工具来编译智能合约,以提高智能合约的执行性能等。其中相较于旧的工具,eosio.cdt更新了不少语法。asset实现完善了不少,使得代币相关的实现更加严谨。默认初始化的asset内的symbol为空,值为零。在作asset比较和赋值的时候,一不小新就经常遇到符号错误。在智能合约编写过程中,应该指定所设计的代码的符号...原创 2018-11-15 18:43:11 · 2099 阅读 · 1 评论 -
eosio.msig合约源码分析
eosio.msig接口proposeapproveunapprovecancelexec数据结构eosio.sudo原创 2018-11-12 16:57:27 · 322 阅读 · 0 评论 -
bitcoin-memorypool源码分析
涉及的bipbip68 交易输出会锁定一段时间不允许消费bip125 如果mempool已经有相同交易输入的交易,具备更高手续费(小费)的新加入交易会替换掉旧的交易。ctxmempoolentry存储一个交易的相关信息和其他在mempool中与这个交易有关的祖先、后裔交易的数据。每当有新的交易添加到mempool,都需要更新这个新交易的所有祖先交易的相关状态。ctxmempool...原创 2018-11-04 17:10:50 · 576 阅读 · 0 评论 -
system合约源码分析
写在前面system合约是EOS区块链最核心的智能合约,分析其源码可以一窥EOS的精妙之处。接口// *** native.hpp ***newaccountupdateauthdeleteauthlinkauthunlinkauthcanceldelayonerror// *** eosio.system.cpp ***void setram(uint64_t...原创 2018-09-27 16:00:09 · 1254 阅读 · 0 评论 -
交易校验与交易脚本
校验与脚本交易校验是基于对脚本语言的执行结果的判断。 交易校验引擎依赖于两种类型的脚本: * unlocking script * locking script 当一个交易被校验有效时,每个输入的unlocking script会与对应的locking script一起被执行,以判断他们是否满足给定的要求(花费条件)。 script是用来使可编程货币的校验生效的。 未花费...原创 2018-09-10 19:40:56 · 764 阅读 · 0 评论 -
POW
概念对于单向散列函数,输出是不可知的。但在假设输出结果是随机平均分布的情况下,可以预先计算出特定范围的结果的可能性,推导要计算出满足特定条件的结果所花费的工作量。 在比特币的区块链实现中,POW是一种保护区块链网络,维持通货稳定的手段。因为对比特币来说,一个非常重要的原则是维持每10分钟生成一个区块。新的通货只会从新区块的第一个交易(coinbase transaction)产生。如此,维持...原创 2018-09-02 21:05:43 · 583 阅读 · 0 评论 -
base58
Base58 is a subset of Base64, using upper- and lowercase letters and numbers, but omitting some characters that are frequently mistaken for one another and can appear identical when displayed in certa...翻译 2018-08-05 15:32:25 · 758 阅读 · 0 评论 -
密钥与地址
私钥(private key)理论创建一个bitcoin密钥可以比作在 1 到 2 的256次方之间随机选择一个数。 更确切地说,设 n = 1.158 * 1077,略小于2的256次方,私钥是 1 到 n-1 的任意一个数。对于 n ,是ECC(椭圆曲线加密算法)中有限集的阶。实现随机生成一个较大的随机位数的字符串,然后将它输入到SHA256散列算法中,得到一个256...翻译 2018-08-05 15:27:47 · 1256 阅读 · 0 评论