taproot-multisig
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseTaproot Multisig Skill
Taproot多签Skill
Agent-to-agent Bitcoin Taproot multisig. Proven on mainnet — Arc completed a 2-of-2 (block 937,849) and 3-of-3 (block 938,206) using BIP-340 Schnorr, BIP-342 OP_CHECKSIGADD, and QuorumClaw coordination.
Agent间的Bitcoin Taproot多签功能。已在主网验证——Arc使用BIP-340 Schnorr、BIP-342 OP_CHECKSIGADD和QuorumClaw协作完成了2-of-2(区块937,849)和3-of-3(区块938,206)多签交易。
Usage
使用方法
bun run taproot-multisig/taproot-multisig.ts <subcommand> [options]bun run taproot-multisig/taproot-multisig.ts <subcommand> [options]Subcommands
子命令
get-pubkey
get-pubkey
Get your x-only Taproot internal public key for registering with a multisig coordinator. Requires unlocked wallet.
bash
bun run taproot-multisig/taproot-multisig.ts get-pubkeyOutput:
json
{
"success": true,
"internalPubKey": "abc123...",
"taprootAddress": "bc1p...",
"network": "mainnet",
"keyFormat": "x-only (32 bytes)",
"derivationPath": "m/86'/0'/0'/0/0",
"usage": "Register internalPubKey when joining a multisig.",
"warning": "Always register internalPubKey, NOT the tweaked key."
}获取你的仅x格式Taproot内部公钥,用于在多签协调器中注册。需要解锁钱包。
bash
bun run taproot-multisig/taproot-multisig.ts get-pubkey输出:
json
{
"success": true,
"internalPubKey": "abc123...",
"taprootAddress": "bc1p...",
"network": "mainnet",
"keyFormat": "x-only (32 bytes)",
"usage": "加入多签时请注册internalPubKey。",
"warning": "请始终注册internalPubKey,而非调整后的密钥。"
}verify-cosig
verify-cosig
Verify a BIP-340 Schnorr signature from a co-signer. No wallet unlock required.
bash
bun run taproot-multisig/taproot-multisig.ts verify-cosig \
--digest <64-char-hex> \
--signature <128-char-hex> \
--public-key <64-char-hex>Options:
- (required) — 32-byte sighash from coordination API
--digest - (required) — 64-byte BIP-340 Schnorr signature from co-signer
--signature - (required) — 32-byte x-only public key of the co-signer
--public-key
Output:
json
{
"success": true,
"isValid": true,
"digest": "...",
"signature": "...",
"publicKey": "...",
"message": "Signature is valid — this co-signer's key signed this digest."
}验证来自共同签名者的BIP-340 Schnorr签名。无需解锁钱包。
bash
bun run taproot-multisig/taproot-multisig.ts verify-cosig \
--digest <64-char-hex> \
--signature <128-char-hex> \
--public-key <64-char-hex>选项:
- (必填)——来自协调API的32字节sighash
--digest - (必填)——来自共同签名者的64字节BIP-340 Schnorr签名
--signature - (必填)——共同签名者的32字节仅x格式公钥
--public-key
输出:
json
{
"success": true,
"isValid": true,
"digest": "...",
"signature": "...",
"publicKey": "...",
"message": "签名有效——该共同签名者的密钥已签署此摘要。"
}guide
guide
Print the complete step-by-step Taproot multisig workflow as JSON.
bash
bun run taproot-multisig/taproot-multisig.ts guideReturns the full workflow: key registration, sighash signing, co-signer verification, witness stack format, and the BIP-86 internal-vs-tweaked key gotcha.
以JSON格式打印完整的Taproot多签分步工作流。
bash
bun run taproot-multisig/taproot-multisig.ts guide返回完整工作流:密钥注册、sighash签名、共同签名者验证、见证栈格式,以及BIP-86内部密钥与调整后密钥的注意事项。
Key Signing Command
密钥签名命令
Signing a sighash uses the skill, not this skill:
signingbash
bun run signing/signing.ts schnorr-sign-digest \
--digest <sighash_hex> \
--confirm-blind-signThis signs with your BIP-86 internal Taproot key (). Always register from so the keys match.
m/86'/0'/0'/0/0internalPubKeyget-pubkey签署sighash需要使用 Skill,而非本Skill:
signingbash
bun run signing/signing.ts schnorr-sign-digest \
--digest <sighash_hex> \
--confirm-blind-sign此命令使用你的BIP-86 Taproot内部密钥()进行签名。请务必注册来自的,以确保密钥匹配。
m/86'/0'/0'/0/0get-pubkeyinternalPubKeyCritical: Internal Key vs Tweaked Key
重要提示:内部密钥与调整后密钥
Register . Sign with . They match.
internalPubKeyschnorr-sign-digestThe tweaked pubkey (embedded in your address) is different from the internal pubkey. If you register the tweaked key but sign with the internal key, your signature is valid but against the wrong key — the coordination API rejects it.
bc1p...请注册,使用签名。二者必须匹配。
internalPubKeyschnorr-sign-digest调整后的公钥(嵌入在你的地址中)与内部公钥不同。如果你注册的是调整后的密钥,但使用内部密钥签名,你的签名本身有效,但对应的密钥错误——协调API会拒绝该签名。
bc1p...Proven Transactions
已验证交易
| Type | TXID | Block | Signers |
|---|---|---|---|
| 2-of-2 | | 937,849 | Arc + Aetos |
| 3-of-3 | | 938,206 | Arc + Aetos + Bitclaw |
| 类型 | TXID | 区块 | 签名者 |
|---|---|---|---|
| 2-of-2多签 | | 937,849 | Arc + Aetos |
| 3-of-3多签 | | 938,206 | Arc + Aetos + Bitclaw |