Schnorr 签名系列:门限签名

互联网 阅读 713 2024-04-28 15:26:27

作者:Nadav Kohen

来源:https://suredbits.com/schnorr-applications-threshold-signatures/

前篇中文译本

今天的 Suredbits Schnorr 签名系列,我们会开始讲解门限签名方案!我们会介绍门限签名的几种用途,然后提出三种构造门限签名的方法,每一种都有自己的优缺点。最后一种(可能也是最让人激动的一种)门限签名实现是 FROST,将使用一篇博客的篇幅来讲解,所以,也请期待下一篇文章。

Schnorr 签名系列









门限签名是这样一类签名方案:n 个参与者共有一把密钥(就像 MuSig 多签名方案),但只需其中任意 t 个参与者合作,即可为这个共有密钥生成有效的签名。我们把这样的方案叫做 t-n 签名方案(在比特币的世界里面大家也经常使用 m-n 的表述)。大多数比特币爱好者都知道这个概念和术语,因为比特币有一个内置的门限签名方案,就是脚本编程语言中的 OP_CHECKMULTISIGNATURE 操作码。

但是,这个操作码会把所有参与者的公钥和阈值要求都在链上公开,那么,像往常一样,我们希望把我们合约的所有细节都隐藏起来,在链上只公开一个公钥和签名。并且,结果跟普通的单公钥支付越像越好。

在研究可以达成这个目标的两种办法之前,我们先来看看门限签名的一些强大的用法。

门限签名.png

用途

大体上,门限签名的用法可以分为三类(当然也不是那么泾渭分明的):

  1. 由控制资金的(也许可信的)外部实体组成的联盟

  2. 由控制资金的内部人组成的联盟

  3. 由内部人和外部人共同组成的联盟

除了我们下面要讨论的,门限签名还有很多用法,我只希望下面的讨论能给读者一些门限签名用法的印象,让读者有兴趣读完剩下的部分。

托管

上面的第一个类别可以不严谨地称为 “托管” 场景,既包括字面意义上的托管,也包括其它形式的比如侧链。

门限签名一直被认为是在需要信任的方案中提高安全性、抵御腐败和勾结的最简单的方法。举个例子,如果某个合约的参与者希望把他们合约的强制执行权交给被信任的外部实体,那显然交给一个 t-n 的团队会比交给单一一个主体要好。因为贿赂的成本显著上升了,攻击者不是只腐化一个主体就行,必须能贿赂 t 个托管方。更进一步地,t < n 也很有用,即使某些托管方联系不上了(例如,被政府关停了)或者不配合(例如被黑了),合约也仍然是安全的。可以从门限签名方案中受益的托管解决方案包括:Smart Contracts Unchained、谨慎日志合约(DLC),等等。

另一个不那么像托管、但我会松散地把它归入这一类的是侧链(比如 Liquid),它需要你信任某个联盟(以门限控制结构联结的团体),你在主链上给他们发送资金、在链下(咳咳,比特币的链下)收到侧链 token。资金也可以从侧链上取回到主链上,前提是联盟里有足够数量的成员保持诚实。

密钥管理

托管场景的相反方向,可以概括地称为 “密钥管理” 场景。也就是一个人要使用多个密钥来保护自己的资金。你可能会奇怪,谁会有这种需要呢,但答案就跟我们喜欢有门限结构的托管方、不喜欢单一一个托管方,很相似。如果你用 t-n 的门限方案来保管自己的资金(通常是 2-3 或者 3-5),那么即使你的某个(或者某一些)密钥被盗取或者弄丢了,你也不会丢失资金!只要你仍然拥有 t 个密钥即可。这种方案,在你的某些密钥以极为安全且相互隔离的办法保管时,极为有用。举个例子,你可以使用一个冷密钥、一个交给安全公司的密钥、和三个热密钥(一个放在家里、一个放在办公室,还有一个放在手机上)。这个 3-5 的方案,在你掌控所有 3 个热密钥的时候能正常花费资金,而即使你弄丢了一部分密钥,只要你还有一个热密钥,你就可以安全地把资金转移。

