“三台设备各执一片钥匙,凑齐两片才能开保险箱”——门限签名(Threshold Signature Scheme,TSS)常被这样介绍。它解决的是单钥钱包的老问题:一把私钥既是最薄弱的单点故障,又是无法安全分享的完整秘密。
原理:合成一把,从不拼回
TSS 基于多方安全计算(MPC):密钥在生成时就直接以“分片”形式产生,每人拿到一个碎片,任何少于门限值(如 2/3 中的 1 个)的碎片集合在数学上不提供关于完整私钥的任何信息。关键在于,签名时碎片并不聚合回完整私钥——各方在自己的分片上参与一轮协同协议,直接产出对全网而言完全正常的 ECDSA(或 ECDSA 兼容)签名。这一点要澄清:主流 TSS 产出的签名对链而言就是一笔普通单签交易,链上没有出现“3 把钥匙盖 2 个章”的结构,验证规则与单人签名的钱包毫无区别。这与 Shamir 密钥分割是什么?助记词的碎片化备份 有本质差别:Shamir 分割的碎片可以拼回原始助记词,拼图完成的那一刻,单点秘密重新存在;而 TSS 的设计目标恰恰是“永不重聚”,日常签名也不消耗碎片(部分方案支持周期性重分片刷新,进一步防止碎片被慢慢攒齐)。
与多签钱包的三种差别
第一,链上形态。多签(如 多签钱包是什么?怎么用才安全 介绍的 Safe 类方案)把规则写在链上:合约账户要求 2/3 个独立地址共同批准,链上能看到规则、参与者与阈值。TSS 是链下协同、链上单签:外部观察者只知道“一个地址签了名”,不知道背后有几个人参与。第二,适用链。多签依赖链支持合约账户或脚本条件,比特币原生多签(P2WSH)与以太坊合约多签机制不同,跨链体验割裂;TSS 在密码学层工作,一套协议可覆盖几乎所有用椭圆曲线签名的链。第三,信任模型。多签的规则由链上合约强制执行,即使所有参与方串谋也改不了阈值;TSS 的阈值逻辑靠参与方自觉执行协议——若有厂商托管全部碎片,理论上可以在后台凑齐签名,这正是 MPC 钱包的信任权衡:链上不可篡改换成了“多方或厂商不串谋”的假设。
使用场景
- 机构金库:多名出纳各执碎片,任何单人无法动用资金,且不想在链上暴露组织结构;
- 跨链财库:一条协议管理十几条链的资产,避免为每条链分别搭多签;
- 消费端“无单点”钱包:手机+云端+备份设备 2/3 门限,丢一台不停用;
- 与社交恢复互补:见 社交恢复钱包是什么?助记词之外的钥匙管理,TSS 负责日常防单点,恢复机制负责守护人轮替。
快速问答
- “TSS 钱包丢了一台设备怎么办?“门限的意义所在:用剩余碎片+备份碎片重签,多数产品支持重分片换发新碎片,旧碎片作废。
- “链上能看出是 TSS 吗?“基本不能,这也是优点(隐私)也是审计弱点(外部无法验证阈值存在),选择厂商时应要求可审计的密钥生成仪式与第三方审计。
- “比多签更安全吗?“取决于对手。防“单人偷钥匙”两者等效;防“内部串谋改规则”多签更强;防“单点丢失”TSS 更顺。
- “和 Shamir 备份能一起用吗?“能,且常见组合是:TSS 管日常签名,Shamir 分片管碎片恢复。
常见误区
- 误区一:把 MPC 钱包当“链上多签”。它是链下协议,链上只呈现单签,区块浏览器里查不到参与人数。
- 误区二:以为碎片不能刷新。多数成熟方案支持定期或部分重分片,被泄露的旧碎片会逐渐失效,但这依赖厂商实现,购买前要查文档与审计。
- 误区三:认为厂商无法作恶。若碎片全部由厂商托管,你防住的只是外部攻击者;正规机构应至少自持一枚碎片。
小结
TSS 用“密钥永不完全存在”的代价,把日常操作做成无感知的多人共治;多签用“规则上链”的代价,换来可被任何人核验的硬约束。两者不是替代关系,而是把信任压力分别放在链下协作与链上合约两个不同位置。选型先问:要防谁、要谁可见、要几方自持碎片。
风险提示:本文不构成投资建议。机构资金方案请结合专业审计与合规意见。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。