
先弄清文件里完成了哪一部分
冷钱包离线签名的进度,不能只用“文件已经返回”判断。BIP174定义的PSBT是一种协作处理交易的数据格式,能够携带签署需要的信息,也能保留尚未凑齐完整条件的部分签名。文件存在与交易准备完成并不是同一种状态。
这个格式还区分多个处理角色,但角色不必由不同人或不同设备承担。同一个程序可以兼任资料补充、签署和后续处理。因此,看到几个角色名称,不应直接推断需要几个人签名,更不能据此判断钱包采用了什么签名门槛。
部分签名与资料合并各有范围
签署者会对自己能够处理的输入添加相应签名;BIP174并不要求每个签署器都支持所有输入类型。如果不能签署,就不能假装补上一条签名。所以,一个文件中已经出现签名,仍不能证明其他输入需要的资料都已经齐备。
合并角色则负责整理属于同一待处理交易的信息。合并结果包含更多材料,不代表已经把每个输入构造成最终形式;不同交易的文件也不能随意拼在一起。排查界面提示时,应先确认它说的是缺签名、资料冲突,还是下一阶段尚未完成。

输入定稿之后才谈交易提取
输入定稿器需要逐个判断输入是否具备满足相应验证条件的数据,再构造该输入需要的最终脚本或见证资料。交易提取器则检查全部输入是否完成,满足条件后才把这些数据整理成网络使用的交易形式。两者处理的对象和完成条件不同。
这解释了为什么“某次签署成功”与“已经能够提取交易”之间可能还有距离。用户需要查清状态,而不是改文件扩展名来冒充另一格式。本文只解释文档中的角色,不要求读者手工修改签名、补写脚本或把自己的文件上传给陌生人处理。
提取成功仍不是网络确认记录
文件处理完成后,还应把本地结果与网络状态分开。以太坊的交易文档也分别描述签署数据、广播和被纳入区块等阶段。这个对照只说明区分阶段的重要性,并不是说以太坊使用PSBT,更不能把两条链的文件或验证规则互换。
可以保留一份不含秘密的状态记录,注明网络、文件类型、软件版本、最后完成的阶段和原始提示。没有取得相应网络记录之前,不把一个文件名、签名数量或交易哈希当作已确认的充分证据。不同钱包支持范围还要看各自说明,本文没有执行任何真实签署或广播。