这样的密钥管理方案,对交互式协议比如闪电网络来说,也是有用的。未来,闪电节点可能会保管一大笔资金,那时候只用保管在一个地方的一把私钥(还必须是在线的)来控制全部资金,也是不安全的。,而门限方案,就像上面说的那样,可以让闪电节点更加安全。

集体资金

最后一种值得一说的的用途是集体资金。比如,夫妻共同拥有的资金可以存入一个 “共同账户”(虽然对于大多数情形来说,MuSig 已经能胜任了),或者一个控制支出的委员会,需要 t-n 的成员参与才能授权使用资金。

使用 MuSig + Taproot 来实现

实现门限签名有很多种办法,有一种我们已经讨论过了。回到 MuSig 那篇博客(中文译本),我们已经讲到了 Taproot 可以让输出包含一棵隐藏的支付条件树。所以,举个例子,如果我们希望在 Alice、Bob、Carol 之间以公钥 A、B、C 形成一个 2-3 的门限签名输出,但又希望这个输出看起来就像一个普通的单公钥输出,我们可以把下面三个条件都放到这棵树上:

  • MuSig(Alice, Bob)

  • MuSig(Alice, Carol)

  • MuSig(Bob, Carol)

而这个输出实质上就成了一个 2-3 的门限输出!

这个方案的好处在于它是完全非交互的,意思是 Alice、Bob 和 Carol 无需为了构造这个输出而交换信息。而它的主要缺点在于,在花费的时候,这个输出跟普通的单公钥花费还是有区别的,因为必须公开有这棵树(但不需要公开树的全部内容)。有两个小的缓解措施,一个是你可以把 3-3 的 MuSig 公钥放在树的顶端,这样如果你们三个一致同意花费,就无需公开这棵树,交易看起来跟普通的非合约支付没有区别。另外,你也可以把上面三种情形中最有可能的一种放在树的根部,而另外两种隐藏在树上,这样,只要树的顶端情形中的双方一致决定花费,就无需公开这个树(因此也无需公开另外两种情形)。

这个方案另外的一大缺点是,需要添加到树上的条件的数量会随着参与者数量的增加变得非常多,而且 t 越接近 n 的 1/2,情形就越明显。例如,2-3 门限签名有 3 种情形,3-5 有 10 种情形,4-7 有 35 种情形,5-9 有 126 种情形,而且这个序列会呈指数级增长,所以 13-25 有 520 0300 种情形!这就意味着以其中一种情形花费时需提供的默克尔证明有 23 个哈希值那么长!对于大部分情形来说这都不是一个问题,因为我们假设实在一个小规模的团体中使用多数决的门限签名,但如果涉及到很多密钥,这可能是一种低效而且隐私性很差的方法。

使用 MuSig-DN + 适配器签名来实现

另一种最近才提出的、在托管场景中实现门限签名的方法是运用是适配器签名(中文译本)以及来自 MuSig-DN 的核心构造 —— 伪随机函数(PRF)和相应的非交互式零知识(NIZK)证明系统。别担心,我不会在这里讲解它们两个的细节,你只需要知道,从 MuSig-DN 的论文中,我们知道了如何构造一个可验证的加密函数(Verifiable Encryption function) VEnc(x, E),它会返回用公钥 E 加密 x 的结果(所以只有 E 对应私钥的主人可以解密它),以及一个零知识证明,证明当 E 对应私钥的主人解密这个数值时会得到 x * G 的私钥。我们管它叫可验证的加密函数,是因为它是一个加密函数,同时密文只需使用公开信息(公钥)来验证。

有了这个函数(以及相应的解密函数 VDec(VEnc(x, E), e) = x),我们就能像我在 PTLC 系列博客的 “单调访问结构” 那一篇里说的那样,构造 “OR 点(OR Point)”。即,如果我像构造一个支付条件,要么公钥 A 的标量公开、要么公钥 B 的标量公开(这是一种点时间锁合约,比如 A 和 B 可以是一个断言机的签名点),即可花费资金,那我可以给出一个适配器签名点,其适配点是一个随机的点 X;然后我用两个点作为公钥来加密 X 的标量 x:c1 = VEnc(x, A), c2 = VEnc(x, B);随后我再把这两个加密值发送给我的交易对手。那么,无论我的对手知道 a 还是 b,都可以解密出 x,然后我的适配器签名就可以通过 x 来补完。

