区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > NEAR > 正文

比特币核心开发者Michael Ford:BTC核心构建系统的最新改进

作者:

时间:

摘要:这篇文章的作者是比特币核心钱包贡献者和 BitMEX Research 客座作家 Michael Ford。Michael 是 HDR Global Trading Limited 比特币发展基金的受助人,该基金每年为他提供 6 万美元。在本报告中,Michael 解释了比特币核心构建系统的最新改进,以及他是如何参与消除第三方软件依赖项(如 OpenSSL)的。根据 Michael 的测试,在比特币核心钱包 0.19.99 中构建的软件包数量同比特币核心钱包 0.13.2 比减少了 44%,构建时间自峰值以来减少了 42%,降至 135 秒。通过减少攻击面和提高软件性能,从而提高了软件的安全性。

(来源:Michael Ford 的分析)

(注意:仅需要软件包,不包括下载。-C 取决于 -j8 NO_QT = 1 NO_UPNP = 1 等,在苹果操作系统上进行)

构建系统是比特币核心代码库一个不太吸引人但却很重要的部分。它控制着代码的配置和编译方式,以及代码与依赖项之间的交互方式,这正是帮助我们构建完全可复制的二进制文件,让许多比特币用户运行该二进制文件的原因。

Protool Poolz在其主网上集成Chainlink VRF:据官方消息,去中心化代币兑换协议Protool Poolz在主网上集成了Chainlink VRF(可验证随机函数),将参与高需求欲上市流动性拍卖的投资者列入白名单。这使Poolz可以公平公正地自动选择参与者。[2021/1/16 16:18:14]

在这篇文章中,我将快速讨论我最近参与的一些构建系统更改,其中大部分是比特币核心钱包0.20.0 版本的一部分。

从比特币核心钱包中移除 BIP70 支持已经有很长一段时间了。有许多文章总结了它的问题,因此我不在这里详细说明,只会说包括安全漏洞、隐私问题和实现之间的不兼容性。BIP70 也是需要 OpenSSL 的代码库的最后一部分,因此阻碍了它的移除。在 GitHub 的评论中可以找到上述内容的一个很好的总结。

从任何项目中移除向外的功能通常需要多个阶段,而从比特币核心钱包移除功能也没有什么不同。 在 2018 年 10 月,提取请求 #14451 基于之前一年提出的代码 #11622 ,使得在构建比特币核心钱包时可以禁用 BIP70。但是,它仍作为 0.18.0 的一部分保留在二进制版本中。

此后不久,在 #15584 中,默认情况下禁用了 BIP70 支持,这意味着构建比特币核心钱包的任何人都必须在编译时选择使用 `-enable-bip70`。 默认情况下,禁用 BIP70 是最近的 0.19.0 版本的一部分,以及 GUI 警告和在可能的情况下建议切换到 BIP21 URL 的建议。

BW.io将于11月9日20:00上线热门币种FOMP:据悉,ZB联合ZB国际站BW.io将于11月9日晚上20:00同步上线热门币种FOMP,并开放FOMP/USDT交易对。

Fompound致力于用区块链技术打造在IPFS领域的去中心化金融聚合器,包括但不限于对IPFS领域算力提供等方式进行投资。 FOMPOUND通过发行FOM-A至FOM-J等不同的资产包所有权通证进行分期分批的投资,从而提高收益率降低风险值。BW新上线双11合约回馈活动,交易即可获得11.11USDT,享手续费率85折优惠。登陆BW.io查看更多币种上新信息。[2020/11/9 12:04:41]

在 #17165 中提出了从比特币核心钱包中移除 BIP70 的建议。PR 移除了我们功能的依赖项,与 X509 有关的 OpenSSL 用法,将 OpenSSL 链接到 GUI 的需求,总共约 2,000 行代码。在后续的 #17730 请求中,还可以从比特币核心钱包中移除几乎所有 Qt 的内部网络功能;然而,Windows 版本的问题导致无法完全移除它们。 移除 BIP70 是移除 OpenSSL 之前需要完成的最后步骤之一。

Random.cpp 维护一个内部 RNG(随机数生成器),它从许多不同的来源获取熵,包括硬件、操作系统以及历史上的 OpenSSLs RNG。 在删除 OpenSSL 之前,已决定增加比特币核心钱包的随机数生成器,以确保它将从环境(时间,性能数据,系统配置等)中获取额外的熵,其中还包括 OpenSSL 以前使用的某些来源。 这是在 #17270 中完成的。 另外两个提取请求通过删除对 RAND_screen() #17191 和 RAND_event()#17151 的调用来删除了一些 OpenSSL 的随机数生成器种子。

此时,可以从项目中移除所有剩余的 OpenSSL 使用情况,这是在 #17265 和 #17515 中完成的; 这些更改将成为比特币核心钱包 0.20.0 版本的一部分。 长期以来,OpenSSL 一直是漏洞、紧急发布和性能问题的源头。 它的共识性关键用法(签名验证)早已被 secp256k1 库所取代,该库由比特币核心钱包开发人员针对 OpenSSL 的缺点而开发的,作为比特币核心钱包 0.12.0 版本的一部分。

