Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

Solidity已知bug列表

蓝天天使2017
100 0 0
在下面,你可以找到一个 JSON 格式的列表,上面列出了 Solidity 编译器上一些已知的安全相关的 bug。
* N5 C( w( [- Q$ u5 M该文件被放置于 Github 仓库 _ 。; l" {3 f" [) k7 D8 |3 S; l# T
该列表可以追溯到 0.3.0 版本,只在此版本之前存在的 bug 没有被列入。% @5 |0 \) L8 D0 Z2 N+ u# _
这里,还有另外一个 bugs_by_version.json _ 文件。
% U) t! h; |; ]! Z该文件可用于查询特定的某个编译器版本会受哪些 bug 影响。6 l" }3 o8 Q* _- y4 Y
合约的源文件检查工具以及其他与合约交互的工具,需基于以下规则查阅上述 bug 列表文件:
% `# A, C  v) q如果合约是用每日构建版本的编译器编译,而不是发布版本的编译器,那就有点可疑了。上述bug列表不跟踪未发布或每日构建版本的编译器。如果一个合约并不是由它被创建时点的最新版本编译器所编译的,那么这也是值得怀疑的。对于由其他合约创建的合约,您必须沿着创建链追溯最初交易,并使用该交易的日期作为创建日期。高度可疑的情况是,如果一份合约由一个包含已知 bug 的编译器编译,但在合约创建时,已修复了相应 bug 的新版编译器已经发布了。. E/ o, P4 ~1 |3 y
" d* \* Q5 w' Q$ G& @! f
下面这份包含已知 bug 的 JSON 文件实际上是一个对象数组,每个对象对应一个 bug,并包含以下的 keys :6 v& G: x7 P3 P/ s1 I
name5 g# E" D4 J9 W7 K# d
赋予该 bug 的唯一的名字summary
& [3 F' u1 t  a" Q对该 bug 的简要描述description8 s2 S) @% `1 o& d
对该 bug 的详细描述link3 a+ \. F2 D  S
包含更多详尽信息的链接,可选introduced
& u7 v! C, A* |! h第一个包含该 bug 的编译器的发布版本,可选fixed$ }) `( _$ q; Y, i) {9 W
第一个不再包含该 bug 的编译器的发布版本publish0 n' Z, [1 N, O$ E
该 bug 被公开的日期,可选severity' Y' j' g& {4 s2 [7 v0 U0 x
bug 的严重性: very low, low, medium, high。综合考虑了在合约测试中的可发现性、发生的可能性和被利用后的潜在损害。conditions6 {2 O4 W7 W/ p7 u5 D6 o- `- q
触发该 bug 所需满足的条件。当前,这是一个包含了 optimizer 布尔值的对象,这意味着只有打开优化器选项时,才会触发该 bug。1 p% c: L" f! ?
如果没有给出任何条件,则意味着此 bug 始终存在。
# s) R- T& C  N& `
  x# x( V% ]5 j. z% a原文 https://github.com/etherchina/solidity-doc-cn/blob/develop/bugs.rst
标签: Solidity
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

蓝天天使2017 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    10