说得再准确一点,考虑一个简单的托管合约,Alice 想给 Bob 支付,只要后者为她提供一项服务。双方都信任 Erin 作为公平的仲裁者,但 Erin 现在不知道他们结成了这样一个合约。Alice 把自己发到了一个他和 Bob 的 MuSig 输出里面,并向 Bob 提供了一个向 Bob 支付资金的适配器签名(而 Bob 也向 Alice 提供了一个普通的签名,该交易会在一段时间之后把资金发回给 Bob)。这个适配器签名的适配点是 X,Alice 先生成了 x,然后使用公钥 A 和 E 来可验证地加密 x,然后把两个加密值都发给了 Bob。

Bob 提供了服务之后,他向 Alice 要求支付。如果 Alice 是个爽快人,她可以向 Bob 揭示 a,使后者能解密出 x 并使用它来补完 Alice 的适配器签名并拿走资金。不然,Bob 可以向 Erin 请求仲裁,Erin 既可以决定站在 Alice 一边,也可以站在 Bob 一边,如果使后者,Erin 可以把 e 给 Bob,这样 Bob 就可以解密出 x 并拿走资金。

这第二种方案不需要在缔结合约时与托管方交互,但在参与方之间需要比 MuSig + Taproot 方案更多的加护。这个方案的另一个不利之处在于,它只支持单向的支付;但这也不像它听起来的那么差,因为多方可以自动在不同方向上建立多个单向支付来跨越这个限制。这种方案(除了可以兼容闪电网络以外)的好处是,它最终呈现在链上的交易也跟普通的单公钥支付没有区别,也不需要用到 Taproot 魔法!

要了解这种方案的更多细节,请看 Jonas Nick 的这篇 Gist。

我们现在已经知道门限签名方案可以用在哪里,以及两种实现门限签名的方法了,但即使如此,也还有很多可以讨论的。在下一篇文章,我们会探究 FROST,最优轮次的灵活 Schnorr 门限签名!你可以认为这是把 MuSig 延伸到了门限签名中,但细节有很多,都在下一篇文章,敬请期待!

(完)

免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:返回栏目 下一篇:Schnorr 签名系列:批量验证

