本文介绍了Schnorr多重签名协议MuSig2,它通过聚合多个参与者的签名碎片为一个签名,降低交易体积并提高验证效率,从而提升隐私性。文章详细解释了MuSig2的公钥生成和交易签名过程,并探讨了其与传统多签名方案的区别与优势,最后还提及了密钥取消攻击的防范手段。
本文深入探讨了比特币隐私技术,对比特币交易中接收方、发送方、交易额和交易逻辑四个方面的隐私保护技术进行了分类和详细分析。文章讨论了HD Wallet、CoinJoin、机密交易、Taproot等多种技术方案,并分析了各自的优缺点以及对比特币生态的影响。
Taproot 是比特币自 2017 年隔离见证(SegWit)升级以来的最大升级,它通过引入 Schnorr 签名、Taproot 和 Tapscript 等技术,提升了比特币的可扩展性、隐私性,并为未来的创新打开了大门,例如 Scriptless Scripts、MuSig、适配器签名、PTLC、DLC 等。
本文对多重签名、聚合签名和阈值签名进行了比较,重点介绍了MuSig2和FROST两种方案。多重签名简单但效率较低,聚合签名提高了效率但较为 rigid,阈值签名则更为灵活。MuSig2通过密钥聚合和两轮签名实现高效多重签名,FROST则采用分布式密钥生成和半信任签名聚合器实现阈值签名。
该文档提出了一个新的SegWit版本1输出类型,其花费规则基于Taproot、Schnorr签名和Merkle分支。Taproot旨在提高比特币脚本功能的隐私性、效率和灵活性,而无需添加新的安全假设。文档详细介绍了Taproot的设计、规范、构造以及花费Taproot输出的方法,并讨论了安全性、测试向量、基本原理、部署和向后兼容性。
Nunchuk 发布了新的 Taproot 多签名钱包,利用 Taproot、Schnorr 签名和 MuSig2 协议来增强隐私性和降低手续费。Taproot Multisig 具有强化隐私性(链上交易与单签名无异)、降低手续费(签名合并降低交易体积)和可证明的安全性等优点。但需要参与者之间进行两轮签名通信,该钱包目前为测试功能,存在一些限制,例如仅支持软件密钥。
本文介绍了基于ECDSA(椭圆曲线数字签名算法)的适配器签名技术,详细解释了其签名、解密和验证过程,以及如何通过离散对数等价证明(DLEq)来确保签名的有效性。
本文介绍了在闪电网络中使用Schnorr适配签名的方法,以解决当前闪电网络中使用的常见秘密导致的隐私问题和中间节点串通窃取费用的问题。文章详细说明了Alice向Bob支付的过程,以及通过中间节点支付的具体步骤。
本文介绍了适应性签名(Adaptor Signature)的基本理论,包括其在Schnorr签名和ECDSA签名中的应用。文章详细解释了适应性签名的构造、单签名者与双签名者场景下的应用,并探讨了其在不同场景中的实现方式。
本文介绍了在Schnorr签名基础上使用适配器签名进行跨链原子交换的两种方法:使用哈希秘密和使用两方适配器签名。文章通过Alice和Bob的交易示例详细解释了这两种方法的原理和实现过程。
本文介绍了FROST(Flexible Round-Optimised Schnorr Threshold)方法,它是一种将密钥分割成多个碎片并在达到阈值数量后恢复密钥的技术。FROST通过分布式签名实现阈值签名,其中n个参与者中的任何t个都可以生成有效的签名,同时探讨了其在加密货币交易、身份验证和密钥恢复等领域的应用。
本文对比了TumbleBit和CoinJoin两种比特币链上隐私技术。TumbleBit通过Tumbler验证身份进行混币,而CoinJoin则要求用户支付相同数额以混合交易。文章分析了两种技术在速度、费用和匿名性方面的优缺点,并探讨了机密交易和Schnorr签名等未来技术对它们的影响。
本文是 Tim Ruffing 在 TABConf 2022 上的演讲稿,主要介绍了 ROAST 协议,该协议是在 FROST 协议的基础上构建的,旨在解决 FROST 协议在异步网络中可能出现的拒绝服务 (DoS) 攻击问题,ROAST 通过并行运行多个 FROST 会话,并巧妙地管理签名人的状态,实现了在异步网络中的健壮性和抗 DoS 特性。
本文介绍了比特币的Taproot升级,包括默克尔分支(MAST)、Taproot本身以及Schnorr签名。Taproot升级旨在提高比特币的隐私性、效率和可扩展性,通过合并pay-to-key和pay-to-script输出类型,并使用新的签名哈希模式和强制执行MINIMALIF等改进,为未来的升级铺平道路。
本文讨论了以太坊协议设计中的封装复杂性与系统复杂性之间的权衡。作者阐述了这两种复杂性的定义,并通过多个密码学和经济学的例子(如BLS签名与Schnorr签名、ZK-SNARKs与欺诈证明)探讨了如何在协议设计中做出选择。设计复杂性的减少并不总是单一的解决方案,而是在面对不同复杂性的权衡时需要灵活判断的问题。