mirror of
https://github.com/OneKeyHQ/bip39.git
synced 2026-04-07 19:22:14 +00:00
Compare commits
42 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e066f14ecf | ||
|
|
628a2f53d4 | ||
|
|
f40c5c2423 | ||
|
|
65afae0b5e | ||
|
|
3381604035 | ||
|
|
ba637be876 | ||
|
|
011533e4bc | ||
|
|
d2ba387163 | ||
|
|
64425922ae | ||
|
|
cd4425ece7 | ||
|
|
8a516f5529 | ||
|
|
455886617d | ||
|
|
8b2a093c8b | ||
|
|
37f237239a | ||
|
|
cd8893f6c9 | ||
|
|
c4086c2413 | ||
|
|
2866e9d4d4 | ||
|
|
5ed5f6612d | ||
|
|
8c849703eb | ||
|
|
2575538b25 | ||
|
|
376ea8c46d | ||
|
|
a44c45e3c0 | ||
|
|
341700110b | ||
|
|
0529ca55fa | ||
|
|
9f6352d696 | ||
|
|
01e0ec16b9 | ||
|
|
54348219db | ||
|
|
23183e61af | ||
|
|
7d6078040d | ||
|
|
04ec88af5c | ||
|
|
5a1494327f | ||
|
|
e76cd8fbf3 | ||
|
|
7878bb3295 | ||
|
|
43e5cabfcf | ||
|
|
c1a5e79c5f | ||
|
|
3eee87560b | ||
|
|
74f0021ed0 | ||
|
|
d2f5d28e33 | ||
|
|
67df560a3c | ||
|
|
ae51db39a3 | ||
|
|
efe95a35c1 | ||
|
|
8103d17b09 |
23
changelog.md
23
changelog.md
@@ -1,3 +1,26 @@
|
||||
# 0.3.9
|
||||
|
||||
* Update BTG signing message
|
||||
* Add segwit parameters for BTG
|
||||
* Add segwit parameters for DigiByte
|
||||
* Add Stash network (see 0.3.8s below)
|
||||
* Add Salus network
|
||||
* Add Cryptoescudo network
|
||||
* Add ExchangeCoin network
|
||||
* Add Artax network
|
||||
* Add BitCloud network
|
||||
* Add Megacoin network
|
||||
* Add Bitcoin Green network
|
||||
* Add ANON network
|
||||
* Add ProjectCoin network
|
||||
* Reword the 'generate' inputs and words
|
||||
* Add note for running http server in python 2
|
||||
* Adjust test to run reliably on slow computers
|
||||
|
||||
# 0.3.8s
|
||||
|
||||
* Add Stash network
|
||||
|
||||
# 0.3.8
|
||||
|
||||
* Add p2wpkh for litecoin
|
||||
|
||||
@@ -74,6 +74,9 @@ Before running tests, the site must be served at http://localhost:8000.
|
||||
```
|
||||
$ cd /path/to/bip39/src
|
||||
$ python -m http.server
|
||||
|
||||
or for python2
|
||||
$ python -m SimpleHTTPServer
|
||||
```
|
||||
|
||||
Run tests from the command-line
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<div class="container">
|
||||
|
||||
<h1 class="text-center">Mnemonic Code Converter</h1>
|
||||
<p class="version">v0.3.8</p>
|
||||
<p class="version">v0.3.9</p>
|
||||
<hr>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
@@ -36,8 +36,8 @@
|
||||
<div class="col-sm-10">
|
||||
<div class="form-inline">
|
||||
<div class="input-group-inline">
|
||||
<span>Generate a random mnemonic, or enter your own below</span>:
|
||||
<button class="btn generate">Generate</button>
|
||||
<span>Generate a random mnemonic</span>:
|
||||
<button class="btn generate" ><b>GENERATE</b></button>
|
||||
<select id="strength" class="strength form-control">
|
||||
<option value="3">3</option>
|
||||
<option value="6">6</option>
|
||||
@@ -48,7 +48,7 @@
|
||||
<option value="21">21</option>
|
||||
<option value="24">24</option>
|
||||
</select>
|
||||
<span>words</span>.
|
||||
<span>words, or enter your own below</span>.
|
||||
<p class="warning help-block hidden">
|
||||
<span class="text-danger">
|
||||
Mnemonics with less than 12 words have low entropy and may be guessed by an attacker.
|
||||
|
||||
@@ -297,7 +297,7 @@ bitcoinjs.bitcoin.networks.nubits = {
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.bgold = {
|
||||
messagePrefix: 'unused',
|
||||
messagePrefix: '\x1DBitcoin Gold Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488b21e,
|
||||
private: 0x0488ade4
|
||||
@@ -440,6 +440,17 @@ bitcoinjs.bitcoin.networks.bitcoinplus = {
|
||||
wif: 0x99,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.bitcloud = {
|
||||
messagePrefix: '\x18BitCloud Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4,
|
||||
},
|
||||
pubKeyHash: 0x19,
|
||||
scriptHash: 0x05,
|
||||
wif: 0x99,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.bitcore = {
|
||||
messagePrefix: '\x18BitCore Signed Message:\n',
|
||||
bip32: {
|
||||
@@ -495,6 +506,17 @@ bitcoinjs.bitcoin.networks.cannacoin = {
|
||||
wif: 0x9c,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.cryptoescudo = {
|
||||
messagePrefix: '\x18Cryptoescudo Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488b21e,
|
||||
private: 0x0488ade4,
|
||||
},
|
||||
pubKeyHash: 0x1c,
|
||||
scriptHash: 0x05,
|
||||
wif: 0x9c,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.clubcoin = {
|
||||
messagePrefix: '\x18ClubCoin Signed Message:\n',
|
||||
bip32: {
|
||||
@@ -836,6 +858,17 @@ bitcoinjs.bitcoin.networks.lynx = {
|
||||
wif: 0xad,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.megacoin = {
|
||||
messagePrefix: '\x18Megacoin Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4,
|
||||
},
|
||||
pubKeyHash: 0x32,
|
||||
scriptHash: 0x05,
|
||||
wif: 0xB2,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.minexcoin = {
|
||||
messagePrefix: '\x18Bitcoin Signed Message:\n',
|
||||
bip32: {
|
||||
@@ -1023,6 +1056,17 @@ bitcoinjs.bitcoin.networks.rubycoin = {
|
||||
wif: 0xbc,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.salus = {
|
||||
messagePrefix: '\x18Salus Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4,
|
||||
},
|
||||
pubKeyHash: 0x3f,
|
||||
scriptHash: 0xc4,
|
||||
wif: 0xbf,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.smileycoin = {
|
||||
messagePrefix: '\x18Smileycoin Signed Message:\n',
|
||||
bip32: {
|
||||
@@ -1045,6 +1089,28 @@ bitcoinjs.bitcoin.networks.solarcoin = {
|
||||
wif: 0x92,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.stash = {
|
||||
messagePrefix: '\x18Stash Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488b21e,
|
||||
private: 0x0488ade4
|
||||
},
|
||||
pubKeyHash: 0x4c,
|
||||
scriptHash: 0x10,
|
||||
wif: 0xcc
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.stashtn = {
|
||||
messagePrefix: '\x18Stash Test Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x043587cf,
|
||||
private: 0x04358394
|
||||
},
|
||||
pubKeyHash: 0x8c,
|
||||
scriptHash: 0x13,
|
||||
wif: 0xef
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.stratis = {
|
||||
messagePrefix: '\x18Stratis Signed Message:\n',
|
||||
bip32: {
|
||||
@@ -1287,3 +1353,58 @@ bitcoinjs.bitcoin.networks.energi = {
|
||||
scriptHash: 0x35,
|
||||
wif: 0x6a,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.exchangecoin = {
|
||||
messagePrefix: 'ExchangeCoin Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4,
|
||||
},
|
||||
pubKeyHash: 0x21B9,
|
||||
scriptHash: 0x34AF,
|
||||
wif: 0x80,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.artax = {
|
||||
messagePrefix: '\x18Artax Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4,
|
||||
},
|
||||
pubKeyHash: 0x17,
|
||||
scriptHash: 0x1CBD,
|
||||
wif: 0x97,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.bitcoingreen = {
|
||||
messagePrefix: '\x18BitcoinGreen Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4,
|
||||
},
|
||||
pubKeyHash: 0x26,
|
||||
scriptHash: 0x1CBD,
|
||||
wif: 0x2E,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.anon = {
|
||||
messagePrefix: '\x18ANON Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x0488b21e,
|
||||
private: 0x0488ade4
|
||||
},
|
||||
pubKeyHash: 0x0582,
|
||||
scriptHash: 0x5389,
|
||||
wif: 0x80
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.projectcoin = {
|
||||
messagePrefix: '\x18ProjectCoin Signed Message:\n',
|
||||
bip32: {
|
||||
public: 0x022D2533,
|
||||
private: 0x0221312B,
|
||||
},
|
||||
pubKeyHash: 0x37,
|
||||
scriptHash: 0x08,
|
||||
wif: 0x75,
|
||||
};
|
||||
@@ -1659,6 +1659,13 @@
|
||||
network = bitcoinjs.bitcoin.networks.axe;
|
||||
setHdCoin(4242);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "ANON - ANON",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.anon;
|
||||
setHdCoin(220);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "BCA - Bitcoin Atom",
|
||||
@@ -1729,6 +1736,13 @@
|
||||
network = bitcoinjs.bitcoin.networks.testnet;
|
||||
setHdCoin(1);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "BITG - Bitcoin Green",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.bitcoingreen;
|
||||
setHdCoin(222);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "BTCP - Bitcoin Private",
|
||||
@@ -1744,6 +1758,13 @@
|
||||
setHdCoin(177);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "BTDX - BitCloud",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.bitcloud;
|
||||
setHdCoin(218);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "BTG - Bitcoin Gold",
|
||||
onSelect: function() {
|
||||
@@ -1765,6 +1786,13 @@
|
||||
setHdCoin(19);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "CESC - Cryptoescudo",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.cannacoin;
|
||||
setHdCoin(111);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "CDN - Canadaecoin",
|
||||
onSelect: function() {
|
||||
@@ -1928,6 +1956,13 @@
|
||||
setHdCoin(190);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "EXCC - ExchangeCoin",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.exchangecoin;
|
||||
setHdCoin(0);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "EXP - Expanse",
|
||||
segwitAvailable: false,
|
||||
@@ -2100,6 +2135,13 @@
|
||||
setHdCoin(13);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "MEC - Megacoin",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.megacoin;
|
||||
setHdCoin(217);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "MIX - MIX",
|
||||
segwitAvailable: false,
|
||||
@@ -2278,6 +2320,13 @@
|
||||
network = bitcoinjs.bitcoin.networks.peercoin;
|
||||
setHdCoin(6);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "PRJ - ProjectCoin",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.projectcoin;
|
||||
setHdCoin(533);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "PSB - Pesobit",
|
||||
@@ -2314,6 +2363,13 @@
|
||||
setHdCoin(129);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "SLS - Salus",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.salus;
|
||||
setHdCoin(63);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "SDC - ShadowCash",
|
||||
onSelect: function() {
|
||||
@@ -2356,6 +2412,20 @@
|
||||
setHdCoin(59);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "STASH - Stash",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.stash;
|
||||
setHdCoin(0xC0C0);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "STASH - Stash Testnet",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.stashtn;
|
||||
setHdCoin(0xCAFE);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "STRAT - Stratis",
|
||||
onSelect: function() {
|
||||
@@ -2453,6 +2523,13 @@
|
||||
network = bitcoinjs.bitcoin.networks.wincoin;
|
||||
setHdCoin(181);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "XAX - Artax",
|
||||
onSelect: function() {
|
||||
network = bitcoinjs.bitcoin.networks.artax;
|
||||
setHdCoin(219);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "XBC - Bitcoinplus",
|
||||
|
||||
@@ -133,4 +133,58 @@ bitcoinjs.bitcoin.networks.vertcoin.p2wpkhInP2sh = {
|
||||
wif: 0x80
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.bgold.p2wpkh = {
|
||||
baseNetwork: "bgold",
|
||||
messagePrefix: '\x1DBitcoin Gold Signed Message:\n',
|
||||
bech32: 'btg',
|
||||
bip32: {
|
||||
public: 0x04b24746,
|
||||
private: 0x04b2430c
|
||||
},
|
||||
pubKeyHash: 0x26,
|
||||
scriptHash: 0x17,
|
||||
wif: 0x80,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.bgold.p2wpkhInP2sh = {
|
||||
baseNetwork: "bgold",
|
||||
messagePrefix: '\x1DBitcoin Gold Signed Message:\n',
|
||||
bech32: 'btg',
|
||||
bip32: {
|
||||
public: 0x049d7cb2,
|
||||
private: 0x049d7878
|
||||
},
|
||||
pubKeyHash: 0x26,
|
||||
scriptHash: 0x17,
|
||||
wif: 0x80,
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.digibyte.p2wpkh = {
|
||||
baseNetwork: "digibyte",
|
||||
messagePrefix: '\x18DigiByte Signed Message:\n',
|
||||
bech32: 'dgb',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4
|
||||
},
|
||||
pubKeyHash: 0x1e,
|
||||
scriptHash: 0x3f,
|
||||
wif: 0x80
|
||||
};
|
||||
|
||||
bitcoinjs.bitcoin.networks.digibyte.p2wpkhInP2sh = {
|
||||
baseNetwork: "digibyte",
|
||||
messagePrefix: '\x18DigiByte Signed Message:\n',
|
||||
bech32: 'dgb',
|
||||
bip32: {
|
||||
public: 0x0488B21E,
|
||||
private: 0x0488ADE4
|
||||
},
|
||||
pubKeyHash: 0x1e,
|
||||
scriptHash: 0x3f,
|
||||
wif: 0x80
|
||||
};
|
||||
|
||||
|
||||
|
||||
})();
|
||||
|
||||
@@ -704,6 +704,13 @@ it('Allows selection of Bitcoinz', function(done) {
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of BitCloud', function(done) {
|
||||
var params = {
|
||||
selectText: "BTDX - BitCloud",
|
||||
firstAddress: "BHbWitXCNgTf1BhsRDNMP186EeibuzmrBi",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of Bitcore', function(done) {
|
||||
var params = {
|
||||
selectText: "BTX - Bitcore",
|
||||
@@ -956,6 +963,13 @@ it('Allows selection of Lynx', function(done) {
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of Megacoin', function(done) {
|
||||
var params = {
|
||||
selectText: "MEC - Megacoin",
|
||||
firstAddress: "MDfAj9CzkC1HpcUiVGnHp8yKTa7WXgu8AY",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of Minexcoin', function(done) {
|
||||
var params = {
|
||||
selectText: "MNX - Minexcoin",
|
||||
@@ -1075,6 +1089,13 @@ it('Allows selection of Rubycoin', function(done) {
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of Salus', function(done) {
|
||||
var params = {
|
||||
selectText: "SLS - Salus",
|
||||
firstAddress: "SNzPi1CafHFm3WWjRo43aMgiaEEj3ogjww",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of Smileycoin', function(done) {
|
||||
var params = {
|
||||
selectText: "SMLY - Smileycoin",
|
||||
@@ -1089,6 +1110,20 @@ it('Allows selection of Solarcoin', function(done) {
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of stash', function(done) {
|
||||
var params = {
|
||||
selectText: "STASH - Stash",
|
||||
firstAddress: "XxwAsWB7REDKmAvHA85SbEZQQtpxeUDxS3",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of stash testnet', function(done) {
|
||||
var params = {
|
||||
selectText: "STASH - Stash Testnet",
|
||||
firstAddress: "yWQCTSkUst7ddYuebKsqa1kSoXEjpCkGKR",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of Stratis', function(done) {
|
||||
var params = {
|
||||
selectText: "STRAT - Stratis",
|
||||
@@ -1271,7 +1306,41 @@ it('Allows selection of HUSH', function(done) {
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
|
||||
it('Allows selection of ExchangeCoin', function(done) {
|
||||
var params = {
|
||||
selectText: "EXCC - ExchangeCoin",
|
||||
firstAddress: "22txYKpFN5fwGwdSs2UBf7ywewbLM92YqK7E",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of Artax', function(done) {
|
||||
var params = {
|
||||
selectText: "XAX - Artax",
|
||||
firstAddress: "AYxaQPY7XLidG31V7F3yNzwxPYpYzRqG4q",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of BitcoinGreen', function(done) {
|
||||
var params = {
|
||||
selectText: "BITG - Bitcoin Green",
|
||||
firstAddress: "GeNGm9SkEfwbsws3UrrUSE2sJeyWYjzraY",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of ANON', function(done) {
|
||||
var params = {
|
||||
selectText: "ANON - ANON",
|
||||
firstAddress: "AnU6pijpEeUZFWSTyM2qTqZQn996Zq1Xard",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
it('Allows selection of ProjectCoin', function(done) {
|
||||
var params = {
|
||||
selectText: "PRJ - ProjectCoin",
|
||||
firstAddress: "PXZG97saRseSCftfe1mcFmfAA7pf6qBbaz",
|
||||
};
|
||||
testNetwork(done, params);
|
||||
});
|
||||
|
||||
// BIP39 seed is set from phrase
|
||||
it('Sets the bip39 seed from the prhase', function(done) {
|
||||
@@ -2843,7 +2912,7 @@ it('Can change details while old addresses are still being generated', function(
|
||||
});
|
||||
});
|
||||
});
|
||||
}, generateDelay + 5000);
|
||||
}, generateDelay + 10000);
|
||||
|
||||
// Github issue 49
|
||||
// padding for binary should give length with multiple of 256
|
||||
|
||||
Reference in New Issue
Block a user