From 2fda3c11872b0b871903a3f5370fcb568a5d83b1 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Fri, 30 Aug 2013 14:55:04 -0400 Subject: [PATCH] Sign: add support for signing ancient TX_PUBKEY transactions --- Sign.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Sign.js b/Sign.js index 5097954..24889dc 100644 --- a/Sign.js +++ b/Sign.js @@ -55,6 +55,21 @@ function signTxIn(nIn, tx, txInputs, network, keys, scripts) var hash = tx.hashForSignature(scriptPubKey, i, 0); switch (txType) { + case TX_PUBKEY: + // already signed + if (scriptSig.chunks.length > 0) + return; + + var pubkeyhash = util.sha256ripe160(scriptData[0]); + var addr = new Address(network.addressPubkey, pubkeyhash); + var addrStr = addr.toString(); + if (!(addrStr in keys)) + throw new Error("unknown pubkey"); + + var signature = signOne(hash, addrStr, keys); + scriptSig.writeBytes(signature); + break; + case TX_PUBKEYHASH: // already signed if (scriptSig.chunks.length > 0)