Compare commits

...

18 Commits
0.4.0 ... 0.4.2

Author SHA1 Message Date
Ian Coleman
90f7a5ec93 Release v0.4.2 2020-02-07 21:26:43 +11:00
Ian Coleman
dd496c82c1 Fix ethereum private key format 2020-02-07 21:25:57 +11:00
Ian Coleman
1dafc30db4 Test pubkey and privkey for all coins 2020-02-07 20:59:19 +11:00
Ian Coleman
927450e169 Release v0.4.1 2020-02-06 20:14:00 +11:00
Ian Coleman
a67554c649 Add tests for RSK network and testnet 2020-02-06 20:11:09 +11:00
Ian Coleman
0bc6361db4 Fix ethercore test 2020-02-06 20:10:52 +11:00
iancoleman
a98d40c43d Merge pull request #397 from aitorp6/master
Added DeepOnion Segwit parameters
2020-02-06 15:00:02 +11:00
iancoleman
54a8e781b4 Merge pull request #396 from ilanolkies/patch-2
Add network
2020-02-06 14:59:34 +11:00
iancoleman
c1d6274224 Merge pull request #393 from ethercore/master
Add EtherCore
2020-02-06 14:58:06 +11:00
aitorp6
c16661aeea Added DeepOnion Segwit parameters 2020-02-04 10:47:11 +01:00
Ilan
e9491c7efd Add network
Based on https://github.com/rsksmart/RSKIPs/blob/master/IPs/RSKIP57.md
2020-01-22 12:16:51 -03:00
Ian Coleman
d07983bc1f Catch nebulas error on some chrome configs
See #395
2020-01-08 17:31:14 +11:00
Ian Coleman
3aa7677ace Directly export libraries where they're required 2020-01-08 17:30:16 +11:00
EtherCore Contributor
9e04576e2f add testcase for ethercore 2020-01-02 00:53:17 +09:00
EtherCore Contributor
8131a07115 Add EtherCore 2020-01-02 00:45:48 +09:00
iancoleman
181b5d61e3 Merge pull request #390 from matthewleon/bugfix/eth-xpub-derivation
Bugfix/eth xpub derivation
2019-12-20 15:58:26 +11:00
Matthew Leon
4dfc681f71 fix Ethereum xpub derivation 2019-12-19 15:37:08 -05:00
Matthew Leon
dfb4fd1be5 add failing test for ETH xpub derivation
see https://github.com/iancoleman/bip39/issues/169
2019-12-19 15:35:31 -05:00
7 changed files with 682 additions and 59 deletions

View File

@@ -1,3 +1,15 @@
# 0.4.2
* Fix ethereum private key format
# 0.4.1
* Fix no loading on chrome with third-party cookies blocked
* Add EtherCore
* Add RSK network
* Add DeepOnion segwit parameters
* Fix ethereum xpub derivation
# 0.4.0
* Third party libraries deduplicated and minified

View File

