连载Fountain项目分析第二篇,区块链应用技术的角度分析看,主要看两点:1/以太合约的编写规范和设计思路,2/产品通证经济模型的设计。
Fountain项目初上之时遭受了合约攻击,具体原因以及攻击过程详见:https://www.jianshu.com/p/6d3506ba22ef。好在影响到的用户数量稀少,所以在吸取到之前的经验后于2018年12月30日发布了新的以太合约代码:参考github地址https://github.com/FountainHub/FTN-Token-ERC20/blob/master/SRC/FTN-Genesis-Contract.sol 当然乍一看并没有什么问题了,具体也不能在这里展开说潜在的风险,我们简要说下书写合约需要注意哪些问题。
1、溢出攻击 当一个uint256类型的变量值超出上限2的256次方时则会溢出,结果会使得变量值变为0。 例如,如果你想把一个 unit 类型的变量赋予大于2^256的值,它会简单地变为0,这是危险的。
另一方面,当你从 0 值中减去一个大于 0 的数字时,则会发生下溢出(underflow)。例如,如果你用 0 减去1,结果将是2^256,而不是 -1。在处理以太币的时候,这非常危险;然而在这个合约中并不存在减法操作,所以也不会有下溢出的风险。
唯一可能发生溢出的情况是当你调用 bet() 向某个数字下注时, totalBet 变量的值会相应增加。
2、重放攻击是指在像以太坊这样的区块链上发起一笔交易,而后在像以太坊经典这样的另一个链上重复这笔交易的攻击。(就是说在主链上创建一个交易之后,在分岔链上重复同样的交易。译者注。)
以太币会像普通的交易那样,从一个链转移到另一个链。
截止到2019年1月31日,FTN 的ETN钱包持仓有1134个(来源依据etherscan,https://etherscan.io/token/tokenholderchart/0x66d9c4d19b4c8e23a54c6dc4ceed141f66b8111c)
连载Fountain项目分析第二篇,区块链应用技术的角度分析看,主要看两点:1/以太合约的编写规范和设计思路,2/产品通证经济模型的设计。
Fountain项目初上之时遭受了合约攻击,具体原因以及攻击过程详见:https://www.jianshu.com/p/6d3506ba22ef。好在影响到的用户数量稀少,所以在吸取到之前的经验后于2018年12月30日发布了新的以太合约代码:参考github地址https://github.com/FountainHub/FTN-Token-ERC20/blob/master/SRC/FTN-Genesis-Contract.sol 当然乍一看并没有什么问题了,具体也不能在这里展开说潜在的风险,我们简要说下书写合约需要注意哪些问题。
1、溢出攻击 当一个uint256类型的变量值超出上限2的256次方时则会溢出,结果会使得变量值变为0。 例如,如果你想把一个 unit 类型的变量赋予大于2^256的值,它会简单地变为0,这是危险的。
另一方面,当你从 0 值中减去一个大于 0 的数字时,则会发生下溢出(underflow)。例如,如果你用 0 减去1,结果将是2^256,而不是 -1。在处理以太币的时候,这非常危险;然而在这个合约中并不存在减法操作,所以也不会有下溢出的风险。
唯一可能发生溢出的情况是当你调用 bet() 向某个数字下注时, totalBet 变量的值会相应增加。
2、重放攻击是指在像以太坊这样的区块链上发起一笔交易,而后在像以太坊经典这样的另一个链上重复这笔交易的攻击。(就是说在主链上创建一个交易之后,在分岔链上重复同样的交易。译者注。)
以太币会像普通的交易那样,从一个链转移到另一个链。
截止到2019年1月31日,FTN 的ETN钱包持仓有1134个(来源依据etherscan,https://etherscan.io/token/tokenholderchart/0x66d9c4d19b4c8e23a54c6dc4ceed141f66b8111c)
另外据非小号统计,FTN的交易量集中在bit.cc/满币网/coinTiger 三个平台,从交易深度以及平台影响力上个人比较推荐满币网,虽然我也认识币虎的同志,哈哈哈😂,来源是https://www.feixiaohao.com/currencies/fountain/
期待Fountain迅速成长,激励更多的作者写出自己的认知,和平台共同努力。
#FTN征文大赛。 传送门:征文链接