相关资讯

  • Farcaster/FT/UXLINK/Cyber,如何寻找Socialfi的北极星指标
    Farcaster/FT/UXLINK/Cyber,如何寻找Socialfi的北极星指标

    社交产品旨在帮助用户建立社交关系、传递信息和拓展社交网络。Web3的社交产品具有金融化特点,如何基于社交网络发行资产是其核心。本文分析了几款发展良好的SocialFi产品,如Farcaster、FriendTech、UXLINK和CyberConnect,探讨了它们的增长路径。其中,UXLINK是最火爆的区块链社交基础设施,活跃钱包数量高达729.5k。未来,可以关注基于熟人社交网络的资产发行。.....

    每日资讯 2024-05-19 11:01 189
  • 一览检查代币是否为诈骗的8种方法
    一览检查代币是否为诈骗的8种方法

    本文介绍了八种方法来识别区块链项目中的诈骗,包括验证代币合法性、检查代码、查看评论、比对黑名单、检查流动性和使用第三方工具。使用DEX时,要检查交易量、交易笔数和用户数量。使用第三方工具可以帮助评估代币的真实价值。遵循这些建议可以避免被骗取资金。.....

    每日资讯 2024-05-19 11:01 567
  • Farcaster:SocialFi板块领导者
    Farcaster:SocialFi板块领导者

    Farcaster是一个去中心化的社交网络协议,通过智能合约和混合存储技术实现用户之间的社交连接、内容分享和数据所有权。它的团队具有强大的行业背景,项目运行速度快,用户体验好。与其他SocialFi项目相比,Farcaster具有更多的能力和优势,使得用户更容易接受和使用。Farcaster的生态系统包括70%的代币分发给社区,15%分配给流动性池,剩余的15%将分配给团队、投资者和生态系统。Farcaster通过独特的框架和Frames插件,改变了传统SocialFi项目的数据存储方式,成为Social

    每日资讯 2024-05-19 11:01 956
  • Glassnode链上周报:跨多个时间框架识别卖方疲劳
    Glassnode链上周报:跨多个时间框架识别卖方疲劳

    长期投资者在牛市中获利,损失主要来自短期持有者。我们使用年龄分解指标来描述日交易者和每周-每月投资者群体中的卖方疲劳情况,并利用链上指标评估目标投资者群体的未实现和实现亏损。市场转折点从内向外展开,利用卖方疲劳框架识别修正和整合期间的转折点。通过评估MVRV比率、SOPR和实现亏损,我们可以识别卖方疲劳的时期。新发布的细分指标帮助我们隔离出个别投资者子集,并通过三个链上指标来识别微型投降点。该框架帮助我们思考在识别卖方疲劳点时应该看到的激励和行为。.....

    每日资讯 2024-05-19 11:01 218
  • 解码dYdXChain:去中心化衍生品交易的未来方向?
    解码dYdXChain:去中心化衍生品交易的未来方向?

    dYdX Chain是一家老牌去中心化衍生品交易平台,经历多次迭代后于2023年推出完全去中心化的区块链。其订单簿由60个活跃验证者管理,实现高吞吐量和可定制性。DYDX代币激励用户提供流动性和参与治理,已向质押者分配超过2000万美元的USDC。dYdX的成功案例展现了独立链的前景,但难以复制,稳妥的方案是在不断堆栈中优化。.....

    每日资讯 2024-05-19 11:01 98
  • BanktoBlock:解读区块链时代的「银行杀手」RWA
    BanktoBlock:解读区块链时代的「银行杀手」RWA

    区块链技术崛起改变了传统金融行业,打开了真实世界资产的数字化市场。RWA代表着一个32万亿美元的机遇,将加速DeFi的发展并弥合传统金融和加密资产之间的鸿沟。RWA的好处包括增加透明度、降低成本、提高流动性和市场效率。机构投资者对Token化产品的兴趣日益增加,预计未来会有更多大型参与者进入市场。RWA领域可以分为抵押借代和非抵押借代,预计抵押借代将是未来的主要增长来源。虽然面临挑战,但RWA作为数万亿美元的机遇,有望成为加密领域的下一个前沿。.....

    每日资讯 2024-05-19 11:01 1007
  • 一文速览2024年顶级加密AI项目
    一文速览2024年顶级加密AI项目

    Token Metrics Moon Awards是备受赞誉的加密货币行业奖项,旨在表彰对该领域做出重大贡献的平台、项目和创举。最新新增类别是《2024年顶级加密货币人工智能项目》,预计主导加密货币领域的最佳人工智能项目包括Token Metrics、Bittensor和Fetch.ai。这些项目通过创新的解决方案推动加密货币行业发展,但也存在投资风险。Token Metrics和Bittensor是领先的人工智能加密货币项目,提供全面的分析平台和数据API,并将于2024年采用Web3,支持去中心化并为

    每日资讯 2024-05-19 11:01 518
  • 潜在的Solana游戏龙头NyanHeroes
    潜在的Solana游戏龙头NyanHeroes

    Nyan Heroes是一款第三人称FPS射击游戏,使用虚幻5引擎,由Mechanism Capital领投。游戏代币$NYAN将用于奖励活跃玩家、交易稀有物品和皮肤,团队也可以从玩家身上赚钱。游戏团队来自知名游戏制作团队,Nyan将是游戏生态的核心。玩家可以通过市场交易获得收入,团队也可以从活跃玩家身上赚钱。Nyan有机会吸引更多的Web2玩家进来,估值可能在300M-500M之间。.....

    每日资讯 2024-05-19 11:00 518