我参与的其它与构建系统相关的工作更多地针对苹果操作系统,包括减少我们的苹果操作系统二进制文件链接所针对的动态库的数量。 与 0.19.0 相比,使用最新代码库(将在即将发布的 0.20.0 版本中构建)的苹果操作系统二进制文件链接针对减少了六个动态库。我们不再链接的库包括DiskArbitration,Security,SystemConfiguration,OpenGL,AGL 和 CFNetwork。

其中一些库尚未使用,但在构建过程中仍与之链接。在 #17663 中引入 -dead_strip_dylibs 链接器标志后,它们就被移除了。其它诸如 OpenGL 或 D-Bus 等已由 Qt 引入,但最终仍未使用,并且可以通过更改我们的 Qt 构建配置来删除它们(有关这些更改,请参阅 #17521 和 #17676 )。

在努力减少苹果操作系统依赖项的数量之后,似乎有必要确保我们不会不必要地重新引入这些依赖项。#17863 已被打开以添加苹果操作系统动态库检查(已在 Linux 中完成)作为构建过程的一部分。#17787 在我们的 security-check.py 脚本中添加了 PIE(位置独立的可执行文件)和 NOUNDEFS(没有未定义的引用)。

这是我最近参与的一些构建系统工作的一个简短、高度的概述。如果只是通过减少攻击面的话,其结果是比特币核心钱包存储库中的代码更少(非比特币),比特币和比特币 -qt 的构建依赖关系更弱,可执行尺寸更小,安全性也有所提高。

这里的大部分工作都是经由之前无数个小时的工作,以及许多其他比特币核心贡献者的审查才得以完成。我特别要感谢 Cory Fields 对我的许多构建系统工作的帮助和指导。

Michael Ford, 比特币核心开发者

标签:SSL以太坊HERTHESSL价格以太坊行情togetherbnb可以推到的有谁togetherbnb全剧情图文攻略

NEAR热门资讯
6.17早间行情:比特币深V反弹 注意这个指标的变化

比特币深V反弹后,再陷震荡整理,9400-9600美金是6月份从1万美金处跌落的中枢区间,日内如果能放量突破9600美金,则代表多头再次占据主导,大盘回到1万美金区域指日可待。而在中枢区间整理,面临着一定的不确定性,处于多空头角力的状态,币价可上可下,方向不明朗。

美股闪崩 带领比特币二次假摔

美股毫无征兆的崩盘了,于是带崩了比特币,按说最近币圈和美股并没有太强的联动效应,但美股这种史诗级的崩盘,一定会带动各风险资产的避险情绪,比如欧洲和亚洲股市也崩了,比如原油崩了,比如比特币跟着锤了,这些都是情绪指引的,但情绪过后,是金子总会发光,有些品种完全属于假摔行为,怎么跌下去还会怎么涨上去,比特币便是这样的品种。

晚间必读5篇|谁买了支撑比特币的Tether?

真能赚钱?回顾三款经典的区块链游戏 上周,我们研究了三种最受欢迎的以太坊收藏游戏的总收入:《CryptoKitties》,《Gods Unchained 》和《My Crypto Heros》。这周,我们正在研究个人玩家的收入。 让我们来统计一下各个玩家的最高收入……这些总和将使您想重新考虑您的职业选择。

以太坊的Layer 2赛道 哪些项目值得关注?

随着近期以太坊转账费用居高不下,以太坊的Layer 1明显不够用了。当前,人们的眼光都聚焦在DeFi上,人们可能没有注意到,随着以太坊费用的提升,以太坊其他领域的dApp日活在下降,尤其是游戏领域。 以太坊急需扩展,这也是从2017年以来一直的老问题了。不过经过3年多的努力,如今layer 2 的解决方案越来越多,让人眼花缭乱。

6.17午间行情:突破这一关键位置 会迎来一波行情

文章系金色财经专栏作者牛七的区块链分析记供稿,发表言论仅代表其个人观点,仅供学习交流!金色盘面不会主动提供任何交易指导,亦不会收取任何费用指导交易,请读者仔细甄别,谨防上当。 比特币从8900美金附近最高反弹到了9588美金,9588美金也是4小时MA83线的位置,这个位置抛压较重,属于多空心理的分水岭。

基于区块链的PPA架构的太阳能项目在澳大利亚投产

9.4兆瓦的罗宾维尔(Robinvale)太阳能农场是尚德在澳大利亚电网中首个实现完全自有的项目,也是全澳第一个部署WePower基于区块链的PPA架构的太阳能项目。这为小企业客户打开了实现绿色采购战略的机会之门。 图片:Suntech 罗宾维尔太阳能发电场虽然规模不大,但在澳大利亚可再生能源领域首开多个先河。