SSP 中的 Bitcoin

·阅读 6 分钟·作者:SSP Editorial Team
Bitcoin 标志与 SSP 钱包图标,均以 SSP 品牌配色呈现

SSP 中的 Bitcoin

Bitcoin 是最早的加密货币,对许多人来说也是他们认真持有的第一种加密货币。如果你正在考虑将 SSP 作为存放 Bitcoin 的地方,你会想知道两件事:Bitcoin 作为一条链是如何运作的,以及 SSP 具体是如何处理它的。本文将涵盖这两方面。我们将简要介绍 Bitcoin 的核心机制,逐步说明 SSP 如何通过 2-of-2 多重签名支持 Bitcoin,总结在应用中发送和接收的过程,指出 Bitcoin 用户在任何钱包中都常遇到的陷阱,并以一份诚实的清单结束,列出 SSP 有意不为 Bitcoin 做的事情。

一段话讲清 Bitcoin

Bitcoin 是由全球节点网络维护的公开账本。对新用户来说,最重要的心智模型是 UTXO 模型:你并不像拥有银行余额那样拥有一个"余额"。相反,你拥有的是一组未花费的交易输出——UTXO——它们被发送到你所控制的地址。当你花费时,你的钱包会挑选一个或多个 UTXO,将它们完全消耗,把收款人要求的金额发送到他们的地址,并将剩余部分返还到一个你也控制的找零地址。钱包对你隐藏了这一过程,但底层运作就是如此。

链本身由 PoW 保障安全。矿工消耗能源寻找区块,平均每十分钟左右产生一个新区块。供应计划是固定的:总共只会有 2100 万枚 bitcoin,新币进入流通的速度大约每四年减半一次。这些都不会改变你日常使用 Bitcoin 的方式,但它解释了为什么确认需要时间,以及为什么在网络繁忙时手续费会飙升:区块有严格的大小上限,每个区块只能容纳一定数量的交易。

SSP 如何支持 Bitcoin

SSP 在主网上使用 BIP48 2-of-2 多重签名支持 Bitcoin。这句话包含了整个钱包的安全模型,因此值得拆开来讲。

BIP48 是一种从种子派生多重签名钱包密钥的标准,以一种在遵循同一规范的钱包之间可互操作的方式工作。"2-of-2" 的部分意味着你的钱包有两把密钥,每次花费都需要两把密钥的签名。在 SSP 中,一把密钥存放在你手机上的 SSP Wallet 应用中,另一把存放在你笔记本或台式机上的 SSP Key 应用中。要发送 Bitcoin,两台设备都必须参与。如果其中一台设备单独丢失或被攻陷,攻击者无法移动你的资金。

接收方面则简单得多。从外部看,你的 SSP Bitcoin 钱包就像任何其他 Bitcoin 钱包:它有一个地址,任何人都可以向其发送,发送方无需知道或关心它是多重签名。多重签名只在你花费时才起作用。关于我们为什么选择这种模式的更多信息,请参阅什么是 2-of-2 多重签名?

在 SSP 中发送和接收

在 SSP 中接收 Bitcoin 非常简单。打开 SSP Wallet 应用,选择 Bitcoin,然后点击"接收"。应用会向你显示一个 Bitcoin 地址以及一个 QR 码。分享发送方觉得最方便的方式:将地址粘贴到聊天中、让他们用自己的钱包扫描 QR,或分享一个支付链接。一旦发送方广播了交易,你就会在 SSP 中看到它处于待处理状态。一旦它被打包进区块并获得几次确认,就算作已结算。你这边不需要做其他事情。

发送是 2-of-2 模型变得显而易见的地方。简而言之:打开 SSP Wallet,选择"发送",粘贴收款人地址,输入金额,选择手续费,并在手机上确认。然后 SSP Wallet 用手机密钥签名,将部分签名的交易交给你桌面上的 SSP Key,你在那里确认并添加第二个签名。一旦两个签名都齐全,SSP 就会将交易广播到 Bitcoin 网络。

有关包含如何在桌面上处理 SSP Key 协同签名步骤的逐屏演练,请参阅使用 SSP 发送 Bitcoin。该指南涵盖了确切的点击和提示;本文专注于这些操作背后的原因。

常见陷阱

无论你使用哪个钱包,在 Bitcoin 上有几类错误反复出现。在发送任何有意义的金额之前,值得了解它们。

第一个是地址投毒(address poisoning)。攻击者会从一个看起来与你以前发送过的地址几乎完全相同的地址发送微小的尘埃交易——通常前后几个字符都匹配。其目的是让那个相似的地址进入你的交易历史,这样下次你复制"与上次相同的地址"时,你抓到的反而是攻击者的地址。防御方法简单但不可省略:在签名之前,始终验证任何地址至少前六个和后六个字符,最好是与收款人自己渠道获得的副本进行比对。

第二个是手续费估算错误。Bitcoin 的 mempool——未确认交易的池子——可能会变得繁忙,如果你选择了过低的手续费,你的交易可能会停滞数小时甚至数天。SSP 会根据当前的网络状况建议一个手续费;如果你要覆盖它,在急用时请向上覆盖,而不是向下。

第三个是发送到格式错误的地址。Bitcoin 有多种地址类型——Legacy、Segwit、Taproot——而一个会在格式之间自动转换的发送钱包可能会产生你并不希望的结果。始终发送到收款人给你的精确字符串,不要让任何工具替你"修正"它。

SSP 不做的事

明确产品的边界很有必要。SSP 不向用户暴露自定义的 RBF(Replace-By-Fee)流程:你在发送时选择的手续费就是发出的手续费,事后你无法在 SSP 内部提高它。SSP 也不支持除 BIP48 2-of-2 之外的多重签名配置——没有 2-of-3,没有 3-of-5,没有自定义共同签名者。SSP 也不签名任意消息,只签名标准钱包交易;如果你需要为第三方服务进行消息签名,SSP 不是合适的工具。这些是有意识的产品选择,旨在打造一个更小、更可审计的攻击面,而不是我们计划填补的空白。

下一步

如果你准备好通过 SSP 操作 Bitcoin,逐步演练请见使用 SSP 发送 Bitcoin。要更深入地了解使发送流程成为现在这样的安全模型,请阅读什么是 2-of-2 多重签名?。如果你还没有设置钱包,请从设置你的第一个 SSP 钱包开始。这三篇文章合在一起,涵盖了从全新安装到一次已确认 Bitcoin 发送的完整路径。

分享本文