SINGLESIG与MULTISIG:比特币自我托管方法比较

区块链2年前 (2024)更新 qkledit
361 0

如果您想消除所持比特币的托管风险,您必须进行自我托管。比特币的保管权由拥有控制比特币密钥的人决定——如果你不持有比特币的密钥,那么其他人就持有比特币的密钥。俗话说,不是你的钥匙,不是你的硬币。

一旦有人决定自行保管比特币,下一个问题就变成了如何去做。大多数人很早就发现硬件钱包是使用比特币密钥最安全的方式。然而,选择并不仅仅限于选择硬件钱包; 您还可以在单​​签名、多重签名和其他一些技术之间进行选择,这些技术决定了花费您的比特币所需的条件。在本文中,我们将研究这些选项并将它们相互比较。

SINGLESIG与MULTISIG:比特币自我托管方法比较

单签

单签名描述了一种钱包结构,其中只需要一个私钥即可签署支出比特币。它是最古老、最基本的持有比特币的方法。由于这些原因,目前比特币总供应量的 70% 以上都是以这种方式持有的。

尽管设置和使用相当容易,但许多人发现 singlesig 并不能提供足够的舒适度。只有一把钥匙,总会出现单点故障,导致资金损失。例如,如果您的单签名密钥丢失,那么您将无法再访问您的比特币。或者,如果您的钥匙落入坏人之手,小偷可以同意将您的比特币转移到他们自己的钱包中。

重要的是要记住,比特币私钥只是随机生成的秘密信息。该信息可以通过硬件钱包等离线工具生成,但也应该作为种子短语进行物理存储。这意味着要保证一组 12 或 24 个单词的安全和私密。

即使对于那些非常小心和有条理的人来说,重要的物品也可能因为错误或不可控的情况而丢失。如果丢失的物品恰好是你的比特币财富的唯一钥匙,那将是灾难性的。自然地,人们会积极寻求有助于确保这种情况永远不会发生的策略。让我们探索一些流行的方法!

在我们讨论多重签名之前,有必要先看看人们用来修改单签名安排的一些方法。人们尝试提高单签名安全性的一些方法涉及临时策略,而其他方法则涉及标准化的技术工具。

临时单签名修改

在不了解其他技术的情况下,在单签名钱包中持有比特币的人可能会想到看似可以防止资金损失的简单技术。示例包括制作种子短语的副本、将种子短语分割成单独的部分、对种子短语进行编码或创建多个单签名钱包来分配财富。这些技术都伴随着用户最初可能无法认识到的权衡。现在我们将更详细地简要介绍它们。

种子短语**

**助记词是人们用来帮助​​避免无法访问单签名钱包中的比特币的一种策略。这样做可以提供额外的保护,防止自然灾害或误放。通过在多个不同位置存储种子短语的多个副本,一个位置可能会遭受意外破坏,而您不会失去对种子短语信息的访问权限。

另一方面,应该考虑这种方法的一个重大缺点。在其他基本的单签名安排中,种子短语是人们发现您的钱包余额并从您的钱包中删除比特币所需的唯一项目。换句话说,如果不诚实的人找到您的任何一个助记词副本,他们就可以从您那里窃取比特币。因此,将助记词存储在多个位置会增加发生这种情况的机会。

种子短语分割

由于种子短语通常以 12 或 24 个单词的形式存在,因此一些用户会考虑将单词列表分成几个部分并单独存储。这遵循这样的逻辑:如果小偷设法获取少于完整的单词列表,他们将无法窃取比特币。

然而,在本文涵盖的所有想法中,这个是最有问题的。防盗逻辑是有缺陷的 – 如果小偷设法找到您的助记词的一部分,他们可能更接近能够猜测其余单词并从您那里窃取。除了无法提供预期的保护级别之外,如果任何一个助记词部分丢失,这种方法还会使您作为用户访问您的比特币变得更加困难(如果不是不可能的话)。

种子短语编码

一些 singlesig 用户会考虑对他们的种子短语进行编码,他们的想法是,如果小偷发现了结果信息,他们将无法对其进行解码并获得原始种子短语来窃取比特币。有许多可能的途径可以尝试此操作,包括使用秘密公式来更改单词,或者将助记词隐藏在更大的单词集中。

编码策略越复杂,窃贼通过逆向工程获取比特币的机会就越小。但这是一把双刃剑,因为复杂的编码策略也会增加犯错误的机会,或者忘记如何自己解码结果材料。换句话说,它增加了一个失去比特币访问权限的新途径。

多个单签名钱包

避免“把所有鸡蛋放在一个篮子里”是公认的智慧。如果您将所有比特币都保存在一个单一签名钱包中,那么始终存在的丢失或被盗风险可能是一粒难以下咽的药丸。因此,一些人决定将部分比特币存放在几个不同的单签名钱包中。

