干货|深入探索比特币的安全模型
安全模型误区
另外,每个区块链系统都将创世块硬编码到了节点软件中。你可能会觉得,“共享历史”是一种社会契约——一旦某个区块的历史足够悠久,网络中的所有参与者之间都会达成共识,认为这个区块永远都不会被回滚。当开发者选定一个早期挖出的区块并用它来创建检查点时,更多是作为一种公认的完整性检查,而非对历史的客观描述。
除了检查点之外,节点如何实现自引导也是一个问题。目前,比特币节点的自引导流程是检查节点是否在本地存储了之前从对等节点那里了解到的数据。如果没有的话,节点将查询一组被硬编码到软件中的“DNS种子”。这些种子负责维护一个连接良好的比特币节点的列表,并将这个列表返回给你的节点。
正如我们可以从代码中看到的那样,BitcoinCore0.13目前使用由PieterWuille、MattCorallo、LukeDashjr、ChristianDecker、JeffGarzik和JonasSchnelli运行的DNS种子。任何人都可以使用PieterWuille的比特币种子生成器软件或?MattCorallo的软件来运行DNS种子。但是,他们必须说服某个全节点实现的开发者将他们的DNS种子主机添加至对方的软件。
哥伦比亚房地产平台宣布允许用户使用比特币购买房产:12月27日消息,哥伦比亚房地产平台La Haus宣布,允许用户使用比特币购买房产。为启动此计划,La Haus在圣玛尔塔的一个专属地区推出了名为Natura City的新住房项目,该综合体的建设预计将于2025年完工。据悉,La Haus已与支付处理器OpenNode达成合作支持用户通过闪电网络支付。(bitcoin)[2021/12/27 8:07:18]
新节点的引导过程仅仅依赖6个DNS种子,这看似又是一个极端中心化的单点问题。但是别忘了,比特币的安全模型只需要你连接到一个诚实的对等节点,就足以抵御女巫攻击。
因此,一个新的节点只需能够连接到一个没有遭受攻击的DNS种子即可,这个种子会返回诚实节点的IP地址。但是,为了防范所有DNS节点因某种原因全都无法访问的情况,还有一个备用方案——一个被硬编码到软件中的可靠节点IP地址的列表,会随着每个新版本发布而更新。
在围绕这些初始化参数构建的安全模型下,全节点运营者不需要信任X个DNS种子或Y个BitcoinCore软件开发者会向他们提供真实的数据,只需要相信有1/X的DNS节点没有遭受攻击,或1/Y的BitcoinCore软件开发者会诚实地审查被硬编码的对等节点更改的有效性即可。
COT周报:比特币反弹还会延续,但力度可能减弱:由于本周Dealer账户没有变化,比特币在长期价格趋势上依然偏空头。但Asset Manager本周持仓出现多头上涨,空头下降的变化,我们认为下周现货市场依然会维持反弹的格局。另外,相比前一周空头数据的大幅下降,本周空头数据下降幅度收窄,反弹力量可能会减弱。从机构多空比来看,虽然数据在反弹,但依然处于非常低的状态,反弹并不会非常强势。投资者在投注多头策略时应注意仓位与风险。注:Dealer(做市商)代表市场卖方,该类账户主要针对市场做对手盘。即如果账户表现为净多头则代表市场空头持仓较多,而净空头持仓则代表市场中多头持仓占优。Asset Manager(大型基金)代表市场中的投机资金,该类账户的净持仓则代表了机构的押注方向。[2020/4/4]
没有绝对安全性
从更深层次来看,你在运行一个全节点时,会在一定程度上信任你正在运行的硬件和软件。
你可以采用多种方法将你的二进制文件的签名与?vanderLaan的进行核对,以此验证软件是否可靠,但是很少会有人愿意惹这个麻烦。至于如何验证硬件的可靠性,这是个棘手的问题。如果你需要一个安全的硬件解决方案,最接近的选择是?ORWL。如果有人试图篡改ORWL,会触发它的“自毁”机制。
报告:加密鲸鱼或在此轮比特币暴跌中扮演了重要角色:在比特币此轮暴跌中,加密鲸鱼的作用不可小觑。根据Arcane Research报告,3月12日,曾有一名十年前的比特币矿工将1000 BTC转移至交易所。这些资金转移后,比特币的价格开始大幅下跌。报告还称,另一个值得注意的鲸鱼运动与PlusToken有关。在3月7日至8日期间,逾1.3万枚比特币通过混币服务被发送到交易所。这些BTC可能被抛售,并会持续更长的一段时间,这也可能是3月12日周四市场暴跌的部分原因。而根据Digital Assets Data的一份报告,鲸鱼钱包的数量平均增加了,但其实每次减半的年份都是如此,2020年也不例外。(AMBCrypto)[2020/3/15]
但是,由于CPU、RAM等重要硬件通常都是专有的,你永远也无法100%确定它们不会遭到入侵。
比特币的分权制衡
当你开始研究比特币系统中不同参与者之间的关系时,会发现自己如坠五里雾中。
声音 | VanEck数字资产总监:SEC和监管机构还未对以实物结算的比特币ETF作好准备:VanEck数字资产战略总监Gabor Gurbacs在最近的采访中透露,SEC和监管机构还未对以实物结算的比特币ETF作好准备。其进一步指出,监管机构在这方面的落后可能不利于公共利益,希望监管机构最终能够意识到这一点并有所改善。Gurbacs还表示,市场结构的发展以及控制措施的改进可能会导致SEC对比特币ETF持乐观态度。(AMBcrypto)[2019/10/31]
运行全节点的目的是保护你的金融主权。这就意味着,一旦你安装并运行了特定版本的软件,即表明你与该软件以及其他所有网络参与者都达成了一项协议——不仅你会遵守该软件的规则,而且其他网络参与者也必须遵守这些规则。
因此,如果人们想要对软件的规则做出无法向后兼容的更改,你必须运行新版本的软件来表示你明确同意这些规则更改。另一方面,如果是向后兼容的规则更改,即使你不同意,也可以在网络中实行。
有人高度概括了比特币内部的分权制衡:
美国前国务卿约翰?克里:坚信比特币有价值:美国前国务卿约翰?克里在接受新闻网站 Cointelegraph 独家专访时表示,数字资产是本届达沃斯经济论坛的议题之一,“因为比特币是有价值的”。比特币和区块链成达沃斯论坛重要话题,美国前国务卿坚信比特币有价值。[2018/1/28]
比特币治理的三大权力部门:
全节点
矿工
开发者
需要注意的是,全节点软件不会自动更新,这是设计使然。自动更新会导致权力的天平向开发者倾斜,让开发者可以在未经节点和矿工许可的情况下强制更改规则。
可惜的是,虽然规则更改在技术层面上有可能是向后兼容的,但是多年来的经验告诉我们足够有创意的软分叉也是可以实现违背旧版本规则的更改的。例如,VitalikButerin曾经提过这样一个设想:通过软分叉将比特币的区块时间从10分钟缩短到2分钟,这必然会加快比特币的发行速度。
面对不喜欢的软分叉,全节点有一张王牌:利用硬分叉与其他支持软分叉的矿工划清界限。这执行起来很难,而且引发了关于如何衡量共识和找到经济比重高的节点等诸多问题。
从技术上来说,这种硬分叉可以通过将挖矿算法从双SHA256改成另一种哈希函数来实现。一旦成功,所有SHA256ASIC矿机将无法用来挖比特币。因此,节点运营者应该时刻警惕比特币生态中发生的变化,并提醒矿工越权会有被取代的风险。
许多博弈论都会讨论矿工操作及其对比特币安全性的威胁,我在之前的文章中推测了挖矿生态可能会发生怎样的变化。虽然比特币挖矿的中心化程度不尽如人意,但是迄今为止依然运作良好。这是因为比特币矿工投入了大量资金,他们不会冒着巨大的损失在一个受到所有人监视的系统中作恶。
SPV安全性
很多比特币用户使用轻量级客户端而非全节点访问网络,因为前者需要消耗的资源要少得多,但依然能够提供很强的安全性。
使用简易支付验证的客户端会下载整条链上所有区块的区块头的完整副本。这就意味着,自比特币诞生以来,下载和存储需求会随时间的推移呈线性增长。详情见比特币白皮书的第8节。
中本聪在白皮书中写道,SPV客户端“无法自行验证交易,但是通过把交易与区块链关联起来,它可以看到网络中的节点已经接受了该交易,随着越来越多区块上链,则进一步证实网络已经接受了该交易”。SPV假设经过X个区块确认后的交易伪造成本极高。
SPV看似具备堪比全节点的安全性,但是它引入了额外的假设:只要一个区块的区块头和工作量证明有效,它包含的所有交易也都是有效的。因为SPV客户端不会验证本文第1节中提到的所有共识规则,所以它们假设响应交易查询请求的节点已经验证过了共识规则。
另一个较小的安全性差异在于对等节点有可能向你隐瞒信息。如果你运行了一个全节点,对等节点可以向你隐瞒未确认的交易和区块。但是,一旦你从对等节点那里获得了一个区块,就没人可以向你隐瞒这个区块中的任何交易。另一方面,如果你运行的是SPV客户端,对等节点有可能向你提供区块头,然后隐瞒对应区块中的交易信息。
SPV客户端可以查询某个地址的相关交易。尽管对等节点使用虚假交易来SPV客户端会付出很高的代价,但是它们可以谎称SPV客户端用来查询交易的布隆过滤器没有结果。另外还要注意的一点是,由于布隆过滤器的缺陷,SPV在隐私性上遭受了严重破坏。
BitcoinJ在一篇文章中很好地阐述了SPV的安全性模型。关于未确认交易,他们指出:
在SPV模式下,只要你所连接的节点将某个交易转发给你,你就只能相信这个交易是有效的。如果攻击者能够确保你所连接的节点都是他的,就可以向你发送一个完全无效的交易,而你会认可这个交易是有效的。
对于普通用户来说,SPV的安全性已经“足够高”了。尽管如此,我们还可以利用SPV欺诈证明对其进行改进。虽然人们已经就欺诈证明进行了一些讨论,但是关于如何将它们构建到比特币协议内的提案尚未实现。
比特币网络没有127.0.0.1
如果你没有运行全节点,那你至少要在一定程度上信任第三方,这会导致安全性模型产生差异。请注意,这不需要所有用户和企业直接在BitcoinCore的RPCAPI上构建他们的软件。
一些替代基础设施配置包括但不限于:
1)使用安卓版比特币钱包、GreenAddress?或?Stash?等移动钱包配置仅查询你自己的全节点的钱包。
2)在SPV节点库上构建应用并将这些应用设置成仅连接你自己的全节点。在BitcoinJ中,这可以通过定义你自己的?SeedPeer?并在初始化过程中将其传递给你的?PeerGroup?来实现。通过libbitcoin,你可以使用该示例定义与特定节点的网络连接。
3)构建一个兼容BitcoinCore的JSON-RPCAPI的代理服务器。这个API不仅会向第三方服务发送一些调用,也会通过调用本地全节点自动验证第三方服务返回的数据。BitGo的BitGoD软件就是一个例子。这种混合模型可以达到两全其美的效果:你可以使用第三方提供的高级功能,同时保留自己的金融主权。
全节点:为自由故
显然,运行自己的全节点是最安全的方案,需要的假设也最少。构建一台能够运行可靠全节点的计算机只需几百美元。你不妨算一下这笔账,再决定是否值得付出这些来保护自己的金融主权。
感谢KristovAtlas、EricMartindale、AndrewMiller和KiaraRoble对本文的审阅和反馈。
北京时间周四凌晨,美联储宣布维持零利率水平和每月1200亿美元的购债规模不变,并表示可能会在11月份的会议上正式缩债,符合市场预期。但美联储将加息时间提前至明年.
1900/1/1 0:00:00DeFi数据1.DeFi总市值:1224.11亿美元 DeFi总市值数据来源:Coingecko2.过去24小时去中心化交易所的交易量:45.
1900/1/1 0:00:00DeFi?已经历了逾一年的井喷式发展。从稳定币板块的Maker,到借贷板块的?Compound、Aave,再到?DEX板块里的?Uniswap,自去中心化金融的概念兴起以来,龙头项目们往往会作为.
1900/1/1 0:00:00金色财经报道,美国证券交易委员会(SEC)主席根斯勒(GaryGensler)周二表示,他希望将加密货币“纳入公共政策框架”,希望确保加密货币处于监管范围内并满足政策目标.
1900/1/1 0:00:00风投基金将不得不适应新生事物,其中的人不应成为资本的守门人,而应致力于将现有人脉网络和专业知识移植到DAO经济中.
1900/1/1 0:00:002021年5月,金色财经面向优秀专栏作者,开放了平台推荐通道;通过推荐关注、首页推荐位、月度榜单等形式将专栏作者触达给更多的金色用户,给予优秀专栏作者更多的推荐曝光和频道展示机会.
1900/1/1 0:00:00