走进 Web3

如何用 PSBT 离线签名比特币交易?

By Safeheron Team

用 PSBT 离线签名比特币交易,需要两台设备分工:联网的电脑只保存公钥,负责查余额、生成 PSBT 和广播;不联网的硬件钱包或离线电脑保存私钥,只负责核对和签名。两者之间只传递 PSBT,可以用 SD 卡、二维码或 USB,私钥始终不接触网络。

联网端怎样在没有私钥的情况下生成交易?

离线设备初始化后,导出钱包的扩展公钥和地址类型,导入联网电脑上的钱包软件,形成一个“观察钱包”。它能推导出全部收款和找零地址、查询余额和 UTXO,也能构造交易,但无法签名。导入时要在离线设备上核对第一个收款地址,确认观察钱包导入的是正确的公钥。

要转账时,在观察钱包里填写收款地址、金额和手续费,软件就会生成一份 PSBT,里面带着离线设备签名所需的 UTXO 和派生路径。

PSBT 怎样在两台设备之间传递?

常见的有三种方式。SD 卡是把 .psbt 文件存卡后插到离线设备上,设备和电脑之间没有电气连接,适合数据量大的多输入交易。二维码是让离线设备扫描电脑屏幕上的动态二维码,签好后再反向显示给电脑扫,整个过程只有光学信号,隔离最彻底。USB 连接最方便,但签名设备和联网电脑之间存在数据通道,严格意义上已不算物理隔离。

选哪种取决于需要的隔离程度。企业冷钱包一般优先用二维码或 SD 卡,并把传递用的存储介质专卡专用。

离线设备签名前要核对什么?

离线设备应在自己的屏幕上显示每个收款地址的完整内容和金额、根据 UTXO 信息自己算出的手续费,并标出哪个输出是经过派生路径验证的找零。操作人要拿屏幕上的内容和审批单逐项对照,而不是看联网电脑上的显示,因为后者可能已被篡改。

签名完成后,把签好的 PSBT 用同样的方式传回联网电脑,由它完成交易并广播。

企业把这套流程用于冷钱包要注意什么?

第一是用小额转账完整演练一次,确认观察钱包、离线设备和广播环节都配合无误。第二是离线设备的固件来源和更新要受控,它是整套流程里唯一可信的显示端。第三是单人操作的离线签名仍是单点,大额资金最好结合多人审批或多方签名。

离线签名的整体架构和它与冷钱包的区别,属于离线签名基础设施的设计问题;PSBT 解决的是其中“数据怎么安全地进出”这一段。

结语

用 PSBT 离线签名,就是让联网端只管公钥和广播、离线端只管核对和签名,中间用 SD 卡或二维码传递 PSBT。关键是离线设备屏幕上的核对,以及大额资金不由一人单独签出。Safeheron 的 MPC 钱包即服务为企业提供 MPC 密钥管理和策略引擎。

想让企业冷钱包的每笔签名都不依赖单一的人和设备?

联系 Safeheron 销售团队,预约一对一演示

分享

预约演示

正在评估数字资产安全方案?不妨与 Safeheron 专家聊聊,获取专属方案建议

预约演示