本文由“Fairyproof Tech”原创,授权“金色财经”独家首发,转载请注明出处。
一份审计报告是对一套智能合约的“质量检测报告”,那报告就要告诉用户所审计的对象是谁。
和普通的有形商品不同,智能合约这种特殊的商品是摸不着的,那怎么才能让用户知道它呢?
区块链领域的绝大多数项目包括鼎鼎大名的比特币和以太坊都有一个共同的特点:它们的源代码都是”开源”的。所谓的“开源”就是它们的代码都是公开的,放在某个公开、所有人都可以访问的网站上,任何人都可以看到它的内容。
我们所审计的智能合约绝大多数也是这样,它们都是开源的,放在一些知名的、供所有人存放文件的网站比如github等。
如果我们所审计的智能合约是开源并且放在了github上,我们要让用户知道它、看到它的源代码,就会在审计报告中列出合约所存放的github的网址。这就好比一件商品存进了一个大仓库,存在仓库中的某个库房,我们要让用户能找到这件商品就要告诉用户仓库的地址和库房的门牌号码。存放合约的github网址就等于仓库地址+门牌号码。
澳大利亚VentureCrowd拟募资1400万美元以投资Web3市场:金色财经报道,澳大利亚风险投资公司VentureCrowd正在募资1400美元,旨在扩张东南亚市场并加大Web3和区块链领域的投资,截至目前该风投已锁定超过600万美元资金。VentureCrowd表示,一旦这笔融资交易结束就将探索Web3市场,而且现在已经开始着手研究相关要素并将这一战略视为“财富科技的未来”,包括现实世界资产代币化、区块链安全等。(businessnewsaustralia)[2023/3/21 13:16:55]
可是如果合约的编写者(通常我们称为项目方)在给审计机构审计时用的是放在github上的一套合约,但审计后尤其是项目上线后,用户又修改了它的智能合约,我们怎么知道放在github上的合约就是审计时看到的合约而不是后来修改过或者其它“鱼目混珠”的合约呢?
独家 | OKEx CEO JayHao:比特币市场已不乐观 进入“技术性熊市”:今日,在针对“比特币的走势与该政策的相关性有哪些?波动上升后回吐涨幅,是否代表了比特币后市的“不乐观”?”的问题,OKEx CEO JayHao在金色财经独家采访时表示,从理论上讲,美联储的宽松货币政策会在中长期推动比特币价格的上涨,从目前看主要有两条传导路径:
第一条途径: 宽松的货币政策 → 银行信贷增加 → 流动性增加 → 部分增加的资金流入数字货币市场,推动价格上涨
第二条途径:宽松的货币政策 → 市场利率下降 → 美元计价的资产回报率下降 → 资金从美元市场流出、美元贬值 → 部分资金流入数字货币市场,价格上涨。需要注意的是,上述两条传导路径仅仅是从理论角度进行的分析,比特币的利率传导机制是否通畅还不确定;此外,由于比特币等数字资产尚未纳入全球投资机构的资产配置池中,因此利率传导的时效性较差。因此,以比特币为代表的加密数字货币市场在短期内很难受美联储宽松货币政策的影响,只有中长期才可能受此影响。现在的比特币市场已经“不乐观”了,目前已经是“技术性熊市”状态。[2020/3/16]
这就涉及到github这个仓库的一个特性了。
独家 | 金色财经2月9日挖矿收益数据播报:金色财经报道,据印比特数据显示,按照BTC参考价格70600元、电价0.38元/kWh计算,当前在售主流BTC矿机的市场价格及回本周期为:神马M20S-68T(全新现货12950元,269天回本)、芯动T2T-37T(全新现货4700元,238天回本)、阿瓦隆1066-50T(全新现货6500元,225天回本)、蚂蚁T17e-50T(准现货7100元,215天回本)。[2020/2/9]
当项目方往github中存放代码时,github会给这次存放动作产生一个版本号。这就好比我们在比特币、以太坊中申请一个新钱包时,这个钱包会有一个独一无二的地址一样,这个版本号也是唯一的。
当项目方之后对任何文件有了任何改动:小到一个字的修改,大到文件的删除、添加等,当把这些改动提交到github中,github又会给这次动作产生一个新的版本号。
金色独家 北邮在线数字经济研究院执行董事李立中:三个原因导致加密货币价格下跌:北邮在线数字经济研究院执行董事、副院长李立中在接受金色财经采访时被问及“加密货币价格下跌的原因”时他表示,“大概有三点原因:1、随着区块链技术研究的不断深入研究,越来越多的国家意识到加密货币会带来严重的问题,开始着手制定发布相关的监管条例。2、近期的公链51%攻击问题凸现,人们开始发现节点数量不代表整个体系的安全质量,交易所的近期被盗事件和操纵事件也产生了市场的恐慌,用户纷纷提币到自己的钱包导致流动性下降进而引起价格下跌。3、随着时间的推移真正做技术的应用场景项目开始浮出水面,使得整个行业开始价值回归,原来的泡沫开始逐步褪去。”[2018/6/16]
所以github中的版本号就是对所存放的文件的一份唯一存证,它保证了这个版本号所对应的文件就是某时某刻放进仓库中的文件,而不是之前或之后放进去的文件。
金色独家 慢雾安全团队:有至少6种途径导致 EOS 私钥被盗:针对 EOS 私钥被盗事件,金色财经特邀请慢雾安全团队对此事进行解读,慢雾安全团队表示:EOS 投票关键期频发私钥被盗问题,慢雾安全团队综合 Joinsec Red Team 攻防经验及地下黑客威胁情报分析,可能的被盗途径有:
1、使用了不安全的映射工具,映射使用的公私钥是工具开发者(攻击者)控制的,当 EOS 主网上线后,攻击者随即 updateauth 更新公私钥;
2、映射工具在网络传输时没有使用 SSL 加密,攻击者通过中间人的方式替换了映射使用的公私钥;
3、使用了不安全的 EOS 超级节点投票工具,工具开发者(攻击者)窃取了 EOS 私钥;
4、在不安全的 EOS “主网”、钱包上导入了私钥,攻击者窃取了 EOS 私钥;
5、用户存储私钥的媒介不安全,例如邮箱、备忘录等,可能存在弱口令被攻击者登录窃取到私钥;
6、在手机、电脑上复制私钥时,被恶意软件窃取。
同时,慢雾安全团队提醒用户自查资产,可使用公钥(EOS开头的字符串)在 https://eosflare.io/ 查询关联的账号是否无误,余额是否准确。如果发现异常并确认是被盗了,可参考 EOS 佳能社区 Bean 整理的文档进行操作 https://bihu.com/article/654254[2018/6/14]
所以我们在审计报告中除了罗列被审计合约的github网址,还要罗列被审计合约在github中的版本号。
这两个要素就保证了读者看我们报告时能准确知道我们所审计的内容。
除了放在github上,还有的项目方在审计时已经把合约部署在区块链网络上了。由于智能合约一旦部署到区块链网络上,它就是无法篡改和撤销的,因此智能合约所部署的区块链地址也可以作为合约的存证地址。
对这样的合约,我们通常也会记录下它在区块链上的地址作为唯一存证。
我们前面说绝大多数项目的智能合约是开源的,这也就意味着还有一些项目的合约在审计时是未开源的,在这种情况下,我们怎么记录这份合约的存证呢?
我们会用SHA-256的值来标记合约文件的存证。
有些读者尤其是数字货币的玩家看到“SHA-256”这个词会觉得很眼熟:这不是数字货币加密算法中常用的一个技术吗?
确实是这样,更准确的说,它是一种经过“哈希函数”运算得出的值,这个值也被称为“哈希值”,它有256位(bit)。
所谓的哈希函数又称散列函数(英语:Hash Function),是一种从任何一种数据中创建小的数字“指纹”的方法。哈希函数把消息或数据压缩成摘要,使数据量变小,将数据的格式固定下来。该函数将原有的数据打乱混合,重新创建一个结果叫做哈希值(hash value、hash code、hash sum或hash)。
我们为什么要用这个值来记录合约文件的存证呢?因为一个SHA-256的值所对应的文件内容是唯一的。这就和上面我们用github中的版本号来保证github中的文件是唯一的一样。
那我们怎么用这个值来记录合约文件的存证呢?
我们自己编写了一套这样的工具,对所审计的每个合约文件的内容都用这个工具进行一次运算,所得到的值就是一个SHA-256的值。这个值就代表了我们所审计的文件内容的唯一。
我们会罗列每个文件及其所对应的SHA-256值,这就记录了文件的存证。
当用户或读者要检测他看到的合约文件是否是我们所审计的合约时,将他看到的文件用我们的工具计算一下,将所得出的SHA-256值与我们所得到的值进行比较,如果一样就证明是,如果不一样就证明不是。
所以总结起来说,我们会用github网址+版本号、区块链地址或SHA-256值这三种方式中的一种或几种来记录文件的存证。
作者:
Fairyproof TechCEO 谭粤飞
美国弗吉尼亚理工大学(Virginia Tech, Blacksburg, VA, USA) 工业工程(Industrial Engineering) 硕士(Master)。曾任美国硅谷半导体公司 AIBT Inc(San Jose, CA, USA) 软件工程师,负责底层控制系统的开发、设备制程的程序实现、算法的设计,并负责与台积电的全面技术对接和交流。自2011至今,从事嵌入式,互联网及区块链技术的研究,深圳大学 创业学院《区块链概论》 课程教师,中山大学区块链与智能中心客座研究员,广东省金融创新研究会常务理事 。个人拥有4项区块链相关专利、3本出版著作。
关于Fairyproof Tech:
Fairyproof Tech科技有限公司是一家专注区块链生态安全的公司。Fairyproof Tech科技主要通过“代码风险检测+逻辑风险检测“的一体化综合方案服务了诸多新兴知名项目。公司成立于2021年01月,团队由一支拥有丰富智能合约编程经验及网络安全经验的团队创建。
团队成员参与发起并提交了以太坊领域的多项标准草案,包括ERC-1646、ERC-2569、ERC-2794,其中ERC-2569 被以太坊团队正式收入。
团队参与了多项以太坊项目的发起及构建,包括区块链平台、DAO组织、链上数据存储、去中心化交易所等项目, 并参与了多个项目的安全审计工作,在此基础上基于团队丰富的经验构建了完善的漏洞追踪及安全防范系统。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。