]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blame - src/index.html
License details in More Info section
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / src / index.html
CommitLineData
ebd8d4e8
IC
1<!DOCTYPE html>
2<html>
3 <head lang="en">
4 <meta charset="utf-8" />
5 <title>BIP39 - Mnemonic Code</title>
cee442b1 6 <link rel="stylesheet" href="css/bootstrap.min.css">
ebd8d4e8
IC
7 <meta content="Mnemonic code for generating deterministic keys" name="description"/>
8 <meta content="width=device-width, initial-scale=1.0" name="viewport" />
9 <meta content="bitcoin mnemonic converter" name="description" />
b630f83d 10 <meta content="Ian Coleman" name="author" />
ebd8d4e8
IC
11
12 <style>
f52dcdbd
IC
13 body {
14 padding-bottom: 32px;
15 }
d198865f
IC
16 .form-control[readonly] {
17 cursor: text;
dd566a1e 18 }
ebd8d4e8
IC
19 .feedback-container {
20 position: fixed;
21 top: 0;
22 width: 100%;
23 text-align: center;
24 z-index: 4;
25 }
26 .feedback {
27 display: table;
28 padding: 0.5em 1em;
29 background-color: orange;
30 margin: 0 auto;
31 font-size: 2em;
32 color: #444;
33 border: 2px solid #555;
34 border-top: 0;
35 border-bottom-left-radius: 20px 20px;
36 border-bottom-right-radius: 20px 20px;
37 }
55a9e51a
IC
38 .no-border {
39 border: 0;
40 box-shadow: inset 0 1px 1px rgba(0,0,0,.0);
41 -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.0);
42 }
5ee7bb9e
IC
43 .phrase {
44 word-break: keep-all;
45 }
0a84fe6a 46 .generate-container .strength {
b0818b31
IC
47 /* override mobile width from bootstrap */
48 width: auto!important;
49 display: inline-block;
50 }
60599f7a 51 .languages a {
7c31e3cd
IC
52 padding-left: 10px;
53 }
60599f7a
IC
54 .languages a:nth-of-type(1) {
55 margin-left: -12px;
56 padding-left: 0;
57 }
d737abf6
IC
58 .monospace {
59 font-family: monospace;
60 }
0a84fe6a
IC
61 .entropy-container .filtered,
62 .entropy-container .binary {
63 word-wrap: break-word;
64 }
65 .entropy-container li {
66 padding-bottom: 5px;
67 }
b54c1218 68 .card-suit {
b2d61f56 69 font-size: 19px;
b54c1218
IC
70 line-height: 0;
71 }
72 .card-suit.club {
73 color: #009F00;
74 }
75 .card-suit.diamond {
76 color: #3D5DC4;
77 }
78 .card-suit.heart {
79 color: #F00;
80 }
81 .card-suit.spade {
82 color: #000;
83 }
e00964cc
IC
84 .qr-container {
85 position: fixed;
86 top: 0;
87 right: 0;
88 text-align: center;
89 background-color: #FFF;
90 border: 1px solid #CCC;
91 }
92 .qr-image {
93 margin: 5px;
94 }
95 .qr-hint {
96 padding: 2px;
97 }
ebd8d4e8
IC
98 </style>
99 </head>
100 <body>
101 <div class="container">
102
103 <h1 class="text-center">Mnemonic Code Converter</h1>
104 <hr>
105 <div class="row">
106 <div class="col-md-12">
d4779799 107 <h2>Mnemonic</h2>
ebd8d4e8 108 <form class="form-horizontal" role="form">
ebd8d4e8 109 <div class="form-group">
c6624d51
IC
110 <div class="col-sm-2"></div>
111 <div class="col-sm-10">
60599f7a
IC
112 <p data-translate>You can enter an existing BIP39 mnemonic, or generate a new random one. Typing your own twelve words will probably not work how you expect, since the words require a particular structure (the last word is a checksum).</p>
113 <p data-translate-html>
114 For more info see the
115 <a href="https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki" target="_blank">BIP39 spec</a>.
116 </p>
c6624d51
IC
117 </div>
118 </div>
119 <div class="form-group generate-container">
b0818b31 120 <label class="col-sm-2 control-label"></label>
ebd8d4e8 121 <div class="col-sm-10">
b0818b31
IC
122 <div class="form-inline">
123 <div class="input-group-inline">
60599f7a 124 <span data-translate>Generate a random mnemonic, or enter your own below</span>:
b0818b31 125 <button class="btn generate">Generate</button>
b0818b31
IC
126 <select id="strength" class="strength form-control">
127 <option value="3">3</option>
128 <option value="6">6</option>
129 <option value="9">9</option>
130 <option value="12">12</option>
131 <option value="15" selected>15</option>
132 <option value="18">18</option>
133 <option value="21">21</option>
134 <option value="24">24</option>
135 </select>
60599f7a 136 <span data-translate>words</span>
b0818b31
IC
137 </div>
138 </div>
ebd8d4e8 139 </div>
7c31e3cd 140 </div>
c6624d51 141 <div class="entropy-container hidden">
0a84fe6a 142 <div class="form-group text-danger">
60599f7a 143 <label class="col-sm-2 control-label" data-translate>Warning</label>
0a84fe6a 144 <div class="col-sm-10 form-control-static">
60599f7a
IC
145 <span data-translate>Entropy is an advanced feature. Your mnemonic may be insecure if this feature is used incorrectly.</span>
146 <a href="#entropy-notes" data-translate>Read more</a>
439f0e25 147 </div>
1cf1bbaf 148 </div>
0a84fe6a 149 <div class="form-group">
60599f7a 150 <label for="entropy" class="col-sm-2 control-label" data-translate>Entropy</label>
0a84fe6a 151 <div class="col-sm-7">
60599f7a 152 <textarea id="entropy" rows="2" class="entropy form-control" placeholder="Accepts binary, base 6, 6-sided dice, base 10, hexadecimal, cards" data-translate-placeholder></textarea>
a3a61b68 153 <div class="row">
60599f7a 154 <label class="col-sm-3 control-label" data-translate>Strength</label>
a3a61b68 155 <div class="strength col-sm-3 form-control-static"></div>
60599f7a 156 <label class="col-sm-3 control-label" data-translate>Event Count</label>
a3a61b68
IC
157 <div class="event-count col-sm-3 form-control-static"></div>
158 </div>
159 <div class="row">
60599f7a 160 <label class="col-sm-3 control-label" data-translate>Entropy Type</label>
a3a61b68 161 <div class="type col-sm-3 form-control-static"></div>
60599f7a 162 <label class="col-sm-3 control-label" data-translate>Bits Per Event</label>
a3a61b68
IC
163 <div class="bits-per-event col-sm-3 form-control-static"></div>
164 </div>
165 <div class="row">
60599f7a 166 <label class="col-sm-3 control-label" data-translate>Word Count</label>
a3a61b68 167 <div class="word-count col-sm-3 form-control-static"></div>
60599f7a 168 <label class="col-sm-3 control-label" data-translate>Total Bits</label>
a3a61b68
IC
169 <div class="bits col-sm-3 form-control-static"></div>
170 </div>
60599f7a 171 <label class="col-sm-3 control-label" data-translate>Filtered Entropy</label>
0a84fe6a 172 <div class="filtered col-sm-9 form-control-static"></div>
60599f7a 173 <label class="col-sm-3 control-label" data-translate>Raw Binary</label>
0a84fe6a 174 <div class="binary col-sm-9 form-control-static"></div>
60599f7a 175 <label class="col-sm-3 control-label" data-translate>Mnemonic Length</label>
0a84fe6a 176 <div class="col-sm-9">
1cf1bbaf 177 <select class="mnemonic-length form-control">
60599f7a
IC
178 <option value="raw" data-translate>From entropy length (3 words per 32 bits)</option>
179 <option value="12">12 <span data-translate>Words</span></option>
180 <option value="15" selected>15 <span data-translate>Words</option>
181 <option value="18">18 <span data-translate>Words</span></option>
182 <option value="21">21 <span data-translate>Words</span></option>
183 <option value="24">24 <span data-translate>Words</span></option>
1cf1bbaf 184 </select>
c6624d51 185 </div>
1cf1bbaf 186 </div>
0a84fe6a 187 <div class="col-sm-3">
60599f7a 188 <p data-translate>Valid entropy values include:</p>
0a84fe6a 189 <ul>
60599f7a
IC
190 <li><strong data-translate>Binary</strong> [0-1]<br>101010011</li>
191 <li><strong data-translate>Base 6</strong> [0-5]<br>123434014</li>
192 <li><strong data-translate>Dice</strong> [1-6]<br>62535634</li>
193 <li><strong data-translate>Base 10</strong> [0-9]<br>90834528</li>
194 <li><strong data-translate>Hex</strong> [0-9A-F]<br>4187a8bfd9</li>
195 <li><strong data-translate>Card</strong> [A2-9TJQK][CDHS]<br>ahqs9dtc</li>
0a84fe6a
IC
196 </ul>
197 </div>
c6624d51
IC
198 </div>
199 </div>
200 <div class="form-group">
201 <div class="col-sm-2"></div>
202 <div class="col-sm-10 checkbox">
203 <label>
204 <input type="checkbox" class="use-entropy">
60599f7a 205 <span data-translate>Supply my own source of entropy</span>
c6624d51
IC
206 </label>
207 </div>
208 </div>
209 <div class="form-group">
60599f7a 210 <label class="col-sm-2 control-label" data-translate>Mnemonic Language</label>
7c31e3cd 211 <div class="col-sm-10 languages">
60599f7a
IC
212 <div class="form-control no-border">
213 <a href="#english">English</a>
214 <a href="#japanese" title="Japanese">日本語</a>
215 <a href="#spanish" title="Spanish">Español</a>
216 <a href="#chinese_simplified" title="Chinese (Simplified)">中文(简体)</a>
217 <a href="#chinese_traditional" title="Chinese (Traditional)">中文(繁體)</a>
218 <a href="#french" title="French">Français</a>
219 <a href="#italian" title="Italian">Italiano</a>
220 </div>
7c31e3cd 221 </div>
ebd8d4e8
IC
222 </div>
223 <div class="form-group">
60599f7a 224 <label for="phrase" class="col-sm-2 control-label" data-translate>BIP39 Mnemonic</label>
ebd8d4e8 225 <div class="col-sm-10">
e00964cc 226 <textarea id="phrase" class="phrase form-control" data-show-qr></textarea>
ebd8d4e8
IC
227 </div>
228 </div>
1abcc511 229 <div class="form-group">
60599f7a 230 <label for="passphrase" class="col-sm-2 control-label" data-translate>BIP39 Passphrase (optional)</label>
1abcc511
PR
231 <div class="col-sm-10">
232 <textarea id="passphrase" class="passphrase form-control"></textarea>
233 </div>
234 </div>
3e0ed16a 235 <div class="form-group">
60599f7a 236 <label for="seed" class="col-sm-2 control-label" data-translate>BIP39 Seed</label>
3e0ed16a 237 <div class="col-sm-10">
e00964cc 238 <textarea id="seed" class="seed form-control" readonly="readonly" data-show-qr></textarea>
3e0ed16a
KK
239 </div>
240 </div>
4d457a38 241 <div class="form-group">
60599f7a 242 <label for="network-phrase" class="col-sm-2 control-label" data-translate>Coin</label>
4d457a38
IC
243 <div class="col-sm-10">
244 <select id="network-phrase" class="network form-control">
7f15cb6e 245 <!-- populated by javascript -->
4d457a38
IC
246 </select>
247 </div>
248 </div>
ebd8d4e8 249 <div class="form-group">
60599f7a 250 <label for="root-key" class="col-sm-2 control-label" data-translate>BIP32 Root Key</label>
ebd8d4e8 251 <div class="col-sm-10">
e00964cc 252 <textarea id="root-key" class="root-key form-control" data-show-qr></textarea>
ebd8d4e8
IC
253 </div>
254 </div>
255 </form>
256 </div>
257 </div>
258
259 <hr>
260
261 <div class="row">
262 <div class="col-md-12">
263 <h2>Derivation Path</h2>
264 <ul class="derivation-type nav nav-tabs" role="tablist">
55a9e51a 265 <li id="bip44-tab" class="active">
23d4a0f1
IC
266 <a href="#bip44" role="tab" data-toggle="tab">BIP44</a>
267 </li>
3b40653f 268 <li id="bip32-tab">
23d4a0f1
IC
269 <a href="#bip32" role="tab" data-toggle="tab">BIP32</a>
270 </li>
ebd8d4e8
IC
271 </ul>
272 <div class="derivation-type tab-content">
55a9e51a 273 <div id="bip44" class="tab-pane active">
ebd8d4e8
IC
274 <form class="form-horizontal" role="form">
275 <br>
276 <div class="col-sm-2"></div>
277 <div class="col-sm-10">
60599f7a
IC
278 <p data-translate-html>
279 For more info see the
280 <a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki" target="_blank">BIP44 spec</a>.
281 </p>
ebd8d4e8
IC
282 </div>
283 <div class="form-group">
284 <label for="purpose" class="col-sm-2 control-label">
60599f7a 285 <a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#purpose" target="_blank" data-translate>Purpose</a>
ebd8d4e8
IC
286 </label>
287 <div class="col-sm-10">
288 <input id="purpose" type="text" class="purpose form-control" value="44">
289 </div>
290 </div>
291 <div class="form-group">
292 <label for="coin" class="col-sm-2 control-label">
60599f7a 293 <a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#registered-coin-types" target="_blank" data-translate>Coin</a>
ebd8d4e8
IC
294 </label>
295 <div class="col-sm-10">
296 <input id="coin" type="text" class="coin form-control" value="0">
297 </div>
298 </div>
299 <div class="form-group">
300 <label for="account" class="col-sm-2 control-label">
60599f7a 301 <a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#account" target="_blank" data-translate>Account</a>
ebd8d4e8
IC
302 </label>
303 <div class="col-sm-10">
304 <input id="account" type="text" class="account form-control" value="0">
305 </div>
306 </div>
307 <div class="form-group">
308 <label for="change" class="col-sm-2 control-label">
60599f7a 309 <a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#change" target="_blank" data-translate>External / Internal</a>
ebd8d4e8
IC
310 </label>
311 <div class="col-sm-10">
312 <input id="change" type="text" class="change form-control" value="0">
313 </div>
314 </div>
c554e6ff
IC
315 <div class="form-group">
316 <label class="col-sm-2 control-label">
317 </label>
318 <div class="col-sm-10">
f3bfd2a5 319 <p data-translate>The account extended keys can be used for importing to most BIP44 compatible wallets, such as mycelium or electrum.</p>
c554e6ff
IC
320 </div>
321 </div>
322 <div class="form-group">
323 <label for="account-xprv" class="col-sm-2 control-label">
324 <span data-translate>Account Extended Private Key</span>
325 </label>
326 <div class="col-sm-10">
327 <textarea id="account-xprv" type="text" class="account-xprv form-control" readonly data-show-qr></textarea>
328 </div>
329 </div>
330 <div class="form-group">
331 <label for="account-xpub" class="col-sm-2 control-label">
332 <span data-translate>Account Extended Public Key</span>
333 </label>
334 <div class="col-sm-10">
335 <textarea id="account-xpub" type="text" class="account-xpub form-control" readonly data-show-qr></textarea>
336 </div>
337 </div>
338 <div class="form-group">
339 <label class="col-sm-2 control-label">
340 </label>
341 <div class="col-sm-10">
342 <p data-translate>The BIP32 derivation path and extended keys are the basis for the derived addresses.</p>
343 </div>
344 </div>
ebd8d4e8 345 <div class="form-group">
60599f7a 346 <label for="bip44-path" class="col-sm-2 control-label" data-translate>BIP32 Derivation Path</label>
ebd8d4e8 347 <div class="col-sm-10">
d198865f 348 <input id="bip44-path" type="text" class="path form-control" value="m/44'/0'/0'/0" readonly="readonly">
ebd8d4e8
IC
349 </div>
350 </div>
351 </form>
352 </div>
353 <div id="bip32" class="tab-pane">
354 <form class="form-horizontal" role="form">
355 <br>
356 <div class="col-sm-2"></div>
357 <div class="col-sm-10">
60599f7a
IC
358 <p data-translate>
359 For more info see the
360 <a href="https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki" target="_blank">BIP32 spec</a>
361 </p>
ebd8d4e8
IC
362 </div>
363 <div class="form-group">
60599f7a 364 <label for="bip32-path" class="col-sm-2 control-label" data-translate>BIP32 Derivation Path</label>
ebd8d4e8
IC
365 <div class="col-sm-10">
366 <input id="bip32-path" type="text" class="path form-control" value="m/0">
367 </div>
368 </div>
146e089e
IC
369 <div class="form-group">
370 <div class="col-sm-2"></div>
371 <label class="col-sm-10">
372 <input class="hardened-addresses" type="checkbox">
60599f7a 373 <span data-translate>Use hardened addresses</span>
146e089e
IC
374 </label>
375 </div>
8786746b 376 <div class="form-group">
60599f7a 377 <label for="core-path" class="col-sm-2 control-label" data-translate>Bitcoin Core</label>
8786746b 378 <div class="col-sm-10">
60599f7a 379 <p class="form-control no-border" data-translate-html>
8786746b 380 Use path <code>m/0'/0'</code> with hardened addresses.
ea12c8a9 381 </p>
60599f7a
IC
382 <p class="form-control no-border" data-translate-html>
383 For more info see the
384 <a href="https://github.com/bitcoin/bitcoin/pull/8035" target="_blank">Bitcoin Core BIP32 implementation</a>
8786746b
IC
385 </p>
386 </div>
387 </div>
aa51da11 388 <div class="form-group">
60599f7a 389 <label class="col-sm-2 control-label" data-translate>Block Explorers</label>
aa51da11
IC
390 <div class="col-sm-10">
391 <p class="form-control no-border">
60599f7a
IC
392 <span data-translate-html>Use path <code>m/44'/0'/0'</code>.</span>
393 <span data-translate-html>Only enter the <code>xpub</code> extended key into block explorer search fields, never the <code>xprv</code> key.</span>
ea12c8a9
IC
394 </p>
395 <p class="form-control no-border">
60599f7a
IC
396 <span data-translate>Can be used with</span>:
397 <a href="https://blockchain.info/" target="_blank">blockchain.info</a>
aa51da11
IC
398 </p>
399 </div>
400 </div>
ebd8d4e8
IC
401 </form>
402 </div>
403 </div>
404 <form class="form-horizontal" role="form">
405 <div class="form-group">
c554e6ff 406 <label for="extended-priv-key" class="col-sm-2 control-label" data-translate>BIP32 Extended Private Key</label>
ebd8d4e8 407 <div class="col-sm-10">
e00964cc 408 <textarea id="extended-priv-key" class="extended-priv-key form-control" readonly="readonly" data-show-qr></textarea>
ebd8d4e8
IC
409 </div>
410 </div>
411 <div class="form-group">
c554e6ff 412 <label for="extended-pub-key" class="col-sm-2 control-label" data-translate>BIP32 Extended Public Key</label>
ebd8d4e8 413 <div class="col-sm-10">
e00964cc 414 <textarea id="extended-pub-key" class="extended-pub-key form-control" readonly="readonly" data-show-qr></textarea>
ebd8d4e8
IC
415 </div>
416 </div>
417 </form>
418 </div>
419 </div>
420
421 <hr>
422
423 <div class="row">
424 <div class="col-md-12">
425 <h2>Derived Addresses</h2>
60599f7a 426 <p data-translate>Note these addreses are derived from the BIP32 Extended Key</p>
ebd8d4e8
IC
427 <table class="table table-striped">
428 <thead>
429 <th>
430 <div class="input-group">
60599f7a
IC
431 <span data-translate>Path</span>&nbsp;&nbsp;
432 <button class="index-toggle" data-translate>Toggle</button>
ebd8d4e8
IC
433 </div>
434 </th>
435 <th>
436 <div class="input-group">
60599f7a
IC
437 <span data-translate>Address</span>&nbsp;&nbsp;
438 <button class="address-toggle" data-translate>Toggle</button>
ebd8d4e8
IC
439 </div>
440 </th>
1b12b2f5
IC
441 <th>
442 <div class="input-group">
60599f7a
IC
443 <span data-translate>Public Key</span>&nbsp;&nbsp;
444 <button class="public-key-toggle" data-translate>Toggle</button>
1b12b2f5
IC
445 </div>
446 </th>
ebd8d4e8
IC
447 <th>
448 <div class="input-group">
60599f7a
IC
449 <span data-translate>Private Key</span>&nbsp;&nbsp;
450 <button class="private-key-toggle" data-translate>Toggle</button>
ebd8d4e8
IC
451 </div>
452 </th>
453 </thead>
d737abf6 454 <tbody class="addresses monospace">
a0a19620
IC
455 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
456 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
457 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
458 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
459 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
ebd8d4e8
IC
460 </tbody>
461 </table>
462 </div>
463 </div>
60599f7a 464 <span data-translate>Show more rows</span>:
ebd8d4e8 465 <input type="number" class="rows-to-add" value="20">
60599f7a 466 <button class="more" data-translate>Show</button>
ebd8d4e8
IC
467
468 <hr>
469
470 <div class="row">
471 <div class="col-md-12">
60599f7a
IC
472 <h2 data-translate>More info</h2>
473 <h3>BIP39 <span class="small" data-translate>Mnemonic code for generating deterministic keys</span></h3>
474 <p data-translate-html>
ebd8d4e8
IC
475 Read more at the
476 <a href="https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki">official BIP39 spec</a>
477 </p>
60599f7a
IC
478 <h3>BIP32 <span class="small" data-translate>Hierarchical Deterministic Wallets</span></h3>
479 <p data-translate-html>
ebd8d4e8
IC
480 Read more at the
481 <a href="https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki" target="_blank">official BIP32 spec</a>
60599f7a
IC
482 </p>
483 <p data-translate-html>
484 See the demo at
ebd8d4e8
IC
485 <a href="http://bip32.org/" target="_blank">bip32.org</a>
486 </p>
60599f7a
IC
487 <h3>BIP44 <span class="small" data-translate>Multi-Account Hierarchy for Deterministic Wallets</span></h3>
488 <p data-translate-html>
ebd8d4e8
IC
489 Read more at the
490 <a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki" target="_blank">official BIP44 spec</a>
491 </p>
60599f7a 492 <h3 data-translate>Private Keys</h3>
ebd8d4e8 493 <p>
60599f7a
IC
494 <span data-translate-html>
495 Use private keys at
496 <a href="https://web.archive.org/web/20150707020924/https://brainwallet.org/" target="_blank">brainwallet.org</a>.
497 </span>
498 <span data-translate>Be careful - it can be easy to make mistakes if you don't know what you're doing.</span>
ebd8d4e8 499 </p>
60599f7a 500 <h3 id="entropy-notes" data-translate>Entropy</h3>
c6624d51 501 <p>
60599f7a
IC
502 <span data-translate-html>
503 Entropy values must be sourced from a
504 <a href="https://en.wikipedia.org/wiki/Random_number_generation" target="_blank">strong source of randomness</a>.
505 </span>
506 <span data-translate>This means flipping a fair coin, rolling a fair dice, noise measurements etc.</span>
507 <span data-translate-html>
508 Do <strong>NOT</strong> use phrases from books, lyrics from songs, your birthday or steet address,
509 keyboard mashing, or anything you <i>think</i> is random, because chances are overwhelming it isn't
510 random enough for the needs of this tool.
511 </span>
c6624d51
IC
512 </p>
513 <p>
60599f7a
IC
514 <span data-translate-html>
515 The random mnemonic generator on this page uses a
516 <a href="https://developer.mozilla.org/en-US/docs/Web/API/RandomSource/getRandomValues" target="_blank">cryptographically secure random number generator</a>.
517 </span>
518 <span data-translate>The built in random generator can generally be trusted more than your own intuition about randomness.</span>
519 <span data-translate>If cryptographic randomness isn't available in your browser, this page will show a warning and the generate button will not work.</span>
520 <span data-translate>In that case you might choose to use your own source of entropy.</span>
c6624d51
IC
521 </p>
522 <p>
60599f7a 523 <a href="https://bitcointalk.org/index.php?topic=311000.msg3345309#msg3345309" target="_blank" data-translate>You are not a good source of entropy.</a>
c6624d51 524 </p>
1f618a77
IC
525 <h3 data-translate>License</h3>
526 <p>
527 <span data-translate-html>Please refer to <a href="https://github.com/iancoleman/bip39/blob/master/LICENSE" target="_blank">the software license</a> for more detail.
528 </span>
529 </p>
530 <p data-translate>The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.</p>
ebd8d4e8
IC
531 </div>
532 </div>
45b8a745
IC
533
534 <hr>
535
c5863485
IC
536 <div class="row">
537 <div class="col-md-12">
538
60599f7a 539 <h2 data-translate>Offline Usage</h2>
c5863485 540
60599f7a 541 <p data-translate>
c5863485
IC
542 You can use this tool without having to be online.
543 </p>
60599f7a 544 <p data-translate>
c5863485
IC
545 In your browser, select file save-as, and save this page
546 as a file.
547 </p>
60599f7a 548 <p data-translate>
c5863485
IC
549 Double-click that file to open it in a browser
550 on any offline computer.
551 </p>
552 <p>
60599f7a
IC
553 <span data-translate>Alternatively, download the file from the repository</span>
554 -
555 <a href="https://github.com/iancoleman/bip39">https://github.com/iancoleman/bip39</a>
556 </p>
c5863485
IC
557
558 </div>
559 </div>
560
561 <hr>
562
45b8a745
IC
563 <div class="row">
564 <div class="col-md-12">
565
60599f7a 566 <h2 data-translate>This project is 100% open-source code</h2>
45b8a745
IC
567
568 <p>
60599f7a
IC
569 <span data-translate>Get the source code from the repository</span>
570 -
b630f83d
IC
571 <a href="https://github.com/iancoleman/bip39" target="_blank">
572 https://github.com/iancoleman/bip39
45b8a745
IC
573 </a>
574 </p>
575
60599f7a 576 <h3 data-translate>Libraries</h3>
45b8a745
IC
577
578 <p>
579 <span>BitcoinJS - </span>
580 <a href="https://github.com/bitcoinjs/bitcoinjs-lib" target="_blank">
581 https://github.com/bitcoinjs/bitcoinjs-lib
582 </a>
583 </p>
584
585 <p>
586 <span>jsBIP39 - </span>
587 <a href="https://github.com/iancoleman/jsbip39" target="_blank">
588 https://github.com/iancoleman/jsbip39
589 </a>
590 </p>
591
592 <p>
0937f3ab
IC
593 <span>sjcl - </span>
594 <a href="https://github.com/bitwiseshiftleft/sjcl" target="_blank">
595 https://github.com/bitwiseshiftleft/sjcl
45b8a745
IC
596 </a>
597 </p>
598
599 <p>
600 <span>jQuery - </span>
601 <a href="https://jquery.com/" target="_blank">
602 https://jquery.com/
603 </a>
604 </p>
605
606 <p>
607 <span>Twitter Bootstrap - </span>
608 <a href="http://getbootstrap.com/" target="_blank">
609 http://getbootstrap.com/
610 </a>
611 </p>
612
613 </div>
614 </div>
615
ebd8d4e8
IC
616 </div>
617
e00964cc
IC
618 <div class="qr-container hidden">
619 <div class="qr-hint bg-primary" data-translate>Click field to hide QR</div>
620 <div class="qr-hint bg-primary hidden" data-translate>Click field to show QR</div>
621 <div class="qr-image"></div>
622 </div>
623
ebd8d4e8 624 <div class="feedback-container">
d26cce22 625 <div class="feedback">Loading...</div>
ebd8d4e8
IC
626 </div>
627
628 <script type="text/template" id="address-row-template">
629 <tr>
630 <td class="index"><span></span></td>
e00964cc
IC
631 <td class="address"><span data-show-qr></span></td>
632 <td class="pubkey"><span data-show-qr></span></td>
633 <td class="privkey"><span data-show-qr></span></td>
ebd8d4e8
IC
634 </tr>
635 </script>
cee442b1
KK
636 <script src="js/jquery.min.js"></script>
637 <script src="js/bootstrap.min.js"></script>
563e401a 638 <script src="js/levenshtein.js"></script>
e00964cc 639 <script src="js/jquery.qrcode.min.js"></script>
cee442b1
KK
640 <script src="js/bitcoinjs-1-5-7.js"></script>
641 <script src="js/bitcoinjs-extensions.js"></script>
642 <script src="js/sjcl-bip39.js"></script>
c3c3df47
IC
643 <script src="js/translate.js"></script>
644 <script src="js/phrases_en.js"></script>
cee442b1 645 <script src="js/wordlist_english.js"></script>
3a8dbe99
IC
646 <script src="js/wordlist_japanese.js"></script>
647 <script src="js/wordlist_spanish.js"></script>
648 <script src="js/wordlist_chinese_simplified.js"></script>
649 <script src="js/wordlist_chinese_traditional.js"></script>
650 <script src="js/wordlist_french.js"></script>
651 <script src="js/wordlist_italian.js"></script>
cee442b1 652 <script src="js/jsbip39.js"></script>
b6dbc2a1 653 <script src="js/biginteger.js"></script>
b299a6a7 654 <script src="js/zxcvbn.js"></script>
c6624d51 655 <script src="js/entropy.js"></script>
cee442b1 656 <script src="js/index.js"></script>
ebd8d4e8
IC
657 </body>
658</html>