Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

Solidity已知bug列表

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

本版积分规则

成为第一个吐槽的人

蓝天天使2017 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    10