Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

Solidity已知bug列表

蓝天天使2017
112 0 0
在下面,你可以找到一个 JSON 格式的列表,上面列出了 Solidity 编译器上一些已知的安全相关的 bug。
* U4 h# X, D3 M9 w! @该文件被放置于 Github 仓库 _ 。6 U8 a5 M9 u' |1 e+ g  ~
该列表可以追溯到 0.3.0 版本,只在此版本之前存在的 bug 没有被列入。% d& j* h2 _- l1 ?/ y0 {* d* c
这里,还有另外一个 bugs_by_version.json _ 文件。# M/ N, |( y' n" H
该文件可用于查询特定的某个编译器版本会受哪些 bug 影响。1 }+ j% _: H% d3 V1 R1 K
合约的源文件检查工具以及其他与合约交互的工具,需基于以下规则查阅上述 bug 列表文件:
  s9 n8 I. Z6 i* n$ L# M如果合约是用每日构建版本的编译器编译,而不是发布版本的编译器,那就有点可疑了。上述bug列表不跟踪未发布或每日构建版本的编译器。如果一个合约并不是由它被创建时点的最新版本编译器所编译的,那么这也是值得怀疑的。对于由其他合约创建的合约,您必须沿着创建链追溯最初交易,并使用该交易的日期作为创建日期。高度可疑的情况是,如果一份合约由一个包含已知 bug 的编译器编译,但在合约创建时,已修复了相应 bug 的新版编译器已经发布了。- I" J4 R9 Y0 C# R7 J! c0 e
* f+ Q% Q- x" C& q
下面这份包含已知 bug 的 JSON 文件实际上是一个对象数组,每个对象对应一个 bug,并包含以下的 keys :
$ Y/ T  i$ z% R+ A- X" y! i. `name' B+ {$ i9 |& q: `( D; P3 a
赋予该 bug 的唯一的名字summary/ C$ s) L! V8 B# ?* |
对该 bug 的简要描述description
4 }2 u7 y& N7 v- x对该 bug 的详细描述link1 B- G- \) y% H2 {; P# [* X2 U
包含更多详尽信息的链接,可选introduced
8 h) L8 C; B4 B+ j; H第一个包含该 bug 的编译器的发布版本,可选fixed& d% X1 P6 g; `* h- D* W8 s
第一个不再包含该 bug 的编译器的发布版本publish
, Y+ L4 N- d2 J9 m2 l4 {4 U该 bug 被公开的日期,可选severity
7 v3 ~+ a4 A( l0 j. A8 Bbug 的严重性: very low, low, medium, high。综合考虑了在合约测试中的可发现性、发生的可能性和被利用后的潜在损害。conditions
1 K2 r$ m, _& ]# v7 a2 [# i触发该 bug 所需满足的条件。当前,这是一个包含了 optimizer 布尔值的对象,这意味着只有打开优化器选项时,才会触发该 bug。
- S6 h, [; F! s; K& w9 d  X' F: y如果没有给出任何条件,则意味着此 bug 始终存在。
% L. e- I9 ~6 f$ z* p/ O$ R: n6 D1 W5 P! V9 f. F
原文 https://github.com/etherchina/solidity-doc-cn/blob/develop/bugs.rst
标签: Solidity
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

蓝天天使2017 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    10