此策略的缺点是它增加了复杂性并创建了额外的敏感项目来跟踪。虽然将比特币分散到各个钱包可以消除整个余额的单点故障,但它实际上会为您的大部分财富造成更多的单点故障。例如,如果您创建四个 singlesig 钱包,并将 25% 的比特币分散到每个钱包中,那么您可能会减少损失 * 比特币的机会,但同时也会增加损失 25% 比特币的机会,如果四个钱包中的任何一个无法访问或受到损害。正如我们将在本文接下来的部分中看到的,有一些方法可以消除整个比特币余额的单点故障,而不会引入此问题。

标准化单签名修改

除了上面列出的一些临时方法之外,还有一些标准化工具可以帮助解决单签名钱包的某些风险。其中包括 BIP 39 密码、种子 XOR 和 Shamir 的秘密共享。每个选项都需要权衡考虑。

BIP39 密码

每当您生成比特币密钥时,系统可能会询问您是否要添加密码,或者您可能会在钱包设置中找到执行此操作的选项。密码短语是添加到种子短语中的一组附加字符(类似于第 13 个或第 25 个单词),它们对大小写敏感,可以包含数字或特殊字符。它们于 2013 年作为 BIP39 的一部分作为标准选项与助记词一起引入。如果密钥是使用密码构建的,则始终需要密码来重新创建密钥并花费资金。

如果密钥包含与种子短语分开存储的密码短语,则结果类似于种子短语分裂。对于想要访问比特币的人来说,这两个组件都是必需的,这增加了对盗窃的抵抗力。密码短语实际上可以实现这一目标,而不会产生与助记词分割相同的安全风险,并且它还为诱饵钱包留下了选择空间(仅受助记词保护的资金量较少,允许您振振有词地否认自己拥有额外的资金)可以通过密码发现)。

另一方面,密码短语还会创建另一个可能丢失的关键组件,导致您**失去对比特币的访问权限。如果您以书面形式存储密码,然后它被放错地方或被破坏,您的助记词将不足以重新获得您的资金。如果您尝试记住密码但最终忘记了,您也会面临类似的情况。请注意,简单、易于记住的密码短语很弱且无效,因为攻击者可能会猜到它们。**使用强密码,但这样做并试图记住它是人们在自我保管中丢失比特币的最常见方式之一。

种子异或

Coldcard 硬件钱包背后的制造商 Coinkite 推出了另一种名为 Seed XOR 的解决方案。通过使用一些数学魔法,种子异或允许您将种子短语分割成多个独特的 12 或 24 个单词的种子短语,这些种子短语都需要重新组合才能重现原始种子短语。通过单独存储新的种子短语,这创建了另一种形式的种子短语分割,而没有临时设置中提到的安全风险。它还提供了诱饵钱包的选项,因为每个生成的种子短语组件也可以用作资金量较小的新单签名钱包的密钥。

虽然 Seed XOR 功能作为一个选项内置于 Coldcards 中,但执行拆分或重组所需的数学运算也可以在纸上完成,无需使用 Coldcard 设备。但是,请记住,种子异或包含与我们在前面几节中介绍的类似的缺点。在提供防盗功能的同时,它增加了失去比特币访问权限的机会,因为如果任何一个新生成的种子短语丢失,您将无法重新创建原始密钥并从原始钱包中支出。接下来,我们将研究一些可以避免此问题的技术。

沙米尔的秘密分享

1979 年,著名密码学家 Adi Shamir 制定了一种秘密共享算法,称为 Shamir 秘密共享(SSS)。它的工作原理是获取秘密信息(可能是比特币私钥)并使用它来生成几条新信息,有时称为“碎片”或“共享”。这些股份本身是无用的,必须组合起来才能重现原始秘密。SSS 的特殊之处在于它与种子异或之类的东西不同,它可以被构造为只需要一部分份额来产生秘密,而不是全部。例如,用户可以创建 2-of-3 仲裁,其中存在三个唯一的共享,但可以将其中的任何两个聚集在一起以重新创建秘密。

这种能力非常有用,因为它可以实现类似于前面讨论的一些方法的防盗性,但不会增加丢失的风险——事实上,它可以降低丢失的风险!在 2-of-3 法定人数示例中,发现比特币密钥的 SSS 份额之一的小偷将无法访问钱包中的资金。同时,如果其中一份丢失或损坏,钱包所有者仍然可以用剩余的两份来恢复他们的比特币。

Trezor 硬件钱包的创建者 Satoshi Labs 引入了在创建比特币密钥时使用 SSS 的标准。它被称为“Shamir 备份”,详细信息可以在 SLIP 39 中找到。它在设置 Trezor Model T 时作为一个选项存在,如果选择此选项,设备将生成用户所需的共享法定人数,每个共享以 20 个字表示。这些 20 个单词的集合不能用作诱饵钱包的种子短语(如 Seed XOR),并且不应与其他单词组合来尝试此操作,因为 SLIP 39 使用其自己的特殊单词列表。

