本文讨论了比特币默克尔树构造中的安全弱点,包括区块熔融性漏洞和针对轻客户端的攻击。区块熔融性允许攻击者创建与原区块具有相同默克尔根的无效区块,从而导致共识分裂。针对SPV客户端的攻击则允许攻击者欺骗客户端,使其相信一笔无效交易已在区块中得到确认。文章还探讨了已有的和潜在的缓解措施,以解决这些漏洞,像是禁用64字节的交易。
比特币的区块头中包含了一个对该块所确认的交易集合的承诺,这是用交易的 id(交易的连续两次 SHA256 计算的哈希值)构造出一棵默克尔树、然后在区块头中包含树根,来实现的。相应地,凭借它,我们可以向一个比特币轻客户端证明某一笔交易被某一个区块确认,办法是提供从树根到交易的默克尔路径。
本文回顾了Matt Corallo的“共识清理”提议,评估了该提议旨在解决的bug的严重性,并探讨了改进措施。作者认为时间扭曲漏洞非常糟糕,最差情况下的区块验证时间令人担忧,并建议修复BIP30验证以及限制传统交易体积上限。此外,还讨论了使用64字节交易的默克尔树攻击,并提出了更多清理建议,以确保软分叉能够尽可能细致地分析所有可以加入的修复措施。
本文深入探讨了比特币Layer2扩展方案,特别是依赖于限制条款的方案,分析了通道、虚拟UTXO等设计模式,以及闪电网络、Ark等具体实现。文章还讨论了交易池策略、软分叉提议(如OP_CAT、CTV、SIGHASH_ANYPREVOUT等)以及各种攻击向量,并对未来的发展方向提出了建议,例如优先激活共识清理和CTV软分叉。
Taproot Assets 协议 是一种在比特币上表示基于 UTXO 的资产的协议。本文致力于解释 TAP 是如何创建和转移资产的。
共享UTXO 让多个用户共享对一个UTXO的所有权、让他们的资金寄身于同一个UTXO中。
本文深入探讨了“共享UTXO”的概念,分析了其面临的基础问题,以及诸如通道工厂、Statechain和ARK等常见设计的形式和特性。文章详细阐述了共享UTXO内部状态表达形式和vTXO类型如何影响离线用户,进而影响共享UTXO的实用性和用户体验,并对各种多方链下更新机制进行了介绍。
本文介绍了如何在 Windows 电脑上使用 ESP32 开发板烧录固件,从而制作一个低成本的 Jade-DIY 硬件签名器。文章详细说明了硬件选择、环境配置、固件编译和烧录的步骤,并对比了实验性烧录和安全烧录的流程,强调了启用 Secure Boot 的重要性。
总结了最近披露的影响 0.21.0 以前版本的 Bitcoin Core 软件的安全漏洞。为方便读者判定自己正在使用的软件版本的安全性,按照修复的时间倒序重新排列了漏洞的叙述。使用越新版本的用户需要严肃阅读的部分越少越靠前。
本文总结了Bitcoin Core 0.21.0 以前版本中存在的多个安全漏洞,按照修复的时间顺序倒序排列,方便用户评估其软件版本的安全性。这些漏洞包括网络分裂、交易审查、拒绝服务攻击、内存崩溃以及远程代码执行等,都会影响旧版本软件的安全性。