diff --git a/bitaddress.org.html b/bitaddress.org.html
index f7934a5..3bbc19c 100644
--- a/bitaddress.org.html
+++ b/bitaddress.org.html
@@ -707,12 +707,15 @@
hex.push((bytes[i] >>> 4).toString(16));
hex.push((bytes[i] & 0xF).toString(16));
}
- return hex.join("");
+ return hex.join("").split(/^0+/).slice(-1)[0]; //drop leading 0
},
// Convert a hex string to a byte array
hexToBytes: function (hex) {
- for (var bytes = [], c = 0; c < hex.length; c += 2)
+ //if input has odd number of digits, pad it
+ if (hex.length % 2 == 1)
+ hex = "0" + hex;
+ for (var bytes = [], c = 0; c < hex.length; c += 2)
bytes.push(parseInt(hex.substr(c, 2), 16));
return bytes;
},
@@ -7513,8 +7516,8 @@
var threshhold = parseInt(document.getElementById('splitthreshhold').value);
//alert(numshares)
//alert(threshhold)
- var shares = secrets.share(ninja.publicKey.getHexFromByteArray(Bitcoin.Base58.decode(privkeyBase58)),
- numshares, threshhold).map(Crypto.util.hexToBytes).map(Bitcoin.Base58.encode);=
+ var shares = secrets.share(Crypto.util.bytesToHex(Bitcoin.Base58.decode(privkeyBase58)),
+ numshares, threshhold).map(Crypto.util.hexToBytes).map(Bitcoin.Base58.encode);
//alert(shares);
var output = document.createElement("div");
output.setAttribute("id", "splitoutput");
@@ -7542,10 +7545,10 @@
if (element != null) element.parentNode.removeChild(element);
var shares = document.getElementById("combineinput").value.split(/\W+/);
- alert(shares);
+
var combined = secrets.combine(shares.map(Bitcoin.Base58.decode).
- map(ninja.publicKey.getHexFromByteArray));
- alert(combined);
+ map(Crypto.util.bytesToHex));
+
var privkeyBase58 = Bitcoin.Base58.encode(Crypto.util.hexToBytes(combined));
var output = document.createElement("div");
output.setAttribute("id", "combineoutput");
@@ -7553,6 +7556,9 @@
txt.setAttribute("id","combineoutputtext");
txt.setAttribute("value",privkeyBase58);
txt.setAttribute("size",55);
+ var lbl = document.createElement("label");
+ lbl.innerHTML="Private key";
+ output.appendChild(lbl);
output.appendChild(txt);
document.getElementById("combinecommands").appendChild(output);
}