SSS 的一个显着弱点是,当使用所需数量的份额来重新组装比特币密钥时(可能是为了从 singlesig 钱包中支出资金),会出现暂时的单点故障。签名时整个密钥必须存在于一个位置,这可能是攻击者利用的一个合适的窗口。对于 singlesig 来说,无论使用何种修改,这都是不可避免的事实。然而,多重签名可以避免这个问题,并消除比特币托管的所有单点故障。

多重签名

最后,我们实现了多重签名,这不是我们迄今为止所涵盖的单签名修改,而是一种根本不同的持有比特币的结构。正如我们在多重签名指南中

所述,多重签名钱包是使用多个唯一密钥创建的。涉及的密钥数量由钱包创建者决定,以及从钱包中支出比特币所需的密钥数量。这些数字以法定人数表示,例如 2-of-3,这意味着有三个密钥,其中两个必须提供签名才能使用比特币。通过消除单点故障,多重签名比单签名提供了更好的安全性,从而保护您的比特币免遭丢失和被盗。虽然并非所有多重签名法定人数都提供这些保护,但像 2-of-3 这样的设置(这是 Unchained 提供的唯一选项)处于**位置,可以为大多数个人和企业充分解决这两类问题。

虽然多重签名仲裁可能与 SSS 仲裁相似,但有一个重要的区别。如果创建交易是为了从多重签名钱包中花费比特币,则每个密钥都可以在不同的时间和地点独立签名。换句话说,虽然 2-of-3 多重签名钱包需要两个密钥来签署提款,但这些密钥永远不需要位于同一位置。事实上,在第一次创建钱包时甚至不需要将密钥放在一起,这对于 SSS 来说并非如此。从安全角度来看,这非常好,而且对于想要由不同成员持有不同密钥来管理比特币金库的一群人来说,这也是一个更方便的结构。

权衡:不便和费用

多重签名为您的比特币提供了强大的安全性,但它的缺点是便利性较差。多重签名使攻击者更难花费你的比特币,但这也会以牺牲最终用户的便利为代价。历史上,涉及多重签名的
交易的挖矿费用也高于涉及单签名的交易(平均)。然而,现在 Taproot 软分叉已经激活,这一事实可能开始改变。随着利用 Taproot 的新技术以及 Taproot 采用率的增加,多重签名交易将具有与单签名交易相同的费用结构。

DIY 与协作托管

由于多重签名比基本的单签名钱包的设置和使用更加复杂,因此自行尝试多重签名的一个重大缺点是缺乏可靠的技术支持。正如我们在涵盖该主题基础知识的文章中所解释的那样,钱包所有者将有更多的密钥需要跟踪,并且有关钱包如何配置的详细信息也很重要(以钱包描述符或钱包配置的形式)文件)。如果有人刚接触比特币,管理这些额外的部分可能会让人感到不知所措。

像 Unchained 这样的多重签名协作托管企业可以提供所需的教育和支持,让任何人对多重签名感到放心和自信。协作保管库可以准确地称为一种自我保管形式,因为你是唯一拥有使用比特币的完全权力的人。这种方法通常涉及与您的合作伙伴分享有关您的比特币的一些信息,但它的好处是设置更简单,减少您需要跟踪自己的项目数量,帮助钱包维护,支持传递比特币受益人可以轻松获得交易和贷款等金融服务。

建立多重签名金库的一个重要决定是选择适当的法定人数,而 3 中 2 和 5 中 3 是迄今为止最广泛用于保护冷存储比特币的方法。虽然它在某些情况下可能有用,但 5 中的 3 引入了比大多数情况所需的更多的复杂性。它可以提供额外的冗余,但可以重复这一点以提倡 7 中的 4,然后是 9 中的 5,依此类推直至无穷大。我们制作了一个图表来帮助形象化这一点。

现在我们已经涵盖了所有众所周知的持有比特币的结构,让我们将它们放在图表中来比较它们的功能!

*这取决于您除了使用 SSS 或种子 XOR 分割物理种子短语之外是否还擦除了硬件钱包。

**弱密码有可能被猜到,但强密码更容易忘记。

***诱饵钱包在技术上可以使用非标准派生路径或其他方法,但不推荐,因为它可能会引入新的风险。

****随着 Taproot 采用率的增加,多重签名将具有与单签名相同的费用结构。

我应该使用单签名还是多重签名?
如上图所示,所有不同的自我托管比特币结构之间都存在权衡,这意味着不存在普遍正确的方法。为了确定单签名或多重签名是否更适合您,您必须首先决定您的偏好和优先级。

单签名和多重签名往往在相反的领域表现出色,这一重要的观察引出了一个问题:为什么不同时使用两者呢?与其将这些模型视为对手,不如将它们视为彼此的完美赞美!考虑使用多重签名钱包来实现高安全性、长期的比特币储蓄,同时使用单签名钱包来保存较小金额以方便交易(也许是也支持闪电网络的移动钱包)是合理的。

© 版权声明

相关文章