]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blob - libs/combined/index.js
Add immae_config.yaml
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / libs / combined / index.js
1 /* base-x */
2
3 module.exports.basex = require('base-x')
4
5 /* base32 */
6
7 module.exports.base32 = require('base32.js')
8
9 /* bchaddrjs */
10
11 module.exports.bchaddr = require('bchaddrjs')
12
13 /* bchaddrjs slp */
14
15 module.exports.bchaddrSlp = require('bchaddrjs-slp')
16
17 /* bech32 */
18
19 module.exports.bech32 = require('bech32')
20
21 /* biginteger */
22
23 module.exports.BigInteger = require('javascript-biginteger')
24
25 /* bitcoinjs-bip38 */
26
27 module.exports.bip38 = require('bip38')
28
29 /* bip85 */
30
31 module.exports.bip85 = require('bip85')
32
33 /* bitcoinjs-lib */
34
35 module.exports.bitcoin = require('bitcoinjs-lib')
36
37 /* buffer */
38
39 module.exports.buffer = require('buffer');
40
41 /* elastos */
42 // See https://github.com/iancoleman/bip39/pull/368
43 // and https://github.com/johnnynanjiang/Elastos.SDK.Keypair.Javascript/tree/iancoleman-bip39
44
45 module.exports.elastosjs = require('elastos-wallet-js')
46
47 /* ethereum-util */
48
49 module.exports.ethUtil = require('ethereumjs-util')
50
51 /* fast-levenshtein */
52
53 module.exports.levenshtein = require('fast-levenshtein')
54
55 /* groestlcoin */
56
57 module.exports.groestlcoinjs = require('groestlcoinjs-lib')
58
59 /* groestlcoin bip38 */
60
61 module.exports.groestlcoinjsBip38 = require('bip38grs')
62
63 /* kjua qr codes */
64
65 module.exports.kjua = require('kjua')
66
67 /* nebulas */
68
69 try {
70 module.exports.nebulas = require('nebulas')
71 }
72 catch (e) {
73 console.warn("Error loading nebulas library");
74 console.warn(e);
75 };
76
77 /* stellar-util */
78
79 let StellarBase = require('stellar-base');
80 let edHd = require('ed25519-hd-key');
81 module.exports.stellarUtil = {
82 getKeypair: function (path, seed) {
83 const result = edHd.derivePath(path, seed);
84 return StellarBase.Keypair.fromRawEd25519Seed(result.key);
85 },
86 dummyNetwork: {
87 bip32: {public: 0, private: 0},
88 messagePrefix: '',
89 pubKeyHash: 0,
90 scriptHash: 0,
91 wif: 0,
92 },
93 }
94
95 /* zoobc-util */
96
97 let base32 = require('base32.js');
98 let nbl = require('nebulas');
99 module.exports.zoobcUtil = {
100 getKeypair: function (path, seed) {
101 const { key, chainCode} = edHd.derivePath(path, seed);
102 const pubKey = edHd.getPublicKey(key);
103 return {key,chainCode, pubKey};
104 },
105 getZBCAddress(publicKey, prefix = "ZBC") {
106 const prefixDefault = ["ZBC", "ZNK", "ZBL", "ZTX"];
107 const valid = prefixDefault.indexOf(prefix) > -1;
108 if (valid) {
109 var bytes = new Uint8Array(35);
110 for (let i = 0; i < 32; i++) bytes[i] = publicKey[i];
111 for (let i = 0; i < 3; i++) bytes[i + 32] = prefix.charCodeAt(i);
112 const checksum = nbl.CryptoUtils.sha3(bytes);
113 for (let i = 0; i < 3; i++) bytes[i + 32] = Number(checksum[i]);
114 var segs = [prefix];
115 var b32 = base32.encode(bytes);
116 for (let i = 0; i < 7; i++) segs.push(b32.substr(i * 8, 8));
117 return segs.join("_");
118 } else {
119 throw new Error("The Prefix not available!");
120 }
121 }
122 }
123
124 /* nano-util */
125
126 let NanoBase = require('nanocurrency-web');
127 module.exports.nanoUtil = {
128 getKeypair: function (index, seed) {
129 const accounts = NanoBase.wallet.accounts(seed, index, index)
130 return {privKey: accounts[0].privateKey, pubKey: accounts[0].publicKey, address: accounts[0].address};
131 },
132 dummyNetwork: {
133 bip32: {public: 0, private: 0},
134 messagePrefix: '',
135 pubKeyHash: 0,
136 scriptHash: 0,
137 wif: 0,
138 },
139 }
140
141 /* unorm */
142
143 module.exports.unorm = require('unorm')
144
145 /* zxcvbn */
146
147 module.exports.zxcvbn = require('zxcvbn')
148
149 /* handshake */
150 module.exports.handshake = require('handshake-util')
151
152 /* bs58 */
153 try {
154 module.exports.bs58 = require('bs58')
155 }
156 catch (e) {
157 console.warn("Error loading bs58 library");
158 console.warn(e);
159 };
160
161 /* create-hash */
162 try {
163 module.exports.createHash = require('create-hash')
164 }
165 catch (e) {
166 console.warn("Error loading create-hash library");
167 console.warn(e);
168 };
169