@@ -1,66 +1,72 @@
/* base-x */
let basex = require('base-x')
module.exports.basex = require('base-x')
/* bchaddrjs */
let bchaddr = require('bchaddrjs')
module.exports.bchaddr = require('bchaddrjs')
/* bchaddrjs slp */
let bchaddrSlp = require('bchaddrjs-slp')
module.exports.bchaddrSlp = require('bchaddrjs-slp')
/* biginteger */
let BigInteger = require('javascript-biginteger')
module.exports.BigInteger = require('javascript-biginteger')
/* bitcoinjs-bip38 */
let bip38 = require('bip38')
module.exports.bip38 = require('bip38')
/* bitcoinjs-lib */
let bitcoin = require('bitcoinjs-lib')
module.exports.bitcoin = require('bitcoinjs-lib')
/* buffer */
let buffer = require('buffer');
module.exports.buffer = require('buffer');
/* elastos */
// See https://github.com/iancoleman/bip39/pull/368
// and https://github.com/johnnynanjiang/Elastos.SDK.Keypair.Javascript/tree/iancoleman-bip39
let elastosjs = require('elastos-wallet-js')
module.exports.elastosjs = require('elastos-wallet-js')
/* ethereum-util */
let ethUtil = require('ethereumjs-util')
module.exports.ethUtil = require('ethereumjs-util')
/* fast-levenshtein */
let levenshtein = require('fast-levenshtein')
module.exports.levenshtein = require('fast-levenshtein')
/* groestlcoin */
let groestlcoinjs = require('groestlcoinjs-lib')
module.exports.groestlcoinjs = require('groestlcoinjs-lib')
/* groestlcoin bip38 */
let groestlcoinjsBip38 = require('bip38grs')
module.exports.groestlcoinjsBip38 = require('bip38grs')
/* kjua qr codes */
let kjua = require('kjua')
module.exports.kjua = require('kjua')
/* nebulas */
let nebulas = require('nebulas')
try {
module.exports.nebulas = require('nebulas')
}
catch (e) {
console.warn("Error loading nebulas library");
console.warn(e);
};
/* stellar-util */
let StellarBase = require('stellar-base');
let edHd = require('ed25519-hd-key');
let stellarUtil = {
module.exports.stellarUtil = {
getKeypair: function (path, seed) {
const result = edHd.derivePath(path, seed);
return StellarBase.Keypair.fromRawEd25519Seed(result.key);
@@ -76,30 +82,8 @@ let stellarUtil = {
/* unorm */
let unorm = require('unorm')
module.exports.unorm = require('unorm')
/* zxcvbn */
let zxcvbn = require('zxcvbn')
/* exports */
module.exports = {
basex,
bchaddr,
bchaddrSlp,
buffer,
BigInteger,
bip38,
bitcoin,
elastosjs,
ethUtil,
groestlcoinjs,
groestlcoinjsBip38,
kjua,
levenshtein,
nebulas,
stellarUtil,
unorm,
zxcvbn
}
module.exports.zxcvbn = require('zxcvbn')

View File

@@ -15,7 +15,7 @@
<div class="container">
<h1 class="text-center">Mnemonic Code Converter</h1>
<p class="version">v0.4.0</p>
<p class="version">v0.4.2</p>
<hr>
<div class="row">
<div class="col-md-12">

File diff suppressed because one or more lines are too long

View File

@@ -1128,14 +1128,16 @@
}
// Ethereum values are different
if (networkIsEthereum()) {
var privKeyBuffer = keyPair.d.toBuffer(32);
privkey = privKeyBuffer.toString('hex');
var addressBuffer = libs.ethUtil.privateToAddress(privKeyBuffer);
var pubkeyBuffer = keyPair.getPublicKeyBuffer();
var ethPubkey = libs.ethUtil.importPublic(pubkeyBuffer);
var addressBuffer = libs.ethUtil.publicToAddress(ethPubkey);
var hexAddress = addressBuffer.toString('hex');
var checksumAddress = libs.ethUtil.toChecksumAddress(hexAddress);
address = libs.ethUtil.addHexPrefix(checksumAddress);
privkey = libs.ethUtil.addHexPrefix(privkey);
pubkey = libs.ethUtil.addHexPrefix(pubkey);
if (hasPrivkey) {
privkey = libs.ethUtil.bufferToHex(keyPair.d.toBuffer());
}
}
// Stellar is different
@@ -1838,6 +1840,7 @@
|| (name == "ELLA - Ellaism")
|| (name == "ESN - Ethersocial Network")
|| (name == "VET - VeChain")
|| (name == "ERE - EtherCore")
}
function networkHasSegwit() {
@@ -2417,6 +2420,14 @@
setHdCoin(194);
},
},
{
name: "ERE - EtherCore",
segwitAvailable: false,
onSelect: function() {
network = libs.bitcoin.networks.bitcoin;
setHdCoin(466);
},
},
{
name: "ESN - Ethersocial Network",
segwitAvailable: false,
@@ -2947,6 +2958,20 @@
setHdCoin(175);
},
},
{
name: "RBTC - RSK",
onSelect: function() {
network = libs.bitcoin.networks.rubycoin;
setHdCoin(137);
},
},
{
name: "tRBTC - RSK Testnet",
onSelect: function() {
network = libs.bitcoin.networks.rubycoin;
setHdCoin(37310);
},
},
{
name: "RBY - Rubycoin",
onSelect: function() {

View File

@@ -657,4 +657,30 @@ libs.bitcoin.networks.groestlcointestnet.p2wpkhInP2sh = {
wif: 0xef
};
libs.bitcoin.networks.deeponion.p2wpkh = {
baseNetwork: "deeponion",
messagePrefix: '\x18DeepOnion Signed Message:\n',
bech32: 'dpn',
bip32: {
public: 0x0488b21e,
private: 0x0488ade4
},
pubKeyHash: 0x1f,
scriptHash: 0x4e,
wif: 0x9f
};
libs.bitcoin.networks.deeponion.p2wpkhInP2sh = {
baseNetwork: "deeponion",
messagePrefix: '\x18DeepOnion Signed Message:\n',
bech32: 'dpn',
bip32: {
public: 0x0488b21e,
private: 0x0488ade4
},
pubKeyHash: 0x1f,
scriptHash: 0x4e,
wif: 0x9f
};
})();

File diff suppressed because it is too large Load Diff