自助恢复多签资产完整攻略:BTC、ETH、TRX、SOL 一网打尽

·

核心关键词

多签资产恢复、BTC多签、ETH合约多签、TRX多签、SOL多签、redeemScript、私钥签名、UTXO、spendNonce、ERC20转账


为什么服务器宕机也不怕?

Ownbit 等钱包的设计哲学是“无托管、去中介”,全部代码与协议开源,私钥永远掌握在用户手中。换言之,哪怕官方节点永久下线,只要你保存好对应私钥或助记词,就能自助恢复多签资产。以下内容将手把手讲透 BTC、ETH、TRX、SOL 四大主流链的恢复流程。


一、恢复 BTC 多签资产(2-3 签名示例)

BTC 多签资产特征是“先找 UTXO,再拼 redeemScript,最后广播交易”。

1.1 收集 UTXO

用任意区块浏览器输入多签地址 3CkvfWhYd6behUYnrA5rMQJoyr6oLGM6Ed,记录每笔未花费输出的 tx_hashindex(第 0、1、2…个输出)。

1.2 获取三方私钥

在任意安全环境(断网或本地源码页面)进入“钱包管理-导出私钥”,分别抄写:

⚠️ 勿在网页端裸奔复制私钥!

1.3 计算公钥并排序

用本地工具把私钥转成压缩公钥,后按十六进制大小自然排序,本例顺序调整为 C、B、A,生成如下:

redeemScript = 5221021988ac7af60cf4...2va53ae

(52 表示 2/3 多签,21 表示推送 33 字节公钥,53ae 为固定指令)

1.4 构造并签署交易示例(JavaScript)

// 用 bitcoinjs-lib,先把 redeemScript、UTXO、手续费等填好
psbt.addInput({...})
    .addOutput({ address: '你的冷钱包地址', value: 1e4 })
    .signInput(0, privateKey_BTC_B)
    .signInput(0, privateKey_BTC_C)
    .finalizeAllInputs()
    .extractTransaction()

👉 想体验完整的在线交易广播工具,点这里实操

1.5 广播 Hex

把上一步 tx.toHex() 贴到任意广播节点即可,区块链确认后资金完成迁移。


二、恢复 ETH/ERC20 多签资产

ETH 与 BTC 逻辑不同:资金锁在智能合约中,恢复即使不用 DApp,也只需 合约地址 + nonce + 两方私钥签名 + 合约调用

2.1 定位合约地址

假设多签合约地址:0xc314bCbD4e8044b03C98381F715782a815B57fF3

2.2 获取当前 spendNonce

2.3 生成两方签名

ethereumjs-util 为例,拼好 msgHex,再本地签名:

const sig = ecsign(sha3(msgHex), privateKey)

得到 v、r、s 三组数据,请 ABI 编入数组 传入合约。

2.4 调用合约 spend / spendERC20

脚本成功发至链上后,资产即刻转移至外部地址。

✅ Layer2 恢复步序一模一样,直接复用主网合约源码即可。

三、恢复 TRX/TRC20 多签资产(2-3 签名示例)

3.1 查看链上权限

访问 https://api.trongrid.io/v1/accounts/{多签地址},确认 Owner 权限 ≥2/3。

3.2 复用 ETH 私钥

TRX、ETH 私钥“互通”。只需把步骤 2 中生成的两方私钥导入 Tron 签名库:

  1. 创建 Raw Transaction (amount, to, data)
  2. 通读官方 SDK:Transaction.addSignature()
  3. 二次签名后广播即可

👉 直接复刻官方案例,轻松完成双签名多签交易


四、恢复 SOL/SPL 多签资产(Solana)

4.1 生成地址 & 私钥

通过助记词推导路径:m/44'/501'/0'/0',获取各方 SOL Address 和私钥。

4.2 找到 multisig data account

多签钱包 - 多签详情 菜单里,复制 multisig data account(例如:G3fZaK...X),这是指令执行的关键账本。

4.3 链上操作流程

  1. 任意一方先执行 create_transaction
  2. 另外两人分别 approve
  3. 累计签名 ≥ 阈值后,一键 execute_transaction

想更快上手?克隆官方仓库改两行环境变量即可跑通:
git clone https://github.com/bitbill/ownbit-multisig-contracts && cd ownbit-multisig-contracts


五、其他 UTXO 币种(BCH/LTC/DASH)一招通吃

以上这些币种与 BTC 共用 secp256k1 私钥体系,redeemScript 生成方式、代码依赖一致。唯一区别在于:

其余照抄即可,十分钟搞定多链迁移。


常见问题(FAQ)

Q1:我只有两台硬件钱包在手中,第三台遗失,恢复是否可行?
答:完全可行!任何 2/3 的设置只需两方即可完成签名,真正意义上去信任化。

Q2:JS 代码看起来很复杂,有没有图形化工具?
答:暂无官方 GUI,但可以打包为离线网页 + 离线广播页面的组合,安全又直观。

Q3:多签地址换了新的 3/5,我该怎么改动 redeemScript?
答:仅需把 52(2/3)改成 53(3/5),同时按公钥升序追加剩下两位即可,其余字段不变。

Q4:官方库链接能直接用吗?
答:为了私钥安全,强烈建议先 wget 整套源码到本地电脑再配合 Node 执行,杜绝线上风险。

Q5:Layer2 是否都可通用?
答:EVM 系(BSC、Polygon、AVAX)全部复制 ETH 流程;UTXO 系同理,请确认对应浏览器 LDND 即可。


写在最后

多签资产恢复本质是“控制私钥,控制公钥”的数学游戏。本文把技术路线拆解成三大核心动作:查链上 -> 本地签名 -> 链上广播。只要提前备份私钥、分清排序规则、刷遍官方文档,服务器宕机也不会让你损失分毫。祝你资产长存的每一天,都安心、自由、可验证。