From 4113e48d0e39c2e6a9971b5120025895713b02a7 Mon Sep 17 00:00:00 2001 From: pointbiz Date: Wed, 30 Apr 2014 17:53:51 -0400 Subject: [PATCH 01/18] v2.9.4 Japanese translations for Split Wallet. Make body, html height 99%. --- bitaddress.org.html | 6 +++--- package.json | 3 ++- src/bitaddress-ui.html | 2 +- src/main.css | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/bitaddress.org.html b/bitaddress.org.html index fb269cf..72c0dae 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -6314,7 +6314,7 @@ hr { margin: 20px 0; border-top: 2px dashed #008000; } .keyarea .qrcode_private { display: inline-block; position: relative; top: 28px; float: right; } .pubkeyhex { word-wrap: break-word; } body { font-family: Arial; } -body, html { min-height: 99%; } +body, html { height: 99%; } .faqs ol { padding: 0 0 0 25px; } .faqs li { padding: 3px 0; } .question { padding: 10px 15px; text-align: left; cursor: pointer; } @@ -6767,7 +6767,7 @@ body, html { min-height: 99%; }
-
+

@@ -6879,7 +6879,7 @@ body, html { min-height: 99%; }
- Version History (v2.9.3) + Version History (v2.9.4) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
diff --git a/package.json b/package.json index dd09020..1f0bd7d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,7 @@ { "name": "bitaddress.org", - "version": "2.9.3", + "version": "2.9.4", + "sha1sum": "d7b15847a1893ca3dff433714ec013493f8478b6", "description": "Open Source JavaScript Client-Side Bitcoin Wallet Generator", "main": "Gruntfile.js", "dependencies": { diff --git a/src/bitaddress-ui.html b/src/bitaddress-ui.html index a2261bb..01d2ecb 100644 --- a/src/bitaddress-ui.html +++ b/src/bitaddress-ui.html @@ -465,7 +465,7 @@
- Version History (v2.9.3) + Version History (v2.9.4) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
diff --git a/src/main.css b/src/main.css index 6de82d0..5b9afad 100644 --- a/src/main.css +++ b/src/main.css @@ -16,7 +16,7 @@ hr { margin: 20px 0; border-top: 2px dashed #008000; } .keyarea .qrcode_private { display: inline-block; position: relative; top: 28px; float: right; } .pubkeyhex { word-wrap: break-word; } body { font-family: Arial; } -body, html { min-height: 99%; } +body, html { height: 99%; } .faqs ol { padding: 0 0 0 25px; } .faqs li { padding: 3px 0; } .question { padding: 10px 15px; text-align: left; cursor: pointer; } From f6c6bbe53df28c1bf51a6216f02ad1467b36c9f7 Mon Sep 17 00:00:00 2001 From: pointbiz Date: Thu, 1 May 2014 00:04:08 -0400 Subject: [PATCH 02/18] v2.9.5 remove promise to show MINI key on details tab. MINI key will only be shown when it is provided since it cannot be derived from other key formats. --- bitaddress.org.html | 14 +++++++------- package.json | 4 ++-- src/bitaddress-ui.html | 4 ++-- src/ninja.translator.js | 10 +++++----- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/bitaddress.org.html b/bitaddress.org.html index 72c0dae..ff044d4 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -6796,7 +6796,7 @@ body, html { height: 99%; }
- Your Bitcoin Private Key is a unique secret number that only you know. It can be encoded in a number of different formats. Below we show the Bitcoin Address and Public Key that corresponds to your Private Key as well as your Private Key in the most popular encoding formats (WIF, WIFC, HEX, B64, MINI). + Your Bitcoin Private Key is a unique secret number that only you know. It can be encoded in a number of different formats. Below we show the Bitcoin Address and Public Key that corresponds to your Private Key as well as your Private Key in the most popular encoding formats (WIF, WIFC, HEX, B64).

Bitcoin v0.6+ stores public keys in compressed format. The client now also supports import and export of private keys with importprivkey/dumpprivkey. The format of the exported private key is determined by whether the address was generated in an old or new wallet.
@@ -6879,7 +6879,7 @@ body, html { height: 99%; }
- Version History (v2.9.4) + Version History (v2.9.5) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
@@ -7810,7 +7810,7 @@ ninja.translator = { "detailkeyformats": "Key Formats: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Voir les détails", "detailprint": "Imprimer", - "detaillabelnote1": "Votre Clé Privée Bitcoin est un nombre secret que vous êtes le seul à connaître. Il peut être encodé sous la forme d'un nombre sous différents formats. Ci-bas, nous affichons l'adresse Bitcoin et la Clé Publique qui corresponds à la Clé Privée ainsi que la Clé Privée dans les formats d'encodage les plus populaires (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "Votre Clé Privée Bitcoin est un nombre secret que vous êtes le seul à connaître. Il peut être encodé sous la forme d'un nombre sous différents formats. Ci-bas, nous affichons l'adresse Bitcoin et la Clé Publique qui corresponds à la Clé Privée ainsi que la Clé Privée dans les formats d'encodage les plus populaires (WIF, WIFC, HEX, B64).", "detaillabelnote2": "Bitcoin v0.6+ conserve les clés publiques dans un format compressé. Le logiciel supporte maintenant aussi l'importation et l'exportation de clés privées avec importprivkey/dumpprivkey. Le format de la clé privée exportée est déterminé selon la version du porte-monnaie Bitcoin.", "detaillabelbitcoinaddress": "Adresse Bitcoin:", "detaillabelbitcoinaddresscomp": "Adresse Bitcoin (compressée):", @@ -7946,7 +7946,7 @@ ninja.translator = { "detailkeyformats": "Key Formats: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Προβολή λεπτομερειών", "detailprint": "Εκτύπωση", - "detaillabelnote1": "Το Bitcoin Προσωπικό Κλειδί είναι ένας μοναδικός και μυστικός αριθμός που μόνο εσείς πρέπει να γνωρίζετε, ο οποίος μπορεί να κωδικοποιηθεί σε πολλές διαφορετικές μορφές. Εμφανίζουμε παρακάτω τη διεύθυνση Bitcoin και το Δημόσιο Κλειδί, μαζί με το Προσωπικό Κλειδί, στις πιο δημοφιλείς μορφές (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "Το Bitcoin Προσωπικό Κλειδί είναι ένας μοναδικός και μυστικός αριθμός που μόνο εσείς πρέπει να γνωρίζετε, ο οποίος μπορεί να κωδικοποιηθεί σε πολλές διαφορετικές μορφές. Εμφανίζουμε παρακάτω τη διεύθυνση Bitcoin και το Δημόσιο Κλειδί, μαζί με το Προσωπικό Κλειδί, στις πιο δημοφιλείς μορφές (WIF, WIFC, HEX, B64).", "detaillabelnote2": "Το Bitcoin v0.6+ αποθηκεύει τα Προσωπικά Κλειδιά σε συμπιεσμένη μορφή. Το πρόγραμμα υποστηρίζει επίσης εισαγωγή κι εξαγωγή των Προσωπικών Κλειδιών με τις εντολές importprivkey/dumpprivkey. Η μορφή του εξαγόμενου Προσωπικού Κλειδιού προσδιορίζεται από το αν η διεύθυνση δημιουργήθηκε σε ένα παλιό ή νέο πορτοφόλι.", "detaillabelbitcoinaddress": "Διεύθυνση Bitcoin:", "detaillabelbitcoinaddresscomp": "Συμπιεσμένη Διεύθυνση Bitcoin:", @@ -8082,7 +8082,7 @@ ninja.translator = { "detailkeyformats": "Key Formats: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Mostra Dettagli", "detailprint": "Stampa", - "detaillabelnote1": "La tua Chiave privata Bitcoin è rappresentata da un numero segreto, unico al mondo, che dovresti conoscere soltanto tu. Può essere codificato in molti formati differenti. Di seguito verrà mostrato l'indirizzo Bitcoin e la chiave pubblica, con la corrispondente chiave privata, nei più diffusi formati di codifica (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "La tua Chiave privata Bitcoin è rappresentata da un numero segreto, unico al mondo, che dovresti conoscere soltanto tu. Può essere codificato in molti formati differenti. Di seguito verrà mostrato l'indirizzo Bitcoin e la chiave pubblica, con la corrispondente chiave privata, nei più diffusi formati di codifica (WIF, WIFC, HEX, B64).", "detaillabelnote2": "Il client Bitcoin, dalla versione v0.6, memorizza le chiavi pubbliche in formato compresso. Il programma ora supporta l'importazione e l'esportazione delle chiavi private attraverso importprivkey/dumpprivkey. Il formato con cui viene esportata la chiave privata dipende se l'indirizzo generato è stato creato con il nuovo o vecchio portafogli.", "detaillabelbitcoinaddress": "Indirizzo Bitcoin", "detaillabelbitcoinaddresscomp": "Indirizzo Bitcoin compresso", @@ -8497,7 +8497,7 @@ ninja.translator = { "detailkeyformats": "Kulcs formátumok: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Részletek megjelenítése", "detailprint": "Nyomtatás", - "detaillabelnote1": "A Bitcoin Privát Kulcs egy titkos szám, melyet csak Ön ismer. Számos különböző formátumban kódolható. Az alábbiakban megjelenítettük a a Privát Kulcshoz tartozó Bitcoin Címet és Publikus kulcsot, valamint a Privát Kulcsot a legnépszerűbb kódolási formátumokban (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "A Bitcoin Privát Kulcs egy titkos szám, melyet csak Ön ismer. Számos különböző formátumban kódolható. Az alábbiakban megjelenítettük a a Privát Kulcshoz tartozó Bitcoin Címet és Publikus kulcsot, valamint a Privát Kulcsot a legnépszerűbb kódolási formátumokban (WIF, WIFC, HEX, B64).", "detaillabelnote2": "A Bitcoin v0.6+ a publikus kulcsokat tömörített formátumban tárolja. A kliens az importprivkey/dumpprivkey parancsokkal a privát kulcsok importálását és exportálását is támogatja. Az exportált privát kulcsok formátumát csupán a Bitcoin pénztárca verziószáma határozza meg.", "detaillabelbitcoinaddress": "Bitcoin cím:", "detaillabelbitcoinaddresscomp": "Tömörített Bitcoin cím:", @@ -8640,7 +8640,7 @@ ninja.translator = { "detailkeyformats": "受け付けるキーの形式 WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "詳細を表示", "detailprint": "印刷", - "detaillabelnote1": "ビットコインプライベートキーはあなたにしか分からない秘密の鍵。色々な形式で表示することができ、下記で表示しているのはビットコインアドレス、パブリックキー、プライベートキー、そして複数の形式でプライベートキーを表示します。(WIF, WIFC, HEX, B64, MINI)", + "detaillabelnote1": "ビットコインプライベートキーはあなたにしか分からない秘密の鍵。色々な形式で表示することができ、下記で表示しているのはビットコインアドレス、パブリックキー、プライベートキー、そして複数の形式でプライベートキーを表示します。(WIF, WIFC, HEX, B64)", "detaillabelnote2": "ビットコイン v0.6より圧縮したパブリックキーを保存している。なお、importprivkey / dumpprivkeyのコマンドを用いてプライベートキーのインポートとエクスポートもできる。エクスポートされるプライベートキーの形式はウォレットの作成時期とバージョンによって異なってくる。", "detaillabelbitcoinaddress": "ビットコインアドレス", "detaillabelbitcoinaddresscomp": "ビットコインアドレス(圧縮)", diff --git a/package.json b/package.json index 1f0bd7d..0380d80 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "bitaddress.org", - "version": "2.9.4", - "sha1sum": "d7b15847a1893ca3dff433714ec013493f8478b6", + "version": "2.9.5", + "sha1sum": "49713367a1fa3f9ed189702064fd7cc5c3584699", "description": "Open Source JavaScript Client-Side Bitcoin Wallet Generator", "main": "Gruntfile.js", "dependencies": { diff --git a/src/bitaddress-ui.html b/src/bitaddress-ui.html index 01d2ecb..fdda10f 100644 --- a/src/bitaddress-ui.html +++ b/src/bitaddress-ui.html @@ -382,7 +382,7 @@
- Your Bitcoin Private Key is a unique secret number that only you know. It can be encoded in a number of different formats. Below we show the Bitcoin Address and Public Key that corresponds to your Private Key as well as your Private Key in the most popular encoding formats (WIF, WIFC, HEX, B64, MINI). + Your Bitcoin Private Key is a unique secret number that only you know. It can be encoded in a number of different formats. Below we show the Bitcoin Address and Public Key that corresponds to your Private Key as well as your Private Key in the most popular encoding formats (WIF, WIFC, HEX, B64).

Bitcoin v0.6+ stores public keys in compressed format. The client now also supports import and export of private keys with importprivkey/dumpprivkey. The format of the exported private key is determined by whether the address was generated in an old or new wallet.
@@ -465,7 +465,7 @@
- Version History (v2.9.4) + Version History (v2.9.5) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
diff --git a/src/ninja.translator.js b/src/ninja.translator.js index f86854f..caa625f 100644 --- a/src/ninja.translator.js +++ b/src/ninja.translator.js @@ -319,7 +319,7 @@ ninja.translator = { "detailkeyformats": "Key Formats: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Voir les détails", "detailprint": "Imprimer", - "detaillabelnote1": "Votre Clé Privée Bitcoin est un nombre secret que vous êtes le seul à connaître. Il peut être encodé sous la forme d'un nombre sous différents formats. Ci-bas, nous affichons l'adresse Bitcoin et la Clé Publique qui corresponds à la Clé Privée ainsi que la Clé Privée dans les formats d'encodage les plus populaires (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "Votre Clé Privée Bitcoin est un nombre secret que vous êtes le seul à connaître. Il peut être encodé sous la forme d'un nombre sous différents formats. Ci-bas, nous affichons l'adresse Bitcoin et la Clé Publique qui corresponds à la Clé Privée ainsi que la Clé Privée dans les formats d'encodage les plus populaires (WIF, WIFC, HEX, B64).", "detaillabelnote2": "Bitcoin v0.6+ conserve les clés publiques dans un format compressé. Le logiciel supporte maintenant aussi l'importation et l'exportation de clés privées avec importprivkey/dumpprivkey. Le format de la clé privée exportée est déterminé selon la version du porte-monnaie Bitcoin.", "detaillabelbitcoinaddress": "Adresse Bitcoin:", "detaillabelbitcoinaddresscomp": "Adresse Bitcoin (compressée):", @@ -455,7 +455,7 @@ ninja.translator = { "detailkeyformats": "Key Formats: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Προβολή λεπτομερειών", "detailprint": "Εκτύπωση", - "detaillabelnote1": "Το Bitcoin Προσωπικό Κλειδί είναι ένας μοναδικός και μυστικός αριθμός που μόνο εσείς πρέπει να γνωρίζετε, ο οποίος μπορεί να κωδικοποιηθεί σε πολλές διαφορετικές μορφές. Εμφανίζουμε παρακάτω τη διεύθυνση Bitcoin και το Δημόσιο Κλειδί, μαζί με το Προσωπικό Κλειδί, στις πιο δημοφιλείς μορφές (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "Το Bitcoin Προσωπικό Κλειδί είναι ένας μοναδικός και μυστικός αριθμός που μόνο εσείς πρέπει να γνωρίζετε, ο οποίος μπορεί να κωδικοποιηθεί σε πολλές διαφορετικές μορφές. Εμφανίζουμε παρακάτω τη διεύθυνση Bitcoin και το Δημόσιο Κλειδί, μαζί με το Προσωπικό Κλειδί, στις πιο δημοφιλείς μορφές (WIF, WIFC, HEX, B64).", "detaillabelnote2": "Το Bitcoin v0.6+ αποθηκεύει τα Προσωπικά Κλειδιά σε συμπιεσμένη μορφή. Το πρόγραμμα υποστηρίζει επίσης εισαγωγή κι εξαγωγή των Προσωπικών Κλειδιών με τις εντολές importprivkey/dumpprivkey. Η μορφή του εξαγόμενου Προσωπικού Κλειδιού προσδιορίζεται από το αν η διεύθυνση δημιουργήθηκε σε ένα παλιό ή νέο πορτοφόλι.", "detaillabelbitcoinaddress": "Διεύθυνση Bitcoin:", "detaillabelbitcoinaddresscomp": "Συμπιεσμένη Διεύθυνση Bitcoin:", @@ -591,7 +591,7 @@ ninja.translator = { "detailkeyformats": "Key Formats: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Mostra Dettagli", "detailprint": "Stampa", - "detaillabelnote1": "La tua Chiave privata Bitcoin è rappresentata da un numero segreto, unico al mondo, che dovresti conoscere soltanto tu. Può essere codificato in molti formati differenti. Di seguito verrà mostrato l'indirizzo Bitcoin e la chiave pubblica, con la corrispondente chiave privata, nei più diffusi formati di codifica (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "La tua Chiave privata Bitcoin è rappresentata da un numero segreto, unico al mondo, che dovresti conoscere soltanto tu. Può essere codificato in molti formati differenti. Di seguito verrà mostrato l'indirizzo Bitcoin e la chiave pubblica, con la corrispondente chiave privata, nei più diffusi formati di codifica (WIF, WIFC, HEX, B64).", "detaillabelnote2": "Il client Bitcoin, dalla versione v0.6, memorizza le chiavi pubbliche in formato compresso. Il programma ora supporta l'importazione e l'esportazione delle chiavi private attraverso importprivkey/dumpprivkey. Il formato con cui viene esportata la chiave privata dipende se l'indirizzo generato è stato creato con il nuovo o vecchio portafogli.", "detaillabelbitcoinaddress": "Indirizzo Bitcoin", "detaillabelbitcoinaddresscomp": "Indirizzo Bitcoin compresso", @@ -1006,7 +1006,7 @@ ninja.translator = { "detailkeyformats": "Kulcs formátumok: WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "Részletek megjelenítése", "detailprint": "Nyomtatás", - "detaillabelnote1": "A Bitcoin Privát Kulcs egy titkos szám, melyet csak Ön ismer. Számos különböző formátumban kódolható. Az alábbiakban megjelenítettük a a Privát Kulcshoz tartozó Bitcoin Címet és Publikus kulcsot, valamint a Privát Kulcsot a legnépszerűbb kódolási formátumokban (WIF, WIFC, HEX, B64, MINI).", + "detaillabelnote1": "A Bitcoin Privát Kulcs egy titkos szám, melyet csak Ön ismer. Számos különböző formátumban kódolható. Az alábbiakban megjelenítettük a a Privát Kulcshoz tartozó Bitcoin Címet és Publikus kulcsot, valamint a Privát Kulcsot a legnépszerűbb kódolási formátumokban (WIF, WIFC, HEX, B64).", "detaillabelnote2": "A Bitcoin v0.6+ a publikus kulcsokat tömörített formátumban tárolja. A kliens az importprivkey/dumpprivkey parancsokkal a privát kulcsok importálását és exportálását is támogatja. Az exportált privát kulcsok formátumát csupán a Bitcoin pénztárca verziószáma határozza meg.", "detaillabelbitcoinaddress": "Bitcoin cím:", "detaillabelbitcoinaddresscomp": "Tömörített Bitcoin cím:", @@ -1149,7 +1149,7 @@ ninja.translator = { "detailkeyformats": "受け付けるキーの形式 WIF, WIFC, HEX, B64, B6, MINI, BIP38", "detailview": "詳細を表示", "detailprint": "印刷", - "detaillabelnote1": "ビットコインプライベートキーはあなたにしか分からない秘密の鍵。色々な形式で表示することができ、下記で表示しているのはビットコインアドレス、パブリックキー、プライベートキー、そして複数の形式でプライベートキーを表示します。(WIF, WIFC, HEX, B64, MINI)", + "detaillabelnote1": "ビットコインプライベートキーはあなたにしか分からない秘密の鍵。色々な形式で表示することができ、下記で表示しているのはビットコインアドレス、パブリックキー、プライベートキー、そして複数の形式でプライベートキーを表示します。(WIF, WIFC, HEX, B64)", "detaillabelnote2": "ビットコイン v0.6より圧縮したパブリックキーを保存している。なお、importprivkey / dumpprivkeyのコマンドを用いてプライベートキーのインポートとエクスポートもできる。エクスポートされるプライベートキーの形式はウォレットの作成時期とバージョンによって異なってくる。", "detaillabelbitcoinaddress": "ビットコインアドレス", "detaillabelbitcoinaddresscomp": "ビットコインアドレス(圧縮)", From 63e2d138dcd36e3babaf69aecacbf2aa5dd61665 Mon Sep 17 00:00:00 2001 From: Ben McGinnes Date: Tue, 20 May 2014 13:49:45 +1000 Subject: [PATCH 03/18] Fixed paragraph formating to display correctly in a terminal or standard screen size. --- README | 44 +++++++++++++++++++++++++------------------- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git a/README b/README index 8eec613..74be9c5 100644 --- a/README +++ b/README @@ -32,12 +32,16 @@ END USER NOTES: Notice of Copyrights and Licenses: --------------------------------------- -The bitaddress.org project, software and embedded resources are copyright bitaddress.org. -The bitaddress.org name and logo are not part of the open source license. +The bitaddress.org project, software and embedded resources are +copyright bitaddress.org. -Portions of the all-in-one HTML document contain JavaScript codes that are the copyrights -of others. The individual copyrights are included throughout the document along with their -licenses. Included JavaScript libraries are separated with HTML script tags. +The bitaddress.org name and logo are not part of the open source +license. + +Portions of the all-in-one HTML document contain JavaScript codes that +are the copyrights of others. The individual copyrights are included +throughout the document along with their licenses. Included JavaScript +libraries are separated with HTML script tags. Summary of JavaScript functions with a redistributable license: JavaScript function License @@ -53,19 +57,21 @@ window.Bitcoin MIT License The bitaddress.org software is available under The MIT License (MIT) Copyright (c) 2011-2013 bitaddress.org -Permission is hereby granted, free of charge, to any person obtaining a copy of this -software and associated documentation files (the "Software"), to deal in the Software -without restriction, including without limitation the rights to use, copy, modify, -merge, publish, distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to the following -conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all copies -or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -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. +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. From 6edc7a198b451e18b2b22d302f0e5997a36d3806 Mon Sep 17 00:00:00 2001 From: Valery Pavlov Date: Tue, 9 Dec 2014 00:36:37 +0400 Subject: [PATCH 04/18] Added Russian translation --- src/bitaddress-ui.html | 3 +- src/ninja.translator.js | 134 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 136 insertions(+), 1 deletion(-) diff --git a/src/bitaddress-ui.html b/src/bitaddress-ui.html index fdda10f..b5f7ecb 100644 --- a/src/bitaddress-ui.html +++ b/src/bitaddress-ui.html @@ -125,7 +125,8 @@ Deutsch | Česky | Magyar | - 日本語 + 日本語 | + Русский
Open Source JavaScript Client-Side Bitcoin Wallet Generator
diff --git a/src/ninja.translator.js b/src/ninja.translator.js index caa625f..120ed84 100644 --- a/src/ninja.translator.js +++ b/src/ninja.translator.js @@ -1166,6 +1166,140 @@ ninja.translator = { "detaillabelq1": "サイコロを使ってどうやってアドレス作るのか?「B6」とは何か?", "detaila1": "ビットコインのアドレスの生成には一番大事なことが、アドレス生成に使われている乱数が本当にランダムなのかというところです。自然界に起きる物理的なランダムさはパソコンが生成する(似非)ランダムさよりは優れている。物理的なランダムさを作る一番簡単な方法はサイコロを振ることです。ビットコインのプライベートキーを生成するには、6面のサイコロを99回振って、毎回結果を記載していきます。規則として1⇒1, 2⇒2, 3⇒3, 4⇒4, 5⇒5, 6⇒0というように、6が出る度に「0」と記載して下さい。99桁の6進数字列ができたら、上記の入力欄に入れて、「詳細を表示」ボタンを押して下さい。これでWIF形式のプライベートキーやそれと紐づくビットコインアドレスが表示されます。これらを記載し、通常生成されたビットコインアドレスと同じように保管しておいて下さい。", } + "ru": { + // javascript alerts or messages + "testneteditionactivated": "Активирован режим TESTNET", + "paperlabelbitcoinaddress": "Адрес Bitcoin кошелька:", + "paperlabelprivatekey": "Приватный Ключ (в формате для импорта):", + "paperlabelencryptedkey": "Зашифрованный Приватный Ключ (требуется пароль)", + "bulkgeneratingaddresses": "Генерация адресов... ", + "brainalertpassphrasetooshort": "Введенная парольная фраза слишком коротка.\n\n", + "brainalertpassphrasewarning": "Предупреждение: Очень важно выбрать сложную парольную фразу, чтобы было невозможно угадать ее методом грубого перебора и украсть ваши биткоины.", + "brainalertpassphrasedoesnotmatch": "Парольная фраза и ее подтверждение не совпадают.", + "detailalertnotvalidprivatekey": "Введенный текст не является корректным приватным ключем", + "detailconfirmsha256": "Введенный текст не является корректным приватным ключем!\n\nВы хотите использовать введенный текст в качестве парольной фразы и создать Приватный Ключ используя SHA256 для хеширования парольной фразы?\n\nПредупреждение: Очень важно выбрать сложную парольную фразу, чтобы было невозможно угадать ее методом грубого перебора и украсть ваши биткоины.", + "bip38alertincorrectpassphrase": "Введена некорректная парольная фраза для этого зашифрованного приватного ключа.", + "bip38alertpassphraserequired": "Парольная фраза необходима для ключа BIP38", + "vanityinvalidinputcouldnotcombinekeys": "Некорректный ввод. Не удалось объединить ключи.", + "vanityalertinvalidinputpublickeysmatch": "Некорректный ввод. Обе записи имеют одинаковый публичный ключ. Введите два разных публичных ключа.", + "vanityalertinvalidinputcannotmultiple": "Некорректный ввод. Невозможно объединить два публичных ключа. Выберите 'Добавить', чтобы добавить два публичных ключа для получения биткоин адреса.", + "vanityprivatekeyonlyavailable": "Доступно только при объединении двух приватных ключей", + "vanityalertinvalidinputprivatekeysmatch": "Некорректный ввод. Обе записи имеют одинаковый приватный ключ. Введите два разных приватных ключа.", + + // header and menu html + "tagline": "JavaScript генератор Биткоин кошельков на стороне клиента с открытым исходным кодом", + "generatelabelbitcoinaddress": "Генерация Биткоин адреса...", + "generatelabelmovemouse": "Двигайте указателем мыши по экрану для добавления случайности...", + "generatelabelkeypress": "ИЛИ введите несколько случайных символов в это текстовое поле", + "singlewallet": "Один кошелек", + "paperwallet": "Бумажный кошелек", + "bulkwallet": "Несколько кошельков", + "brainwallet": "Умный кошелек", + "vanitywallet": "Персональный кошелек", + "detailwallet": "Детали кошелька", + + // footer html + "footerlabeldonations": "Пожертвования:", + "footerlabeltranslatedby": "Перевод: 1JGnkKH7gJhTyAz9r47nugFM8sdrUENpJi", + "footerlabelpgp": "PGP ключ", + "footerlabelversion": "История версий", + "footerlabelgithub": "Проект на GitHub", + "footerlabelcopyright1": "Копирайт bitaddress.org.", + "footerlabelcopyright2": "Информация о копирайте на JavaScript в исходниках.", + "footerlabelnowarranty": "Без гарантий.", + + // single wallet html + "newaddress": "Сгенерировать новый адрес", + "singleprint": "Распечатать", + "singlelabelbitcoinaddress": "Адрес Биткоин кошелька", + "singlelabelprivatekey": "Приватный Ключ (в формате для импорта)", + "singletip1": "Биткоин кошелек это простая пара идентификаторов, состоящая из адреса Биткоин кошелька и соответствующего ему приватного ключа. Такой колшелек был сгенерирован для Вас в Вашем браузере и отображен выше.", + "singletip2": "Для обеспечения сохранности этого кошелька Вам необходимо распечатать или каким-либо другим спобом записать Биткоин адрес и приватный ключ. Очень важно иметь запасную копию приватного ключа и хранить ее в безопасном месте. Этот сайт не хранит информацию о Вашем ключе. Если Вы имеете опыт работы с PGP, то Вы можете сохранить эту HTML страницу в формате архива и проверить то, что Вы используете подлинную версию страницы от автора сайта, сравнив SHA1 хэш этой HTML страницы с SHA1 хэшем указанным истории версий данной страницы, которая подписана ключем автора сайта. Данную ифнормацию можно найти внизу страницы. Если Вы покинете или обновите страницу с сайтом или нажмете кнопку 'Сгенерировать новый адрес', то будет сгенерирован новый приватный ключ и предыдущий приватный ключ восстановить будет невозможно. Ваш приватный ключ Биткоин кошелька должен храниться в секрете. С кем бы Вы не поделились информацией о приватном ключе - он будет иметь возможность потратить Биткоины кошелька с этим адресом. Если вы распечатали приватный ключ - необходимо обеспечить его сохранность в месте, недоступном для воды. Обращайтесь с бумажным кошельком для Биткоинов как с наличными деньгами.", + "singletip3": "Пополните кошелек сообщив другим свой Биткоин адрес.", + "singletip4": "Проверить баланс кошелька можно на сайте blockchain.info or blockexplorer.com по адресу Биткоин кошелька.", + "singletip5": "Потратить Ваши биткоины можно на сайте blockchain.info переведя все средства соответсвующие приватному ключу на аккаунт этого сайта. Также Вы можете потратить биткоины загрузив один из наиболее популярных Биткоин p2p-клиентов и выполнив импорт Вашего приватного ключа. Необходимо учесть, что когда Вы импортируете свой один приватный ключ в программу-клиент и тратите биткоины - Ваш ключ смешан с другими приватными ключами в программе-клиенте. При выполнении транзакции по расходу или получению средств, сдача будет перенаправлена на другой Биткоин адрес программного кошелька.После выполнения транзации необходимо сделать резервную копию Вашего программного кошелька и сохранить ее в надежном месте, так как на нем будут сожержаться оставшиеся средства. Сатоши рекомендует никогда не удалять кошелек.", + "singleshare": "Поделиться", + "singlesecret": "Хранить в секрете", + + // paper wallet html + "paperlabelhideart": "Без дизайна", + "paperlabeladdressesperpage": "Адресов на страницу:", + "papergenerate": "Сгенерировать", + "paperprint": "Распечатать", + "paperlabelBIPpassphrase": "Парольная фраза:", + "paperlabelencrypt": "Шифрование BIP38?", + + // bulk wallet html + "bulklabelstartindex": "Стартовый индекс:", + "bulklabelrowstogenerate": "Количество кошельков:", + "bulklabelcompressed": "Короткие адреса?", + "bulkgenerate": "Сгенерировать", + "bulkprint": "Распечатать", + "bulklabelcsv": "Значения разделенные запятой:", + "bulklabelformat": "Порядковый номер, Адрес, Приватный Ключ (импорт)", + "bulklabelq1": "Почему нужно использовать несколько кошельков, чтобы принимать биткоины на Вашем сайте?", + "bulka1": "Традиционный подход к приему биткоинов на Вашем сайте - это установка оффициального демона клиента Биткоин ('bitcoind'). Большинство хостингов для вебсайтов не поддерживают установку демона Биткоин. Также, запуск демона клиента Биткоин на Вашем веб-сервере означает, что Вы храните приватные ключи на этом сервере и они могут быть украдены, если Ваш веб-сервер подвергнется взлому. При использовании нескольких кошельков Вы можете выгрузить только адреса Биткоин на Ваш сервер, в то время как приватные ключи останутся в секрете. В этом случае Вам не следует беспокоиться того, что Ваш веб-сервер будет взломан и биткоин кошелек будет украден.", + "bulklabelq2": "Как использовать несколько кошельков, чтобы принимать биткоины на Вашем сайте?", + "bulklabela2li1": "Используйте вкладку 'Несколько кошельков', для того чтобы сгенерировать большое количество адресов Биткоин (10.000+). Скопируйте и вставьте сгенерированные идентификаторы в виде списка (в формате CSV) в секретный файл на вашем компьютере. Сделайте резервную копию созданного файла и сохраните ее в надежном месте. ", + "bulklabela2li2": "Импортируйте биткоин адреса в базу данных или иное хранилище Вашего веб-сервера. (Не размещайте приватные ключи кошелька на Вашем веб-сервере, в противном случае Вы рискуете потерять свои биткоины. Своим клиентам Вам достаточно предоставить Биткоин адрес.)", + "bulklabela2li3": "Добавьте опцию для оплаты заказа из корзины Вашего клиента для оплаты Биткоинами. Если клиент выбирает оплату Биткоинами - предоставьте ему информацию о Биткоин адресе для приема оплаты, который будет закреплен за этим клиентом и сохраните соответствующим образом заказ.", + "bulklabela2li4": "Вам необходимо получать информацию о получении оплаты. Загуглите 'нотификации об оплате биткоинами' и подпишитесь на какой-нибудь сервис нотификаций. В интернете можно найти множество сервисов дял получения нотификаций через веб-сервисы, api, смс, электронную почту и т.д. Как только Вы получите нотификацию об оплате, которую можно обрабатывать в автоматическом режиме, Вы можете приступить к подготовке заказа для Вашего клиента. Чтобы вручную проверить статус оплаты воспользуйтесь сервисом Block Explorer. Заменить АДРЕС на Ваш адрес Биткоин, который Вы хотите проверить. Подтверждение транзакции оплаты может занимать от 10 минут до одного часа. http://www.blockexplorer.com/address/АДРЕС\n\nНеподтвержденные транзации оплаты можно посмотреть на: http://blockchain.info/\nНеподтвержденная транзакция будет отображаться через 30 секунд.", + "bulklabela2li5": "Биткоины накапливаются в цепочке блоков. Используйте оригинальный файл сгенерированный на 1 шаге, чтобы потратить их.", + + // brain wallet html + "brainlabelenterpassphrase": "Парольная фраза:", + "brainlabelshow": "Показать?", + "brainprint": "Распечатать", + "brainlabelconfirm": "Подтверждение парольной фразы:", + "brainview": "Просмотр", + "brainalgorithm": "Алгоритм SHA256(парольная фраза)", + "brainlabelbitcoinaddress": "Адрес Биткоин кошелька:", + "brainlabelprivatekey": "Приватный ключ (в формате импорта):", + + // vanity wallet html + "vanitylabelstep1": "Шаг 1 - Сгенерируйте Ваш приватный ключ первого шага", + "vanitynewkeypair": "Сгенерировать", + "vanitylabelstep1publickey": "Шаг 1 Публичный Ключ:", + "vanitylabelstep1pubnotes": "Скопируйте и вставьте это значение в поле Вашей части публичного ключа на сайте пула для генерации адресов.", + "vanitylabelstep1privatekey": "Шаг 1 Приватный Ключ:", + "vanitylabelstep1privnotes": "Скопируйте и вставьте приватный ключ в файл. В идеале необходимо сохранить его на зашифрованный диск. Вам будет нужен приватный ключ после того, как пул найдет интересующий Вас префикс адреса.", + "vanitylabelstep2calculateyourvanitywallet": "Шаг 2 - Вычисление Вашего персонального кошелька", + "vanitylabelenteryourpart": "Введите Вашу часть приватного ключа (сгенерированного и сохраненного на шаге 1):", + "vanitylabelenteryourpoolpart": "Введите часть приватного ключа пула (предоставляется пулом):", + "vanitylabelnote1": "Это поле для публичного или приватного ключа", + "vanitylabelnote2": "Это поле для публичного или приватного ключа", + "vanitylabelradioadd": "Сложить", + "vanitylabelradiomultiply": "Перемножить", + "vanitycalc": "Вычислить адрес кошелька", + "vanitylabelbitcoinaddress": "Адрес Биткоин кошелька:", + "vanitylabelnotesbitcoinaddress": "Это Ваш новый адрес с префиксом.", + "vanitylabelpublickeyhex": "Публичный ключ (в формате HEX):", + "vanitylabelnotespublickeyhex": "Это публичный ключ в формате hex.", + "vanitylabelprivatekey": "Приватный ключ (в формате импорта):", + "vanitylabelnotesprivatekey": "Это Ваш приватный ключ для импорта в другой кошелек.", + + // detail wallet html + "detaillabelenterprivatekey": "Введите Приватный Ключ", + "detailkeyformats": "Форматы ключа: WIF, WIFC, HEX, B64, B6, MINI, BIP38", + "detailview": "Детальная информация", + "detailprint": "Распечатать", + "detaillabelnote1": "Ваш Приватный Ключ - это секретная информация, которую знаете только Вы. Этот ключ можно закодировать несколькими способами. Ниже вы видите адрес Биткоин и публичный ключ, которые соответствуют Вашему приватному ключу, если Ваш приватный ключ в одном из популярных форматов (WIF, WIFC, HEX, B64, MINI)", + "detaillabelnote2": "Приложение Bitcoin версии 0.6 и выше хранит ключи в сжатом формате. Это приложение также поддерживает импорт и экспорт приватных ключей командами importprivkey/dumpprivkey. Формат экспортированного ключа определяется кошельком, который сгенерировал адрес Биткоин.", + "detaillabelbitcoinaddress": "Адрес Биткоин кошелька", + "detaillabelbitcoinaddresscomp": "Короткий адрес Биткоин кошелька", + "detaillabelpublickey": "Публичный ключ (130 символов [0-9A-F]):", + "detaillabelpublickeycomp": "Публичный ключ (короткий, 66 символов [0-9A-F]):", + "detaillabelprivwif": "Приватный ключ (в формате импорта), 51 символ base58, начинается с '5'", + "detaillabelprivwifcomp" : "Приватный ключ, короткий, 52 символа base58, начинается с", + "detailcompwifprefix": "'K' или 'L'", + "detaillabelprivhex": "Приватный Ключ в HEX формате (64 символа [0-9A-F]):", + "detaillabelprivb64": "Приватный Ключ в Base64 формате (44 символа):", + "detaillabelprivmini": "Приватный Ключ в формате мини (22, 26 или 30 символов, начинается с 'S'):", + "detaillabelpassphrase": "Парольная фраза BIP38", + "detaildecrypt": "Расшифровать BIP38", + "detaillabelq1": "Как сделать кошелек используя игральный кости? Что такое B6?", + "detaila1": "Очень важно понимать, что при генерации биткоин кошелька используются действительно случайные числа. Физическая случайность лучше компьютерной псевдо-случайности. Самым простым способом генерации физической случайности является игральная кость. Для генерации Приватного Ключа Биткоин кошелька Вам нужна игральная кость с шестью сторонами, которую необходимо бросить 99 раз. Необходимо записать каждую цифру, выпавшую на игральной кости. Итоговый результат необходимо записать в таком виде: 1=1, 2=2, 3=3, 4=4, 5=5, 6=0. Таким образом Вы запишите большое случайное число - Ваш Приватный Ключ, в формате B6 или Base6. После этого Вы можете ввести 99 символов приватного ключа в формате Base6 в текстовое поле вверху страницы и получить детальную информацию о кошельке. После этого Вы сможете увидеть адрес Биткоин кошелька соответствующий полученному приватному ключу. Вам потребуется сделать запись приватного ключа в формате для импорта, так как он наиболее часто используется." + } } }; From 6d7012f2602ecf637c1ffa3d0b51b35829a38955 Mon Sep 17 00:00:00 2001 From: pointbiz Date: Mon, 5 Jan 2015 19:09:03 -0400 Subject: [PATCH 05/18] update grunt build process --- Gruntfile.js | 19 +++++++++++++++++-- bitaddress.org.html | 2 +- package.json | 14 ++++++++++---- src/bitaddress-ui.html | 2 +- 4 files changed, 29 insertions(+), 8 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 7e742ae..bdd0a92 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -1,3 +1,5 @@ +var packageObject = require('./package.json'); + module.exports = function (grunt) { // Project configuration. grunt.initConfig({ @@ -39,13 +41,26 @@ module.exports = function (grunt) { { token: "//ninja.detailwallet.js", file: "./src/ninja.detailwallet.js" }, { token: "//qrcode.js", file: "./src/qrcode.js" }, { token: "//securerandom.js", file: "./src/securerandom.js" }, - { token: "//main.css", file: "./src/main.css" } + { token: "//main.css", file: "./src/main.css" }, + { token: "//version", string: packageObject.version } ] } + }, + + lineending: { // Task + dist: { // Target + options: { // Target options + eol: 'lf' + }, + files: { // Files to process + './bitaddress.org.html': ['./bitaddress.org.html'] + } + } } }); grunt.file.defaultEncoding = 'utf-8'; grunt.loadNpmTasks("grunt-combine"); - grunt.registerTask("default", ["combine:single"]); + grunt.loadNpmTasks('grunt-lineending'); + grunt.registerTask("default", ["combine:single", "lineending"]); }; diff --git a/bitaddress.org.html b/bitaddress.org.html index ff044d4..f0b2ec0 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -6879,7 +6879,7 @@ body, html { height: 99%; }
- Version History (v2.9.5) + Version History (2.9.6) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
diff --git a/package.json b/package.json index 0380d80..d2de52e 100644 --- a/package.json +++ b/package.json @@ -1,14 +1,20 @@ { "name": "bitaddress.org", - "version": "2.9.5", - "sha1sum": "49713367a1fa3f9ed189702064fd7cc5c3584699", + "version": "2.9.6", + "sha1sum": "b392e9bcc432b1c246317378f90c84544e5401d5", + "sha256sum": "c613440db6af79ceda44e98affbc9d4cc3914c2d39b304d5bacf13beab039e82", "description": "Open Source JavaScript Client-Side Bitcoin Wallet Generator", "main": "Gruntfile.js", "dependencies": { "grunt": "~0.4.1", - "grunt-combine": "~0.8.3" + "grunt-combine": "~0.8.3", + "grunt-lineending": "~0.2.4" + }, + "devDependencies": { + "grunt": "~0.4.1", + "grunt-combine": "~0.8.3", + "grunt-lineending": "~0.2.4" }, - "devDependencies": {}, "scripts": { "test": "" }, diff --git a/src/bitaddress-ui.html b/src/bitaddress-ui.html index fdda10f..b9b9f17 100644 --- a/src/bitaddress-ui.html +++ b/src/bitaddress-ui.html @@ -465,7 +465,7 @@
- Version History (v2.9.5) + Version History (//version) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
From 0456012aa0a58c96189e45e1adeb1a8df574082a Mon Sep 17 00:00:00 2001 From: pointbiz Date: Mon, 5 Jan 2015 19:21:20 -0400 Subject: [PATCH 06/18] merge pull from mrcope issue 77 Removes the trimming that occurs on user input passphrases --- bitaddress.org.html | 6 +++--- package.json | 4 ++-- src/ninja.brainwallet.js | 4 ++-- src/ninja.detailwallet.js | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/bitaddress.org.html b/bitaddress.org.html index f0b2ec0..ea426d1 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -9075,9 +9075,9 @@ ninja.wallets.brainwallet = { minPassphraseLength: 15, view: function () { - var key = document.getElementById("brainpassphrase").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space + var key = document.getElementById("brainpassphrase").value.toString() document.getElementById("brainpassphrase").value = key; - var keyConfirm = document.getElementById("brainpassphraseconfirm").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space + var keyConfirm = document.getElementById("brainpassphraseconfirm").value.toString() document.getElementById("brainpassphraseconfirm").value = keyConfirm; if (key == keyConfirm || document.getElementById("brainpassphraseshow").checked) { @@ -9280,7 +9280,7 @@ ninja.wallets.detailwallet = { document.getElementById("detailprivkeypassphrase").focus(); return; } - var passphrase = document.getElementById("detailprivkeypassphrase").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space + var passphrase = document.getElementById("detailprivkeypassphrase").value.toString() if (passphrase == "") { alert(ninja.translator.get("bip38alertpassphraserequired")); return; diff --git a/package.json b/package.json index d2de52e..0280671 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "bitaddress.org", "version": "2.9.6", - "sha1sum": "b392e9bcc432b1c246317378f90c84544e5401d5", - "sha256sum": "c613440db6af79ceda44e98affbc9d4cc3914c2d39b304d5bacf13beab039e82", + "sha1sum": "4bc22e6518d8f26ab600ba2e03751a8f47102025", + "sha256sum": "dd023df7b3810de56b14c1acbc3925c276b2b2385de3b703ab2ed1d129cd518c", "description": "Open Source JavaScript Client-Side Bitcoin Wallet Generator", "main": "Gruntfile.js", "dependencies": { diff --git a/src/ninja.brainwallet.js b/src/ninja.brainwallet.js index 8fd71a4..46980e3 100644 --- a/src/ninja.brainwallet.js +++ b/src/ninja.brainwallet.js @@ -12,9 +12,9 @@ ninja.wallets.brainwallet = { minPassphraseLength: 15, view: function () { - var key = document.getElementById("brainpassphrase").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space + var key = document.getElementById("brainpassphrase").value.toString() document.getElementById("brainpassphrase").value = key; - var keyConfirm = document.getElementById("brainpassphraseconfirm").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space + var keyConfirm = document.getElementById("brainpassphraseconfirm").value.toString() document.getElementById("brainpassphraseconfirm").value = keyConfirm; if (key == keyConfirm || document.getElementById("brainpassphraseshow").checked) { diff --git a/src/ninja.detailwallet.js b/src/ninja.detailwallet.js index 3f7d273..20ab5ce 100644 --- a/src/ninja.detailwallet.js +++ b/src/ninja.detailwallet.js @@ -37,7 +37,7 @@ ninja.wallets.detailwallet = { document.getElementById("detailprivkeypassphrase").focus(); return; } - var passphrase = document.getElementById("detailprivkeypassphrase").value.toString().replace(/^\s+|\s+$/g, ""); // trim white space + var passphrase = document.getElementById("detailprivkeypassphrase").value.toString() if (passphrase == "") { alert(ninja.translator.get("bip38alertpassphraserequired")); return; From dc1758da47e5be13a022825d25d9be34bf9aa3df Mon Sep 17 00:00:00 2001 From: pointbiz Date: Mon, 5 Jan 2015 21:24:34 -0400 Subject: [PATCH 07/18] merge Simplified Chinese translations from kwl01skz --- bitaddress.org.html | 148 +++++++++++++++++++++++++++++++++++++++- package.json | 4 +- src/bitaddress-ui.html | 5 +- src/ninja.translator.js | 143 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 294 insertions(+), 6 deletions(-) diff --git a/bitaddress.org.html b/bitaddress.org.html index ea426d1..562c76a 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -6539,7 +6539,8 @@ body, html { height: 99%; } Deutsch | Česky | Magyar | - 日本語 + 日本語 | + 简体中文
Open Source JavaScript Client-Side Bitcoin Wallet Generator
@@ -6879,7 +6880,7 @@ body, html { height: 99%; }
- Version History (2.9.6) + Version History (v2.9.5) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
@@ -8656,6 +8657,149 @@ ninja.translator = { "detaildecrypt": "BIP38暗号を解除", "detaillabelq1": "サイコロを使ってどうやってアドレス作るのか?「B6」とは何か?", "detaila1": "ビットコインのアドレスの生成には一番大事なことが、アドレス生成に使われている乱数が本当にランダムなのかというところです。自然界に起きる物理的なランダムさはパソコンが生成する(似非)ランダムさよりは優れている。物理的なランダムさを作る一番簡単な方法はサイコロを振ることです。ビットコインのプライベートキーを生成するには、6面のサイコロを99回振って、毎回結果を記載していきます。規則として1⇒1, 2⇒2, 3⇒3, 4⇒4, 5⇒5, 6⇒0というように、6が出る度に「0」と記載して下さい。99桁の6進数字列ができたら、上記の入力欄に入れて、「詳細を表示」ボタンを押して下さい。これでWIF形式のプライベートキーやそれと紐づくビットコインアドレスが表示されます。これらを記載し、通常生成されたビットコインアドレスと同じように保管しておいて下さい。", + }, + + "zh-cn": { + // javascript alerts or messages + "testneteditionactivated": "TESTNET EDITION ACTIVATED", + "paperlabelbitcoinaddress": "比特币地址", + "paperlabelprivatekey": "私钥 (WIF格式)", + "paperlabelencryptedkey": "加密私钥(需要密码)", + "bulkgeneratingaddresses": "创建地址中...", + "brainalertpassphrasetooshort": "这个密码太短了 \n\n", + "brainalertpassphrasewarning": "警告:选择一个足够强大的口令非常重要,它可以避免你的私钥被暴力破解。 此外,UTF-8编码有效。请注意区分全角/半角", + "brainalertpassphrasedoesnotmatch": "两次输入的口令不一致", + "detailalertnotvalidprivatekey": "输入的私钥无效", + "detailconfirmsha256": "你输入的不是合法的私钥,\n\n你想用它的SHA-256值当作私钥吗(相当于脑钱包)\n\n警告:选择一个足够强大的口令非常重要,它可以避免你的私钥被暴力破解。", + "bip38alertincorrectpassphrase": "这个加密私钥的密码不正确。", + "bip38alertpassphraserequired": "BIP38加密的私钥需要密码。", + "vanityinvalidinputcouldnotcombinekeys": "错误输入,这两个Key无法合成。", + "vanityalertinvalidinputpublickeysmatch": "错误输入,请使用不同的公钥。", + "vanityalertinvalidinputcannotmultiple": "错误,两个公钥不能进行乘运算,想要检查两个公钥合成的地址,请选择加运算。", + "vanityprivatekeyonlyavailable": "使用两个私钥合成,才会得到合成私钥。", + "vanityalertinvalidinputprivatekeysmatch": "错误输入,请使用不同的私钥。", + + // header and menu html + "tagline": "开源JavaScript比特币钱包工具", + "generatelabelbitcoinaddress": "地址生成中...", + "generatelabelmovemouse": "请移动鼠标产生随机种子...", + "generatelabelkeypress": "或者在文本框中输入随机字符", + "singlewallet": "普通钱包", + "paperwallet": "纸钱包", + "bulkwallet": "批量钱包", + "brainwallet": "脑钱包", + "vanitywallet": "虚荣钱包", + "splitwallet": "分裂钱包", + "detailwallet": "钱包详情", + + // footer html + "footerlabeldonations": "项目捐赠", + "footerlabeltranslatedby": "简中翻译捐赠 1BfXayW2vrj6uRpoZg3nR8rMEckLpGmaiL", + "footerlabelpgp": "PGP", + "footerlabelversion": "版本历史", + "footerlabelgithub": "GitHub页面", + "footerlabelcopyright1": "Copyright bitaddress.org.", + "footerlabelcopyright2": "JavaScript的版权信息已经包含在源代码中。", + "footerlabelnowarranty": "No warranty", + + // single wallet html + "newaddress": "生成新地址", + "singleprint": "打印", + "singlelabelbitcoinaddress": "比特币地址", + "singlelabelprivatekey": "私钥 (WIF格式-可导入客户端的格式)", + "singletip1": "比特币钱包就是这么简单,一个地址,对应一个私钥,浏览器已自动生成了一个,就显示在上面。私钥必须保密,地址可以公开。", + "singletip2": "妥善保管你的钱包 为了保护你的钱包,建议你用打印或者其他方式来保管你的私钥和地址。把你的私钥备份保存在安全、保密的位置是必要的。本站不提供私钥的相关知识,请自行学习。如果你熟悉PGP,你也可以下载这个HTML文件(它是单文件全功能的),用它的SHA1摘要和作者在本站页脚留下的相比对。本工具支持离线使用,这样它生成的私钥-地址就很难被监视了。比特币私钥必须保密,任何知道你私钥的人都可以随意花费其对应地址的比特币。你可以打印你的钱包(即纸钱包),把它装进一个防水的口袋里——就像你在保管纸币一样。", + "singletip3": "获得比特币: 让别人往你的地址汇入比特币。", + "singletip4": "查询余额: 访问blockchain.info或者blockexplorer.com可以查看到任何地址中的比特币余额。", + "singletip5": "花费比特币: 你可以下载比特币客户端,或者访问blockchain.info之类的在线钱包网站,导入你的比特币私钥来花费对应地址上的比特币。如果你选择了客户端,每当你发送一笔钱之后,找零有可能会发回客户端生成的另外一个地址,记得备份客户端生成的钱包文件,否则你可能丢钱。比特币作者中本聪说过,不要删除任何钱包,因为你的亲戚朋友说不定还会往你的旧地址里汇款。", + + // paper wallet html + "paperlabelhideart": "隐藏背景图案", + "paperlabeladdressesperpage": "每张纸上打印的地址数", + "paperlabeladdressestogenerate": "生成的地址数", + "papergenerate": "生成", + "paperprint": "打印", + "paperlabelBIPpassphrase": "密码", + "paperlabelencrypt": "BIP38加密?", + + // bulk wallet html + "bulklabelstartindex": "起始编号", + "bulklabelrowstogenerate": "生成行数", + "bulklabelcompressed": "生成压缩地址?", + "bulkgenerate": "生成", + "bulkprint": "打印", + "bulklabelcsv": "逗号分隔值:", + "bulklabelformat": "编号,地址,私钥(WIF格式)", + "bulklabelq1": "什么时候我会需要批量钱包?", + "bulka1": "例如,当你建设一个比特币收款网站,需要分别为每一个用户准备一个收款地址时,传统的做法是使用比特币客户端“bitcoind”生成大量的地址,但是不一定所有的网站托管都支持它。另外,你在服务器上运行比特币客户端,也就意味着你的私钥也会保存在服务器上,当骇客攻破服务器时,你的比特币可能会被盗。使用批量钱包一次生成大量的钱包,只把生成的地址放在服务器上,即使服务器被攻破,也不必担心比特币的安全。", + "bulklabelq2": "我该怎样在我的网站上使用批量钱包接受比特币?", + "bulklabela2li1": " 在批量钱包选项卡预生成大量比特币地址(比如,一万个)。把生成的逗号分隔值清单(CSV)复制到一个安全的环境中,注意备份。", + "bulklabela2li2": " 把地址列表导入到Web服务器上(注意,不要把私钥部分也一并导入,否则会有被盗的危险)", + "bulklabela2li3": " 为你的客户提供一个比特币支付的接口。每当一名客户选择使用比特币支付,你就从你的数据库中提取一个地址,作为该客户专用的“付款地址”,并保存订单信息。", + "bulklabela2li4": "接下来你需要一个收款通知,联系相关服务的供应商(谷歌搜索“bitcoin payment notification”),它们可以监视指定地址的资金变动,并通过WebAPI、短信、电邮或者其他方式来提醒你,你也可以通过编程使一切自动化。在http://www.blockexplorer.com/address/地址 或者 https://blockchain.info/address/地址 查看交易确认数。通常情况下,你能够在30秒之内看见交易,而根据你对安全的要求不同,你可能需要10分钟到1小时的时间等待交易确认。", + "bulklabela2li5": "比特币在区块链上稳定之后,你就可以使用在第一步中生成的私钥来花费它们。", + + // brain wallet html + "brainlabelenterpassphrase": "口令", + "brainlabelshow": "显示口令?", + "brainprint": "打印", + "brainlabelconfirm": "口令确认", + "brainview": "生成脑钱包", + "brainalgorithm": "算法: SHA256 (口令)", + "brainlabelbitcoinaddress": "比特币地址", + "brainlabelprivatekey": "私钥(WIF格式)", + + // vanity wallet html + "vanitylabelstep1": "第一步,生成一对公-私钥", + "vanitynewkeypair": "生成", + "vanitylabelstep1publickey": "第一步-公钥", + "vanitylabelstep1pubnotes": "委托他人替你生成虚荣地址时,将这段公钥提供给受托人。受托人生成你需要的虚荣地址后,可能会给你另一个公钥,将这两个公钥合成,你可验证是否得到了你所需的虚荣地址。", + "vanitylabelstep1privatekey": "第一步-私钥", + "vanitylabelstep1privnotes": "妥善保管这段私钥,建议严格加密。受托人为你生成虚荣地址后,将交给你另一个私钥(不保密也没关系),将这两个私钥合成,你即获得你所需的虚荣地址及其私钥。", + "vanitylabelstep2calculateyourvanitywallet": "第二步-合成虚荣地址", + "vanitylabelenteryourpart": "这里输入你的第一步-私钥(或公钥)", + "vanitylabelenteryourpoolpart": "这里输入你从受托人那里获得的私钥(或公钥)", + "vanitylabelnote1": "[注:这个文本框可以接受一个私钥或公钥,压缩非压缩均可]", + "vanitylabelnote2": "[注:这个文本框可以接受一个私钥或公钥,压缩非压缩均可]", + "vanitylabelradioadd": "加运算", + "vanitylabelradiomultiply": "乘运算(仅适合私钥)", + "vanitycalc": "合成", + "vanitylabelbitcoinaddress": "虚荣地址-合成地址", + "vanitylabelnotesbitcoinaddress": "这是合成的虚荣地址,它应当满足你的委托。", + "vanitylabelpublickeyhex": "合成公钥(16进制)", + "vanitylabelnotespublickeyhex": "用16进制表示的合成公钥。", + "vanitylabelprivatekey": "合成私钥(WIF格式)", + "vanitylabelnotesprivatekey": "上面虚荣地址对应的私钥,即你的虚荣私钥,请妥善保管,可导入钱包。", + + // split wallet html + "splitlabelthreshold": "组合私钥时,需要的最少分裂私钥的份数(区间[2,127])", + "splitlabelshares": "分裂的总份数([2,127])", + "splitview": "制造分裂私钥", + "combinelabelentershares":"输入找到的分裂私钥(空格分隔)", + "combineview": "组合它们", + "combinelabelprivatekey": "组合后的私钥", + + // detail wallet html + "detaillabelenterprivatekey": "钱包详情", + "detailkeyformats": "接受下列格式:WIF, WIFC, HEX, B64, B6, MINI, BIP38", + "detailview": "显示详情", + "detailprint": "打印", + "detaillabelnote1": "比特币私钥应当是只有你知道的保密代码,这段代码有许多种不同的编码格式。下面会给出此私钥对应的地址、公钥,以及最流行的私钥编码格式(WIF, WIFC, HEX, B64, MINI)", + "detaillabelnote2": "Bitcoin v0.6+ 存储压缩格式的公钥。现在客户端支持导入/导出私钥,命令是importprivkey/dumpprivkey,导出的格式可能因钱包文件版本而不同。", + "detaillabelbitcoinaddress": "比特币地址", + "detaillabelbitcoinaddresscomp": "比特币地址(压缩格式)", + "detaillabelpublickey": "公钥 (130位[0-9A-F]字符)", + "detaillabelpublickeycomp": "公钥 (压缩格式,66位[0-9A-F]字符)", + "detaillabelprivwif": "私钥 (WIF格式)
(51位base58字符) ", + "detaillabelprivwifcomp": "私钥 (WIF格式)
(压缩格式,52位base58字符) ", + "detailwifprefix": "'5'开头", + "detailcompwifprefix": "'K'或'L'开头", + "detaillabelprivhex": "私钥(16进制) (64位[0-9A-F]字符)", + "detaillabelprivb64": "私钥(base64) (44位)", + "detaillabelpassphrase": "输入BIP38的口令", + "detaildecrypt": "BIP38解码", + "detaillabelq1": "怎样用骰子生成私钥?B6是什么意思?", + "detaila1": "真正用随机数产生的钱包才是好钱包。物理产生的随机数可能会比计算机产生的随机数更优越(计算机的伪随机算法可能被识破,但是物理随机不太可能)。生成物理随机的最简单的办法是使用骰子,掷一枚六面骰99次,记录结果,将结果“6”记为“0”(或者将所有结果-1记录),这样你得到的记录将会是由0 1 2 3 4 5 组成的一串数字,称为“Base6格式”,简称“B6”。将它输入上面的文本框,点击“显示详情”按钮,得到你的私钥、地址。", } } }; diff --git a/package.json b/package.json index 0280671..1da667c 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "bitaddress.org", "version": "2.9.6", - "sha1sum": "4bc22e6518d8f26ab600ba2e03751a8f47102025", - "sha256sum": "dd023df7b3810de56b14c1acbc3925c276b2b2385de3b703ab2ed1d129cd518c", + "sha1sum": "ba76d84709652a3f9770f01137dc4c849e91cf30", + "sha256sum": "9843c2c7fe0d013b48e64a5fab1bf1d48c984d2b9ab0b26e05f0b377da390b85", "description": "Open Source JavaScript Client-Side Bitcoin Wallet Generator", "main": "Gruntfile.js", "dependencies": { diff --git a/src/bitaddress-ui.html b/src/bitaddress-ui.html index b9b9f17..e7f564e 100644 --- a/src/bitaddress-ui.html +++ b/src/bitaddress-ui.html @@ -125,7 +125,8 @@ Deutsch | Česky | Magyar | - 日本語 + 日本語 | + 简体中文
Open Source JavaScript Client-Side Bitcoin Wallet Generator
@@ -465,7 +466,7 @@
- Version History (//version) + Version History (v2.9.5) (PGP) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
diff --git a/src/ninja.translator.js b/src/ninja.translator.js index caa625f..64598b3 100644 --- a/src/ninja.translator.js +++ b/src/ninja.translator.js @@ -1165,6 +1165,149 @@ ninja.translator = { "detaildecrypt": "BIP38暗号を解除", "detaillabelq1": "サイコロを使ってどうやってアドレス作るのか?「B6」とは何か?", "detaila1": "ビットコインのアドレスの生成には一番大事なことが、アドレス生成に使われている乱数が本当にランダムなのかというところです。自然界に起きる物理的なランダムさはパソコンが生成する(似非)ランダムさよりは優れている。物理的なランダムさを作る一番簡単な方法はサイコロを振ることです。ビットコインのプライベートキーを生成するには、6面のサイコロを99回振って、毎回結果を記載していきます。規則として1⇒1, 2⇒2, 3⇒3, 4⇒4, 5⇒5, 6⇒0というように、6が出る度に「0」と記載して下さい。99桁の6進数字列ができたら、上記の入力欄に入れて、「詳細を表示」ボタンを押して下さい。これでWIF形式のプライベートキーやそれと紐づくビットコインアドレスが表示されます。これらを記載し、通常生成されたビットコインアドレスと同じように保管しておいて下さい。", + }, + + "zh-cn": { + // javascript alerts or messages + "testneteditionactivated": "TESTNET EDITION ACTIVATED", + "paperlabelbitcoinaddress": "比特币地址", + "paperlabelprivatekey": "私钥 (WIF格式)", + "paperlabelencryptedkey": "加密私钥(需要密码)", + "bulkgeneratingaddresses": "创建地址中...", + "brainalertpassphrasetooshort": "这个密码太短了 \n\n", + "brainalertpassphrasewarning": "警告:选择一个足够强大的口令非常重要,它可以避免你的私钥被暴力破解。 此外,UTF-8编码有效。请注意区分全角/半角", + "brainalertpassphrasedoesnotmatch": "两次输入的口令不一致", + "detailalertnotvalidprivatekey": "输入的私钥无效", + "detailconfirmsha256": "你输入的不是合法的私钥,\n\n你想用它的SHA-256值当作私钥吗(相当于脑钱包)\n\n警告:选择一个足够强大的口令非常重要,它可以避免你的私钥被暴力破解。", + "bip38alertincorrectpassphrase": "这个加密私钥的密码不正确。", + "bip38alertpassphraserequired": "BIP38加密的私钥需要密码。", + "vanityinvalidinputcouldnotcombinekeys": "错误输入,这两个Key无法合成。", + "vanityalertinvalidinputpublickeysmatch": "错误输入,请使用不同的公钥。", + "vanityalertinvalidinputcannotmultiple": "错误,两个公钥不能进行乘运算,想要检查两个公钥合成的地址,请选择加运算。", + "vanityprivatekeyonlyavailable": "使用两个私钥合成,才会得到合成私钥。", + "vanityalertinvalidinputprivatekeysmatch": "错误输入,请使用不同的私钥。", + + // header and menu html + "tagline": "开源JavaScript比特币钱包工具", + "generatelabelbitcoinaddress": "地址生成中...", + "generatelabelmovemouse": "请移动鼠标产生随机种子...", + "generatelabelkeypress": "或者在文本框中输入随机字符", + "singlewallet": "普通钱包", + "paperwallet": "纸钱包", + "bulkwallet": "批量钱包", + "brainwallet": "脑钱包", + "vanitywallet": "虚荣钱包", + "splitwallet": "分裂钱包", + "detailwallet": "钱包详情", + + // footer html + "footerlabeldonations": "项目捐赠", + "footerlabeltranslatedby": "简中翻译捐赠 1BfXayW2vrj6uRpoZg3nR8rMEckLpGmaiL", + "footerlabelpgp": "PGP", + "footerlabelversion": "版本历史", + "footerlabelgithub": "GitHub页面", + "footerlabelcopyright1": "Copyright bitaddress.org.", + "footerlabelcopyright2": "JavaScript的版权信息已经包含在源代码中。", + "footerlabelnowarranty": "No warranty", + + // single wallet html + "newaddress": "生成新地址", + "singleprint": "打印", + "singlelabelbitcoinaddress": "比特币地址", + "singlelabelprivatekey": "私钥 (WIF格式-可导入客户端的格式)", + "singletip1": "比特币钱包就是这么简单,一个地址,对应一个私钥,浏览器已自动生成了一个,就显示在上面。私钥必须保密,地址可以公开。", + "singletip2": "妥善保管你的钱包 为了保护你的钱包,建议你用打印或者其他方式来保管你的私钥和地址。把你的私钥备份保存在安全、保密的位置是必要的。本站不提供私钥的相关知识,请自行学习。如果你熟悉PGP,你也可以下载这个HTML文件(它是单文件全功能的),用它的SHA1摘要和作者在本站页脚留下的相比对。本工具支持离线使用,这样它生成的私钥-地址就很难被监视了。比特币私钥必须保密,任何知道你私钥的人都可以随意花费其对应地址的比特币。你可以打印你的钱包(即纸钱包),把它装进一个防水的口袋里——就像你在保管纸币一样。", + "singletip3": "获得比特币: 让别人往你的地址汇入比特币。", + "singletip4": "查询余额: 访问blockchain.info或者blockexplorer.com可以查看到任何地址中的比特币余额。", + "singletip5": "花费比特币: 你可以下载比特币客户端,或者访问blockchain.info之类的在线钱包网站,导入你的比特币私钥来花费对应地址上的比特币。如果你选择了客户端,每当你发送一笔钱之后,找零有可能会发回客户端生成的另外一个地址,记得备份客户端生成的钱包文件,否则你可能丢钱。比特币作者中本聪说过,不要删除任何钱包,因为你的亲戚朋友说不定还会往你的旧地址里汇款。", + + // paper wallet html + "paperlabelhideart": "隐藏背景图案", + "paperlabeladdressesperpage": "每张纸上打印的地址数", + "paperlabeladdressestogenerate": "生成的地址数", + "papergenerate": "生成", + "paperprint": "打印", + "paperlabelBIPpassphrase": "密码", + "paperlabelencrypt": "BIP38加密?", + + // bulk wallet html + "bulklabelstartindex": "起始编号", + "bulklabelrowstogenerate": "生成行数", + "bulklabelcompressed": "生成压缩地址?", + "bulkgenerate": "生成", + "bulkprint": "打印", + "bulklabelcsv": "逗号分隔值:", + "bulklabelformat": "编号,地址,私钥(WIF格式)", + "bulklabelq1": "什么时候我会需要批量钱包?", + "bulka1": "例如,当你建设一个比特币收款网站,需要分别为每一个用户准备一个收款地址时,传统的做法是使用比特币客户端“bitcoind”生成大量的地址,但是不一定所有的网站托管都支持它。另外,你在服务器上运行比特币客户端,也就意味着你的私钥也会保存在服务器上,当骇客攻破服务器时,你的比特币可能会被盗。使用批量钱包一次生成大量的钱包,只把生成的地址放在服务器上,即使服务器被攻破,也不必担心比特币的安全。", + "bulklabelq2": "我该怎样在我的网站上使用批量钱包接受比特币?", + "bulklabela2li1": " 在批量钱包选项卡预生成大量比特币地址(比如,一万个)。把生成的逗号分隔值清单(CSV)复制到一个安全的环境中,注意备份。", + "bulklabela2li2": " 把地址列表导入到Web服务器上(注意,不要把私钥部分也一并导入,否则会有被盗的危险)", + "bulklabela2li3": " 为你的客户提供一个比特币支付的接口。每当一名客户选择使用比特币支付,你就从你的数据库中提取一个地址,作为该客户专用的“付款地址”,并保存订单信息。", + "bulklabela2li4": "接下来你需要一个收款通知,联系相关服务的供应商(谷歌搜索“bitcoin payment notification”),它们可以监视指定地址的资金变动,并通过WebAPI、短信、电邮或者其他方式来提醒你,你也可以通过编程使一切自动化。在http://www.blockexplorer.com/address/地址 或者 https://blockchain.info/address/地址 查看交易确认数。通常情况下,你能够在30秒之内看见交易,而根据你对安全的要求不同,你可能需要10分钟到1小时的时间等待交易确认。", + "bulklabela2li5": "比特币在区块链上稳定之后,你就可以使用在第一步中生成的私钥来花费它们。", + + // brain wallet html + "brainlabelenterpassphrase": "口令", + "brainlabelshow": "显示口令?", + "brainprint": "打印", + "brainlabelconfirm": "口令确认", + "brainview": "生成脑钱包", + "brainalgorithm": "算法: SHA256 (口令)", + "brainlabelbitcoinaddress": "比特币地址", + "brainlabelprivatekey": "私钥(WIF格式)", + + // vanity wallet html + "vanitylabelstep1": "第一步,生成一对公-私钥", + "vanitynewkeypair": "生成", + "vanitylabelstep1publickey": "第一步-公钥", + "vanitylabelstep1pubnotes": "委托他人替你生成虚荣地址时,将这段公钥提供给受托人。受托人生成你需要的虚荣地址后,可能会给你另一个公钥,将这两个公钥合成,你可验证是否得到了你所需的虚荣地址。", + "vanitylabelstep1privatekey": "第一步-私钥", + "vanitylabelstep1privnotes": "妥善保管这段私钥,建议严格加密。受托人为你生成虚荣地址后,将交给你另一个私钥(不保密也没关系),将这两个私钥合成,你即获得你所需的虚荣地址及其私钥。", + "vanitylabelstep2calculateyourvanitywallet": "第二步-合成虚荣地址", + "vanitylabelenteryourpart": "这里输入你的第一步-私钥(或公钥)", + "vanitylabelenteryourpoolpart": "这里输入你从受托人那里获得的私钥(或公钥)", + "vanitylabelnote1": "[注:这个文本框可以接受一个私钥或公钥,压缩非压缩均可]", + "vanitylabelnote2": "[注:这个文本框可以接受一个私钥或公钥,压缩非压缩均可]", + "vanitylabelradioadd": "加运算", + "vanitylabelradiomultiply": "乘运算(仅适合私钥)", + "vanitycalc": "合成", + "vanitylabelbitcoinaddress": "虚荣地址-合成地址", + "vanitylabelnotesbitcoinaddress": "这是合成的虚荣地址,它应当满足你的委托。", + "vanitylabelpublickeyhex": "合成公钥(16进制)", + "vanitylabelnotespublickeyhex": "用16进制表示的合成公钥。", + "vanitylabelprivatekey": "合成私钥(WIF格式)", + "vanitylabelnotesprivatekey": "上面虚荣地址对应的私钥,即你的虚荣私钥,请妥善保管,可导入钱包。", + + // split wallet html + "splitlabelthreshold": "组合私钥时,需要的最少分裂私钥的份数(区间[2,127])", + "splitlabelshares": "分裂的总份数([2,127])", + "splitview": "制造分裂私钥", + "combinelabelentershares":"输入找到的分裂私钥(空格分隔)", + "combineview": "组合它们", + "combinelabelprivatekey": "组合后的私钥", + + // detail wallet html + "detaillabelenterprivatekey": "钱包详情", + "detailkeyformats": "接受下列格式:WIF, WIFC, HEX, B64, B6, MINI, BIP38", + "detailview": "显示详情", + "detailprint": "打印", + "detaillabelnote1": "比特币私钥应当是只有你知道的保密代码,这段代码有许多种不同的编码格式。下面会给出此私钥对应的地址、公钥,以及最流行的私钥编码格式(WIF, WIFC, HEX, B64, MINI)", + "detaillabelnote2": "Bitcoin v0.6+ 存储压缩格式的公钥。现在客户端支持导入/导出私钥,命令是importprivkey/dumpprivkey,导出的格式可能因钱包文件版本而不同。", + "detaillabelbitcoinaddress": "比特币地址", + "detaillabelbitcoinaddresscomp": "比特币地址(压缩格式)", + "detaillabelpublickey": "公钥 (130位[0-9A-F]字符)", + "detaillabelpublickeycomp": "公钥 (压缩格式,66位[0-9A-F]字符)", + "detaillabelprivwif": "私钥 (WIF格式)
(51位base58字符) ", + "detaillabelprivwifcomp": "私钥 (WIF格式)
(压缩格式,52位base58字符) ", + "detailwifprefix": "'5'开头", + "detailcompwifprefix": "'K'或'L'开头", + "detaillabelprivhex": "私钥(16进制) (64位[0-9A-F]字符)", + "detaillabelprivb64": "私钥(base64) (44位)", + "detaillabelpassphrase": "输入BIP38的口令", + "detaildecrypt": "BIP38解码", + "detaillabelq1": "怎样用骰子生成私钥?B6是什么意思?", + "detaila1": "真正用随机数产生的钱包才是好钱包。物理产生的随机数可能会比计算机产生的随机数更优越(计算机的伪随机算法可能被识破,但是物理随机不太可能)。生成物理随机的最简单的办法是使用骰子,掷一枚六面骰99次,记录结果,将结果“6”记为“0”(或者将所有结果-1记录),这样你得到的记录将会是由0 1 2 3 4 5 组成的一串数字,称为“Base6格式”,简称“B6”。将它输入上面的文本框,点击“显示详情”按钮,得到你的私钥、地址。", } } }; From 45da400e48d5780c4f6f7c82291b246836ec18f3 Mon Sep 17 00:00:00 2001 From: pointbiz Date: Tue, 6 Jan 2015 22:52:46 -0400 Subject: [PATCH 08/18] add detached sig in footer --- CHANGELOG.txt | 16 ++- CHANGELOG.txt.asc | 285 +++++++++++++++++++++++++++++++++++++++ bitaddress.org.html | 288 ++++++++++++++++++++++------------------ bitaddress.org.html.sig | 11 ++ src/bitaddress-ui.html | 11 +- src/main.css | 2 +- src/ninja.translator.js | 275 ++++++++++++++++++++------------------ 7 files changed, 620 insertions(+), 268 deletions(-) create mode 100644 CHANGELOG.txt.asc create mode 100644 bitaddress.org.html.sig diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 3f6398d..b16ba56 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -29,8 +29,18 @@ END USER NOTES: Here is a signed list of file names and version history. 2015-01-05: status ACTIVE -bitaddress.org-v2.9.6-SHA256-.html - - +bitaddress.org-v2.9.6-SHA256-34728a9cec417cf8060423c77e8793e4aa133cf3d66a6b8073b4290cf1f4695c.html + - Japanese translations for Split Wallet. Thanks dabura667. + - remove promise to show MINI key on details tab. MINI key + will only be shown when it is provided since it cannot + be derived from other key formats. + - fix README + - Russian translations. Thanks e5faf2. + - Simplified Chinese translations. Thanks kwl01skz. + - add direct link to zip on github + - add this CHANGELOG to repository and add detached sigs in repository. + add link to sig of HTML. + - hash with SHA256 instead of SHA1. SHA1 hash still provided in package.json. 2014-04-23: status ACTIVE bitaddress.org-v2.9.3-SHA1-7d47ab312789b7b3c1792e4abdb8f2d95b726d64.html @@ -259,5 +269,3 @@ bitaddress.org-v0.2-SHA1-71216f5b84ef8831a805dbf66e9d8b83ad1dc5fb.html 2011-09-11: status OFFLINE bitaddress.org-v0.1-SHA1-f40e706490f3eb2be56c31ddbf4c8646cd51ef40.html -Initial release - - diff --git a/CHANGELOG.txt.asc b/CHANGELOG.txt.asc new file mode 100644 index 0000000..f71ccbb --- /dev/null +++ b/CHANGELOG.txt.asc @@ -0,0 +1,285 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +bitaddress.org +Open Source JavaScript Client-Side Bitcoin Wallet Generator + +The bitaddress.org file contains all the JavaScript/Css/Images embedded +in the HTML document. Included in the file name is the file's version +number and hash. + +The bitaddress.org software is available Open Source under the MIT License. +Visit the GitHub Repository for the full copyright and license information: +https://github.com/pointbiz/bitaddress.org + +Bitcoin Forum thread: +https://bitcointalk.org/index.php?topic=43496.0 + +Donation Address: 1NiNja1bUmhSoTXozBRBEtR8LeF9TGbZBN + +END USER NOTES: + 1) To print QRCode in IE8 you must enable the "Print Background Colors and + Images" checkbox on the "Page Setup" screen. + 2) For Bulk Wallet I recommended using Google Chrome, it's the fastest. + 3) Requires IE8+, Firefox, Chrome or sufficient JavaScript support. + 4) Mobile Safari only works with iPhone4 or newer devices. + Older devices timeout while executing JavaScript. + 5) DO NOT use Opera Mini it renders JavaScript output server side, therefore + they might record the private key you generated. + 6) Art Wallet does not work properly in IE8 due to CSS limitations. + 7) BIP38 most likely will not work on mobile devices due to hardware limitations. + +Here is a signed list of file names and version history. + +2015-01-05: status ACTIVE +bitaddress.org-v2.9.6-SHA256-34728a9cec417cf8060423c77e8793e4aa133cf3d66a6b8073b4290cf1f4695c.html + - Japanese translations for Split Wallet. Thanks dabura667. + - remove promise to show MINI key on details tab. MINI key + will only be shown when it is provided since it cannot + be derived from other key formats. + - fix README + - Russian translations. Thanks e5faf2. + - Simplified Chinese translations. Thanks kwl01skz. + - add direct link to zip on github + - add this CHANGELOG to repository and add detached sigs in repository. + add link to sig of HTML. + - hash with SHA256 instead of SHA1. SHA1 hash still provided in package.json. + +2014-04-23: status ACTIVE +bitaddress.org-v2.9.3-SHA1-7d47ab312789b7b3c1792e4abdb8f2d95b726d64.html + - increased the HTML height to allow for greater range of mouse + seed values on large monitors. Thanks danbartram. + - Japanese translations. Thanks dabura667. + +2014-04-21: status ACTIVE +bitaddress.org-v2.9.1-SHA1-67b1facd70890aa9544597e97122c7a1d4fdc821.html + - Hungarian translation. Thanks bitcoin333. + - Auto detect culture and translate. Thanks onovy. + +2014-04-15: status ACTIVE +bitaddress.org-v2.9.0-SHA1-6e9ae5c64d510b53fa39e36a3017d5342b838984.html + - Split Wallet: Shamir's Secret Sharing for a Bitcoin private key. + Thanks to Jeff Weiss. + +2014-01-19: status ACTIVE +bitaddress.org-v2.8.1-SHA1-a6e63f2712851710255a27fa0f22ef7833c2cd07.html + - Czech translation + - remove firstbits link + - fix mouse movement visualization for Firefox and IE + +2014-01-18: status ACTIVE +bitaddress.org-v2.8.0-SHA1-87dcf19f02ee9fb9dd3a8c787bcf52eef944aa82.html + - more entropy from browser fingerprinting for PRNG seed + - user can add entropy through URL hash tag + - seed mouse movement as 16-bit number + - whole seed pool initially filled by window.crypto.getRandomValues + - added textbox as an alternative input source for entropy + - address will not generate without a minimum amount of human added entropy + from mouse or keyboard + - discard mouse movements less than 40ms apart + - visualize points of entropy collection from the mouse + +2013-12-23: status ACTIVE +bitaddress.org-v2.7.2-SHA1-364542f1ccc5777c79aebb1692a6265cf3e42e7e.html + - keys and addresses in monospace font. + +2013-12-22: status ACTIVE +bitaddress.org-v2.7.1-SHA1-6dfa290d1a133fc444c5580e2a8f1f890d5edf17.html + - more entropy for the PRNG seed. + - use ?showseedpool=true to see the contents of the seed pool in hex. + +2013-12-09: status ACTIVE +bitaddress.org-v2.6.6-SHA1-0d68accca48df174b6b4f48544498f333dc6e33a.html + - German translations thanks to gerEDH. + +2013-12-01: status ACTIVE +bitaddress.org-v2.6.5-SHA1-fa763c2bbc97e1b37bc6d3945647aed869ec8c18.html + - dice FAQ on detail wallet tab. + - QR code spacing adjusted to 4x on single wallet and detail wallet tab. + - update to JSBN 1.4 + - add passphrase required alert to paper wallet tab for bip38 keys. + +2013-11-14: status ACTIVE +bitaddress.org-v2.6.2-SHA1-4d98755d7e78caa4361228a2b11b0faa0f65e6de.html + - Italian translations thanks to Coin-Escrow + - Add base6 support to Wallet Details tab + +2013-11-03: status ACTIVE +bitaddress.org-v2.6.0-SHA1-4f1fea4620287f863473193b8d93a8f3877ba972.html + - Usability improvements to Single Wallet, Paper Wallet and Brain Wallet. + +2013-10-24: status ACTIVE +bitaddress.org-v2.5.1-SHA1-b7bda19c2327cc44a81b68a44926a9f8057ed681.html + - BIP38 passphrase protected paper wallets. Thanks to casascius, scintill, Zeilap. + Paper Wallet tab and Wallet Details tab support BIP38. + - Compressed address support on Bulk Wallet tab. + - Greek translations thanks to ifaist0s + +2013-02-17: status ACTIVE +bitaddress.org-v2.4-SHA1-1d5951f6a04dd5a287ac925da4e626870ee58d60.html + - French translations thanks to blockgenesis. + +2013-01-27: status ACTIVE +bitaddress.org-v2.3-SHA1-1d067dc4f3103622ca9de332c3c86fc57d76ec83.html + - Vanity Wallet now supports compressed keys. + - Elliptic Curve and Bitcoin.ECKey libaries now support compressed keys. + - English Json used for translations is now output to a textarea when + you run the unit tests. + - more unit tests, use ?unittests=true to run them. + +2012-12-30: status ACTIVE +bitaddress.org-v2.2-SHA1-d414530eea984e9ebdd40dc27af9078cd73dc3b3.html + - critical bug fix to Vanity Wallet multiplication of a public key with a private key. + Bug was due to incorrect construction of BigInteger object. Which results in the incorrect + Bitcoin Address being displayed. Therefore, v2.1 has been taken offline. + - new translations code and initial spanish translation. Thanks to dserrano5 for translating. + +2012-12-24: status OFFLINE +bitaddress.org-v2.1-SHA1-af431934553aeef3e042e796a31ee101cdabc496.html + - Vanity Wallet now supports adding/multiplying of public/private keys. + Compressed keys not supported. + - refactored wallet HTML/JavaScript to make the code more modular. + Now it's easier to add/remove a specific wallet. + - reusable public and private key math has been extracted to + ninja.privateKey and ninja.publicKey + - created unit tests + +2012-10-20: status ACTIVE +bitaddress.org-v2.0-SHA1-c0300a88d2de421106560185e4916f4eee6ed9df.html + - Added Vanity Wallet merged from n1bor + - Paper Wallet merged high resolution QR code from ironwolf + +2012-10-11: status ACTIVE +bitaddress.org-v1.9-SHA1-a487b495d710d6f617d688e5f758e40c8b6c510e.html + - fixed Testnet Edition WIF and Compressed WIF private keys. It now prepends + the correct byte (0xEF) for testnet when activated. + +2012-10-07: status ACTIVE +bitaddress.org-v1.8-SHA1-97d52a44eeb261e2398e98e1eed2bd56b99c845a.html + - Paper Wallet Tab: Art wallet is now the default. + - Paper Wallet Tab: The PNG has been resized to fit better into physical + wallets when printed. + - Paper Wallet Tab: The PNG has been rendered using the Ubuntu font. + +2012-09-29: status ACTIVE +bitaddress.org-v1.7-SHA1-46215e8a2f026b784f29ea86c00c866e634a22fa.html + - Paper Wallet Tab now has the option to print an artistic wallet. + Current implementation uses an embedded PNG. This feature is not supported + in IE8. + - Brain Wallet Tab now has passphrase confirm and show passphrase options. + +2012-07-29: status ACTIVE +bitaddress.org-v1.6-SHA1-162d1ff4fd1e09222cbaca6c282672ee6c195e1b.html + - Added Brain Wallet Tab. Algorithm is SHA256(passphrase). + Minimum passphrase length is 15 characters. + +2012-03-22: status ACTIVE +bitaddress.org-v1.5-SHA1-f2e410251c8741ac65d29a1c6fb8ef6919b6ab8b.html + - Wallet Details Tab: + coretechs fixed a bug with the display of the base64 private key + coretechs added support for compressed keys + +2012-01-09: status ACTIVE +bitaddress.org-v1.4-SHA1-5c120c0860032e88a8fd81b802d6f53a5fc082bf.html + - Wallet Details Tab: Allow for a deterministic wallet to be created by entering a passphrase on + the wallet details tab. If you input text that is not a valid private key you will + be prompted and asked if you want to use the entered text as a passphrase to + create a private key. If you select OK then it will perform a SHA256 of the passphrase + to generate your private key. + - Wallet Details Tab: Added QRCodes. Added Public Key. + - Bulk Wallet Tab: added FAQs. + - Version number now shown in footer. + +2011-11-28: status ACTIVE +bitaddress.org-v1.3-SHA1-88d9a17e6d6286d7840043b6df9980e85f44b8c0.html + - Testnet Edition: if you add ?testnet=true to the end of the URL it will activate testnet edition. + - isMiniFormat function updated to accept mini key formats of length 22, 26 or 30 characters. + - bitaddress.org software is now open source available under the MIT License. + +2011-10-12: status ACTIVE +bitaddress.org-v1.2-SHA1-1770e5e8993cca823a2ad956e2aab5c291151692.html + -Wallet Details Tab: Added extra check on validity of Wallet Import Format and + Base64 Private Keys. + +2011-10-11: status ACTIVE +bitaddress.org-v1.1-SHA1-969273be66ecf93d8bb3525edc1fa0cf3de228d2.html + -Removed 'Standard Format' from Wallet Details tab. + +2011-10-10: status ACTIVE +bitaddress.org-v1.0-SHA1-8fc60a3ca4eb24c85c31b264e95a9298e41032c2.html + -Added Wallet Details tab. + +2011-10-02: status ACTIVE +bitaddress.org-v0.9-SHA1-aa61ca480288e1bda00f1f042d60a057880a2321.html + -Added more entropy, all mouse movements in the window will add to the random seed pool. + -Added PaperWallet tab. You can now generate multiple QRCode pairs per page. + +2011-09-22: status ACTIVE +bitaddress.org-v0.8-SHA1-47b989b8a33407df14d21dbd00fad653e0161d6c.html + -Css update to tabs + -Added double quotes around CSV bitcoin address and private key output + +2011-09-22: status ACTIVE +bitaddress.org-v0.7-SHA1-34e344a0d229dc10c8f5c99ed6b6298e6fc5e39f.html + -Added Bulk Wallet tab. Now you can generate CSV lists of addresses! + +2011-09-19: status ACTIVE +bitaddress.org-v0.6-SHA1-1cea2d8c437d49c550b9ec1cfc5d02ac85e8199e.html + -Removed QRCode donation address + +2011-09-19: status ACTIVE +bitaddress.org-v0.5-SHA1-7ea8d0e32c3583d369dc4079443e0d6e215ac216.html + -DO NOT USE VERSION 0.1 TO 0.4! They infrequently could generate bad keys. + -Bug Fixed: v0.1 to v0.4 included a bug in the Elliptic Curve function: + ec.PointFp.prototype.getEncoded + The X and Y integers that were less than 32 bytes were not being zero padded. + They are now zero padded which fixes the bug in generating public keys. + -Bug Fixed: v0.3 and v0.4 had a bug in the Wallet Import Format function: + ECKey.prototype.getBitcoinWalletImportFormat + Private keys there were less than 32 bytes were not being zero padded. + They are now zero padded which fixes the bug in generating private keys. + -Requires IE8+, Firefox, Chrome or sufficient JavaScript support. + -Added function to build a CSV list of addresses and keys. + Not supported in the GUI yet. + -Added a timeout to override the mouse move detection. Therefore, if the user + has not moved his mouse before a certain random expiry the address and key + will then be generated. This helps for mobile devices. + +2011-09-18: status OFFLINE +bitaddress.org-v0.4-SHA1-9d3afda22f8cf526330c0387a77e4016fd050323.html + -Known bug: Bitcoin.Base58.encode is not working in IE7 + -Removed Private Key Hex + -Added QRCode for Bitcoin Address + -Added QRCode for Private Key Wallet Import Format + -Added extra entrophy with mouse movement technique + -Footer now hides when printing + -QRCode shows with canvas, if canvas is not supported (IE8) then it shows + with a table. Printing of the table is not supported by most browsers. + +2011-09-13: status OFFLINE +bitaddress.org-v0.3-SHA1-bd94e796811d852f9db69e82adea9a9c48daf183.html + -Removed Private Key Base64 + -Added Private Key Wallet Import Format + +2011-09-12: status OFFLINE +bitaddress.org-v0.2-SHA1-71216f5b84ef8831a805dbf66e9d8b83ad1dc5fb.html + -Added doctype so IE9 renders in standards mode + -Added Array.prototype.map for IE7/8 compatibility + -Added New Address and Print buttons + -Added new logo + -Known bug: Bitcoin.Base58.encode is not working in IE7 + +2011-09-11: status OFFLINE +bitaddress.org-v0.1-SHA1-f40e706490f3eb2be56c31ddbf4c8646cd51ef40.html + -Initial release +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQEcBAEBAgAGBQJUrJ7lAAoJEIdJe5Fjl09ahRgH/117FJDw6jhwunIar7wv/Huj +rGr3aouGZqJ/043HzfeHbzEszft/Q5HU1YuMIB1Zq+YWMBPLqy2G6OaApJ0YyAZq +KKBmuvy0EH2QY22mjmXyBsoJs9ZaVf2y2T9zMJgueXz2NksWutRa3qmD0Ypip16A +gHoQjaAlybv0HegPkmpPLWttq+BRcaGgB6BabNX1lyAuJQIMVl8rG/CNAt6+5I6x +zd4587B/ib54ZGaiBPMtEJ1bZPcOt5/12lCfLGynW3Wgsc5vGS9v018m4Oapi/hK +EKqKInUeDdYI8QcpgJudw0m4LGl3C6BDPDgfp1L77kwmVbVQbStnme1W7RpY7qE= +=kD6w +-----END PGP SIGNATURE----- diff --git a/bitaddress.org.html b/bitaddress.org.html index a11def5..8163484 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -6479,7 +6479,7 @@ body, html { height: 99%; } .expandable { padding: 10px 15px; text-align: left; cursor: pointer; } #menu { visibility: hidden; font-size: 90%; } - #culturemenu { text-align: right; padding: 0 20px; margin-bottom: 3px; } + #culturemenu { text-align: center; padding: 0 10px 5px 10px; margin-bottom: 3px; font-size: 90%; } #culturemenu span { padding: 3px; } #culturemenu .selected { text-decoration: none; color: #000000; } @@ -6875,17 +6875,20 @@ body, html { height: 99%; }
Donations: 1NiNja1bUmhSoTXozBRBEtR8LeF9TGbZBN - + GitHub Repository + (zip)
- Version History (2.9.6) - (PGP) + Version History (2.9.6) + 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
- GitHub Repository (zip) + + (PGP) + (sig)
- Version History (2.9.7) + Version History (2.9.8) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
diff --git a/bitaddress.org.html.sig b/bitaddress.org.html.sig index 2275ebc..90d3aba 100644 --- a/bitaddress.org.html.sig +++ b/bitaddress.org.html.sig @@ -1,11 +1,11 @@ -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 -iQEcBAABAgAGBQJUrcimAAoJEIdJe5Fjl09aa40IAIl/ACGH1UlR76aPMx7lq9/o -gRiFzx8IlEN/nIR4I68EE77uJ+8rKzQW4UwWDj6xUGrVn67542qMllvbpx0zdzcW -FDe+U7I/e2Ce+Cyh4bJOYGSNjZ1D+DdA1Tq0JR662V/nfFkYP72XtPO4qs1sGGOK -GMArlCDvH0eMWF68ut3uT60vyDfKHA/X3P8RWrasq+aNRF32fWjo3zG23Ir2i20c -tEQiGC8w/DkQX4MaQXSxAwwcjb8smEkakDU40XTVb5r/+b7H8hv5C47M9lTYyF2U -btMP/guoqS88fE5DDZ4Kt3gLt68Hxo7xQ09B9RRZWR7cuV/7dO0g6+XVAm5REeM= -=bHF3 +iQEcBAABAgAGBQJUrwa5AAoJEIdJe5Fjl09aqTwIAIs4qnbCuOb76bZQ14mBOddA +6cithddwYeLRCY1vhy38kNdoylQA+sTb2dNiZkdka/7UXnUDiFkZr9gDYl423Oi0 +ZVuFUlh+738KAxlx8cfDVZh9BbGyLZvkQ77KKNHZ9x1fXyIA1m33rzy+JU3Z4XHC +wG8fyjSrSoL1lFeNTvqE2nSrdeJb6yKxmUBiMuTGyoZj8bAs4lS37Ca7mrZUAjG0 +GKRzJ/XO1Wj0C0Y+gUvHCxTjRrcg8Qa42yPd2ZPB5cw/LsncLF+Bi7pAuM8y2nij +hmt88CA+qgwh4qAUoNWtyrq4vO0lIeUELw8VyB2HGfaiNPSbcPeK6BkxZlJu2kQ= +=sBi6 -----END PGP SIGNATURE----- diff --git a/package.json b/package.json index 41dd710..4bb95b8 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "bitaddress.org", - "version": "2.9.7", - "sha1sum": "42170ef494fa01928967650ef496494469651d97", - "sha256sum": "1b0f71dfc2e064426328c15c4dbd1f467cb26afe0e84841347ad11d8ca668f70", + "version": "2.9.8", + "sha1sum": "8eaaf627380ff3c28d9efc31899b8b0102c32ab6", + "sha256sum": "2c5d16dbcde600147162172090d940fd9646981b7d751d9bddfc5ef383f89308", "description": "Open Source JavaScript Client-Side Bitcoin Wallet Generator", "main": "Gruntfile.js", "dependencies": { From e28f69af124552c6fc51b8935afaa095e53821d4 Mon Sep 17 00:00:00 2001 From: rhcastilhos Date: Sun, 26 Apr 2015 23:59:49 -0300 Subject: [PATCH 14/18] Add portuguese (pt-br) translation + es small fix --- src/ninja.translator.js | 139 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 138 insertions(+), 1 deletion(-) diff --git a/src/ninja.translator.js b/src/ninja.translator.js index 694516d..7fb8751 100644 --- a/src/ninja.translator.js +++ b/src/ninja.translator.js @@ -163,7 +163,7 @@ ninja.translator = { "vanitylabelstep1publickey": "Clave pública:", "vanitylabelstep1pubnotes": "Copia y pega la línea de arriba en el campo \"Your-Part-Public-Key\" de la web de Vanity Pool.", "vanitylabelstep1privatekey": "Clave privada:", - "vanitylabelstep1privnotes": "Copia y pega la clave pública de arriba en un archivo de texto. Es mejor que lo almacenes en un volumen cifrado. Lo necesitarás para recuperar la clave privada una vez Vanity Pool haya encontrado tu prefijo.", + "vanitylabelstep1privnotes": "Copia y pega la clave privada de arriba en un archivo de texto. Es mejor que lo almacenes en un volumen cifrado. Lo necesitarás para recuperar la clave privada una vez Vanity Pool haya encontrado tu prefijo.", "vanitylabelstep2calculateyourvanitywallet": "Paso 2 - Calcula tu cartera personalizada", "vanitylabelenteryourpart": "Introduce la clave privada generada en el paso 1, y que has guardado:", "vanitylabelenteryourpoolpart": "Introduce la clave privada obtenida de la Vanity Pool:", @@ -1183,6 +1183,143 @@ ninja.translator = { "detaila1": "ビットコインのアドレスの生成には一番大事なことが、アドレス生成に使われている乱数が本当にランダムなのかというところです。自然界に起きる物理的なランダムさはパソコンが生成する(似非)ランダムさよりは優れている。物理的なランダムさを作る一番簡単な方法はサイコロを振ることです。ビットコインのプライベートキーを生成するには、6面のサイコロを99回振って、毎回結果を記載していきます。規則として1⇒1, 2⇒2, 3⇒3, 4⇒4, 5⇒5, 6⇒0というように、6が出る度に「0」と記載して下さい。99桁の6進数字列ができたら、上記の入力欄に入れて、「詳細を表示」ボタンを押して下さい。これでWIF形式のプライベートキーやそれと紐づくビットコインアドレスが表示されます。これらを記載し、通常生成されたビットコインアドレスと同じように保管しておいて下さい。", }, + "pt-br": { + // javascript alerts or messages + "testneteditionactivated": "EDIÇÃO DO TESTNET ATIVADA", + "paperlabelbitcoinaddress": "Endereço Bitcoin:", + "paperlabelprivatekey": "Chave privada (Wallet Import Format):", + "paperlabelencryptedkey": "Chave privada criptografada (Senha necessária)", + "bulkgeneratingaddresses": "Generando endereços... ", + "brainalertpassphrasetooshort": "A senha introduzida é pequena demais.\n\n", + "brainalertpassphrasewarning": "Aviso: É importante que escolha uma senha forte, para evitar ataques de força bruta que tentem adivinhar sua senha e roubar seus bitcoins.", + "brainalertpassphrasedoesnotmatch": "As senhas digitadas não são iguais.", + "detailalertnotvalidprivatekey": "O texto que você digitou não é uma chave privada válida", + "detailconfirmsha256": "O texto que você digitou não é uma chave privada válida\n\nQuer usar esse texto como se fosse uma senha e gerar uma chave privada usando um hash SHA256 dessa senha?\n\nAviso: É importante escolher uma senha forte para evitar ataques de força bruta que tentem adivinhá-la e roubar seus bitcoins.", + "bip38alertincorrectpassphrase": "Senha incorreta para essa chave privada criptografada.", + "bip38alertpassphraserequired": "Senha necessária para a chave BIP38", + "vanityinvalidinputcouldnotcombinekeys": "Entrada inválida. Não foi possível combinar as chaves.", + "vanityalertinvalidinputpublickeysmatch": "Entrada inválida. As chaves públicas de ambas entradas são iguais. Você deve inserir duas chaves diferentes.", + "vanityalertinvalidinputcannotmultiple": "Entrada inválida. Não é possível multiplicar duas chaves públicas. Clique em 'Somar' para somar duas chaves públicas para adquirir um endereço bitcoin.", + "vanityprivatekeyonlyavailable": "Disponível apenas quando se combinam duas chaves privadas", + "vanityalertinvalidinputprivatekeysmatch": "Entrada inválida. As chaves privadas de ambas as entradas são iguais. Você deve inserir duas chaves diferentes.", + + // header and menu html + "tagline": "Gerador local de carteiras Bitcoin usando Javascript de código aberto", + "generatelabelbitcoinaddress": "Gerando endereço Bitcoin...", + "generatelabelmovemouse": "Movimente um pouco o ponteiro do mouse para criar entropia...", + "generatelabelkeypress": "OU digite alguns caracteres aleatórios nessa caixa de texto", + "singlewallet": "Carteira única", + "paperwallet": "Carteira em papel", + "bulkwallet": "Múltiplos endereços", + "brainwallet": "Carteira mental", + "vanitywallet": "Carteira personalizada", + "detailwallet": "Detalhes da carteira", + + // footer html + "footerlabeldonations": "Doações:", + "footerlabeltranslatedby": "Tradução: 1LwaSNTZ7xAagYKyE68gT5iqX1DmPnmJmy", + "footerlabelpgp": "PGP", + "footerlabelversion": "Histórico de versões", + "footerlabelgithub": "Repositório GitHub", + "footerlabelgithubzip": "zip", + "footerlabelsig": "sig", + "footerlabelcopyright1": "Copyright bitaddress.org.", + "footerlabelcopyright2": "Copyright do código JavaScript: no código-fonte.", + "footerlabelnowarranty": "Sem garantia.", + + // single wallet html + "newaddress": "Gerar endereço", + "singleprint": "Imprimir", + "singlelabelbitcoinaddress": "Endereço Bitcoin", + "singlelabelprivatekey": "Chave privada (Wallet Import Format):", + "singletip1": "Uma carteira Bitcoin é tão simples quanto um simples pareamento de um endereço Bitcoin com a sua chave privada Bitcoin correspondente. Essa carteira foi gerada para você em seu navegador web e está sendo exibida acima.", + "singletip2": "Para proteger essa carteira você deve imprimir ou anotar/salvar o endereço Bitcoin e a chave privada. É importante que você faça uma cópia de segurança da sua chave privada e armazene-a em um local seguro. Esse site não toma conhecimento da sua chave privada. Se você for familiar com PGP, você pode baixar essa pagina HTML tudo-em-um e verificar se você tem uma versão autêntica do autor deste site ao fazer a correspondência do hash SHA256 deste HTML com o hash SHA256 disponível na versão assinada do documento linkado no rodapé deste site. Se você sair/atualizar essa página ou apertar o botão Gerar Novo Endereço, então uma nova chave privada será gerada e a chave exibida anteriormente não será recuperável. A sua chave privada Bitcoin deve ser mantida como um segredo. Qualquer pessoa que tiver acesso a ela poderá gastar todos os seus bitcoins associados com aquele endereço. Se você imprimir sua carteira, armazene-a em um saco plástico selado para mantê-la longe da água. Trate uma carteira em papel como se fosse dinheiro.", + "singletip3": "Adicione fundos para essa carteira ao indicar para outras pessoas enviarem bitcoins para o seu endereço Bitcoin.", + "singletip4": "Verifique seu saldo visitando os sites blockchain.info ou blockexplorer.com e digitando o seu endereço Bitcoin.", + "singletip5": "Gaste seus bitcoins visitando o site blockchain.info e esvaziando completamente o seu saldo de sua chave privada para sua conta no site. Você também pode gastar seus fundos ao baixar um cliente bitcoin p2p popular e importar sua chave privada para a carteira do aplicativo. Tenha em mjente que quando você importa uma chave única para um cliente bitcoin p2p e gasta seus fundos, sua chave será agrupada com outras chavfes privadas no aplicativo de carteira. Quando você realizar uma transação o seu troco será enviado para outro endereço bitcoin dentro do seu aplicativo de carteira. Você deve então fazer backup da sua carteira em seu aplicativo e mantê-la em segurança, visto que seus bitcoins remanescentes agora serão armazenados nela. Um conselho do Satoshi Nakamoto é de que uma carteira nunca deve ser apagada.", + "singleshare": "COMPARTILHE", //TODO: please translate + "singlesecret": "SECRETA", //TODO: please translate + + // paper wallet html + "paperlabelhideart": "Ocultar figura", + "paperlabeladdressesperpage": "Endereços por página:", + "paperlabeladdressestogenerate": "Total de endereços:", + "papergenerate": "Gerar", + "paperprint": "Imprimir", + "paperlabelBIPpassphrase": "Senha:", + "paperlabelencrypt": "Criptografar em BIP38?", + + // bulk wallet html + "bulklabelstartindex": "Começar em:", + "bulklabelrowstogenerate": "Linhas a gerar:", + "bulklabelcompressed": "Endereços comprimidos?", + "bulkgenerate": "Gerar", + "bulkprint": "Imprimir", + "bulklabelcsv": "Valores separados por vírgula:", + "bulklabelformat": "Índice,Dirección,Clave privada (formato para importar)", + "bulklabelq1": "¿Por qué debo usar \"Direcciones en masa\" para aceptar Bitcoins en mi web?", + "bulka1": "La forma tradicional de aceptar bitcoins en tu web requiere tener instalado el cliente oficial de bitcoin (\"bitcoind\"). Sin embargo muchos servicios de hosting no permiten instalar dicho cliente. Además, ejecutar el cliente en tu servidor supone que las claves privadas están también en el servidor y podrían ser comprometidas en caso de intrusión. Al usar este mecanismo, puedes subir al servidor sólo las dirección de bitcoin y no las claves privadas. De esta forma no te tienes que preocupar de que alguien robe la cartera si se cuelan en el servidor.", + "bulklabelq2": "¿Cómo uso \"Direcciones en masa\" para aceptar bitcoins en mi web?", + "bulklabela2li1": "Usa el tab \"Direcciones en masa\" para generar por anticipado muchas direcciones (más de 10000). Copia y pega la lista de valores separados por comas (CSV) a un archivo de texto seguro (cifrado) en tu ordenador. Guarda una copia de seguridad en algún lugar seguro.", + "bulklabela2li2": "Importa las direcciones en la base de datos de tu servidor. No subas la cartera ni las claves públicas, o de lo contrario te lo pueden robar. Sube sólo las direcciones, ya que es lo que se va a mostrar a los clientes.", + "bulklabela2li3": "Ofrece una alternativa en el carro de la compra de tu web para que los clientes paguen con Bitcoin. Cuando el cliente elija pagar con Bitcoin, les muestras una de las direcciones de la base de datos como su \"dirección de pago\" y guardas esto junto con el pedido.", + "bulklabela2li4": "Ahora te hace falta recibir una notificación del pago. Busca en google \"notificación de pagos bitcoin\" (o \"bitcoin payment notification\" en inglés) y suscríbete a alguno de los servicios que aparezcan. Hay varios de ellos, que te pueden notificar vía Web services, API, SMS, email, etc. Una vez te llegue la notificación, lo cual puede ser automatizado, entonces ya puedes procesar el pedido. Para comprobar a mano si has recibido un pago, puedes usar Block Explorer: reemplaza DIRECCION a continuación por la dirección que estés comprobando. La transacción puede tardar entre 10 minutos y una hora en ser confirmada.
http://www.blockexplorer.com/address/DIRECCION

Puedes ver las transacciones sin confirmar en: http://blockchain.info/
Las transacciones sin confirmar suelen aparecer ahí en unos 30 segundos.", + "bulklabela2li5": "Las bitcoins que recibas se almacenarán de forma segura en la cadena de bloques. Usa la cartera original que generaste en el paso 1 para usarlas.", + + // brain wallet html + "brainlabelenterpassphrase": "Senha:", + "brainlabelshow": "Mostrar", + "brainprint": "Imprimir", + "brainlabelconfirm": "Confirmar senha:", + "brainview": "Ver", + "brainalgorithm": "Algoritmo: SHA256(senha)", + "brainlabelbitcoinaddress": "Enderçeo Bitcoin:", + "brainlabelprivatekey": "Chave privada (Wallet Import Format):", + + // vanity wallet html + "vanitylabelstep1": "Passo 1 - Gere seu par de chaves", + "vanitynewkeypair": "Gerar", + "vanitylabelstep1publickey": "Chave pública:", + "vanitylabelstep1pubnotes": "Copie e cole a linha acima no campo \"Your-Part-Public-Key\" presente no site do Vanity Pool.", + "vanitylabelstep1privatekey": "Chave privada:", + "vanitylabelstep1privnotes": "Copie e cole a chave privada acima em um arquivo de texto. Idealmente salve em um disco criptografado. Ela será necessária para recuperar a chave privada assim que a Vanity Pool encontrar o seu prefixo.", + "vanitylabelstep2calculateyourvanitywallet": "Passo 2 - Calcule sua carteira Vanity", + "vanitylabelenteryourpart": "Introduza a chave privada gerada no passo 1 acima, e que você já tem guardada:", + "vanitylabelenteryourpoolpart": "Introduza a chave privada obtida no Vanity Pool:", + "vanitylabelnote1": "[NOTA: essa caixa de texto pode aceitar uma chave pública ou privada]", + "vanitylabelnote2": "[NOTA: essa caixa de texto pode aceitar uma chave pública ou privada]", + "vanitylabelradioadd": "Adicionar", + "vanitylabelradiomultiply": "Multiplicar", + "vanitycalc": "Calcular carteira personalizada", + "vanitylabelbitcoinaddress": "Endereço Bitcoin Vanity:", + "vanitylabelnotesbitcoinaddress": "Esse é o seu novo endereço, que deveria conter o seu prefixo exigido.", + "vanitylabelpublickeyhex": "Chave pública Vanity (HEX):", + "vanitylabelnotespublickeyhex": "Essa é a sua chave pública em formato hexadecimal.", + "vanitylabelprivatekey": "Chave privada Vanity (WIF):", + "vanitylabelnotesprivatekey": "Essa é a chave privada para introduzir em sua carteira.", + + // detail wallet html + "detaillabelenterprivatekey": "Insira sua chave privada", + "detailkeyformats": "Formatos de chave: WIF, WIFC, HEX, B64, B6, MINI, BIP38", + "detailview": "Ver detalhes", + "detailprint": "Imprimir", + "detaillabelnote1": "Sua chave privada é um número secreto, único, que somente você tem acesso. Ela pode ser expressa em vários formatos. Abaixo mostramos o endereço e a chave pública que correspondem à sua chave privada, assim como a chave privada nos formatos mais conhecidos (WIF, hex, base64 y mini).", + "detaillabelnote2": "As versões do Bitcoin acima da v0.6+ armazenam as chaves públicas comprimidas. O cliente também suporta a importação/exportação de chaves privadas usando importprivkey/dumpprivkey. O formato das chaves privadas exportadas depende se o endereço foi gerado em uma carteira antiga ou nova.", + "detaillabelbitcoinaddress": "Endereço Bitcoin:", + "detaillabelbitcoinaddresscomp": "Endereço Bitcoin (comprimido):", + "detaillabelpublickey": "Chave pública (130 caracteres [0-9A-F]):", + "detaillabelpublickeycomp": "Chave pública (comprimida, 66 caracteres [0-9A-F]):", + "detaillabelprivwif": "Chave privada para importação (51 caracteres em base58, inicia com um", + "detaillabelprivwifcomp": "Chave privada para importação (comprimida, 52 caracteres em base58, inicia com", + "detailcompwifprefix": "'K' o 'L'", + "detaillabelprivhex": "Chave privada em formato hexadecimal (64 caracteres [0-9A-F]):", + "detaillabelprivb64": "Chave privada em base64 (44 caracteres):", + "detaillabelprivmini": "Chave privada en formato mini (22, 26 ou 30 caracteres, inicia com 'S'):", + "detaillabelpassphrase": "Senha BIP38", + "detaildecrypt": "Desencriptar BIP38", + "detaillabelq1": "Como eu faço uma carteira usando um dado? O que é B6?", + "detaila1": "Uma parte importante ao criar um carteira Bitcoin é se assegurar que os números aleatórios usados para criar a carteira sejam realmente aleatórios. A aleatoriedade física é melhor do que a pseudo-aleatoriedade gerada por computador. A maneira mais fácil de gerar aleatoriedade física é com dados. Para criar um chave privada Bitcoin você precisa de apenas um dado de seis lados, o qual você jogará 99 vezes. A cada jogada, anote o valor do dado. Ao anotar os valores, siga as seguintes regras: 1=1, 2=2, 3=3, 4=4, 5=5, 6=0. Ao fazer isso, você está anotando esse grande número aleatório, sua chave privada, no formato base 6 (B6). Você pode então digitar essa chave privada em base 6 contendo 99 caracteres no campo de texto acima e clicar em Ver Detalhes. Você então verá o endereço Bitcoin associado com sua chave privada. Você deve também anotar sua chave privada no formato WIF, já que ele é mais amplamente utilizado." + }, "zh-cn": { // javascript alerts or messages "testneteditionactivated": "TESTNET EDITION ACTIVATED", From c51c45474fda9f71c7740d80c8114ccc40a335d6 Mon Sep 17 00:00:00 2001 From: pointbiz Date: Sun, 5 Jul 2015 17:14:49 -0400 Subject: [PATCH 15/18] v2.9.9 improve tab usability --- .gitignore | 7 ++ CHANGELOG.txt | 5 ++ CHANGELOG.txt.asc | 21 +++-- bitaddress.org.html | 179 +++++++++++++++++++++++++++++--------- package.json | 5 +- src/bitaddress-ui.html | 16 ++-- src/main.css | 16 ++-- src/ninja.brainwallet.js | 4 + src/ninja.bulkwallet.js | 4 + src/ninja.detailwallet.js | 4 + src/ninja.misc.js | 98 +++++++++++++++------ src/ninja.paperwallet.js | 4 + src/ninja.singlewallet.js | 4 + src/ninja.splitwallet.js | 4 + src/ninja.translator.js | 19 +++- src/ninja.vanitywallet.js | 4 + 16 files changed, 298 insertions(+), 96 deletions(-) diff --git a/.gitignore b/.gitignore index 3c3629e..cb13ed4 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,8 @@ node_modules +/Backup +*.suo +/UpgradeLog.htm +/.bin +/packages +/packages.config +/.nuget \ No newline at end of file diff --git a/CHANGELOG.txt b/CHANGELOG.txt index b5f0bc1..432a8f0 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -28,6 +28,11 @@ END USER NOTES: Here is a signed list of file names and version history. +2015-07-05: status ACTIVE +bitaddress.org-v2.9.9-SHA256-90ddaf250f6302acb53945128e38225208af5a2fa7cfdf51519213e8b144a76d.html + - improve tab usability. You can now get to the Brain Wallet and Wallet Details tabs before + completing the entropy collection. + 2015-01-08: status ACTIVE bitaddress.org-v2.9.8-SHA256-2c5d16dbcde600147162172090d940fd9646981b7d751d9bddfc5ef383f89308.html - fix French translations. Escape quotes. diff --git a/CHANGELOG.txt.asc b/CHANGELOG.txt.asc index a3baf21..ac007f9 100644 --- a/CHANGELOG.txt.asc +++ b/CHANGELOG.txt.asc @@ -31,6 +31,11 @@ END USER NOTES: Here is a signed list of file names and version history. +2015-07-05: status ACTIVE +bitaddress.org-v2.9.9-SHA256-90ddaf250f6302acb53945128e38225208af5a2fa7cfdf51519213e8b144a76d.html + - improve tab usability. You can now get to the Brain Wallet and Wallet Details tabs before + completing the entropy collection. + 2015-01-08: status ACTIVE bitaddress.org-v2.9.8-SHA256-2c5d16dbcde600147162172090d940fd9646981b7d751d9bddfc5ef383f89308.html - fix French translations. Escape quotes. @@ -281,13 +286,13 @@ bitaddress.org-v0.2-SHA1-71216f5b84ef8831a805dbf66e9d8b83ad1dc5fb.html bitaddress.org-v0.1-SHA1-f40e706490f3eb2be56c31ddbf4c8646cd51ef40.html -Initial release -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2 +Version: GnuPG v1.4.13 (MingW32) -iQEcBAEBAgAGBQJUrwa4AAoJEIdJe5Fjl09aTTYIAN1iXh9fuU2bqJlhTXtGPeOs -sh71P+huEKJyCYfGhnZ0/dlRjnhHBgMnP3vS+N0S9CThlTHtytUoQAA1xX6crzMq -OxRf22AHuo23NpARjGvpghD0z6V9s7wrWTNs/JULvdtqPVt4XPf1+koruZSA5aMo -3tnhKQ0/V9ieVxqd+vf2kD6HJO9kDKIJtqFyqA1k7O4oL9yEOPKYR6pqtVM8bv2I -rEnNjQV5JI1bZL0WNfajnRO+EGF4IA7ReD1PMFrsuUMwiOMH+A/M3P06xQgXaB+G -Q+gUWjklP131sfmoOLRrxACvQyUifpcIbJ87PE2LWhaGjuLpHxGQIPFFUJB/WX0= -=WE3G +iQEcBAEBAgAGBQJVmZugAAoJEIdJe5Fjl09am+oIAL8vKSLNPrdj0QOG9k3swdcq +Ycgpx8wEfH1B2CL24WakG8k6SNdvHUH/nqP8zr1gQm6bp0gLCUDFV82uhDbJ5NLt +QXK1HK09gZylvLJcuGUPbyd+jFR+h6047mM27T1k98uf7AWd2vq6qLQjyEIhQg21 +FJCbKiZUokR7gjtSapd7VdyXDzD3lRRah6PrHkHooX8U3AKOQoJQUVe+pboxEaEP +bP/VtSggzOvQSSUzey48snfJM1RSUYn/zdNthNRnwzvSEM8bjO7nVyW3SRyr/BYo +GZ0s6PswndsX+Q+/qjTLgAu5CQdM/dIjjEikecpUT1qiUXfjgGVTg7Lm1LImx+8= +=Uixh -----END PGP SIGNATURE----- diff --git a/bitaddress.org.html b/bitaddress.org.html index cf22049..3a2e124 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -6474,24 +6474,28 @@ body, html { height: 99%; } .commands .row { padding: 0 0; text-align: left; } .commands .row.extra { padding-top: 6px; } .commands span { padding: 0 10px; } - .commands span.print { float: right; } + .commands span.print { float: right; position: relative; z-index: 20; } .commands span.right { float: right; } .expandable { padding: 10px 15px; text-align: left; cursor: pointer; } - #menu { visibility: hidden; font-size: 90%; } + #menu { visibility: visible; font-size: 90%; } #culturemenu { text-align: center; padding: 0 10px 5px 10px; margin-bottom: 3px; font-size: 90%; } #culturemenu span { padding: 3px; } #culturemenu .selected { text-decoration: none; color: #000000; } #braincommands .row .label { width: 200px; display: inline-block; } #braincommands .notes { font-size: 80%; display: block; padding: 5px 10px; } - #brainpassphrase { width: 280px; } - #brainpassphraseconfirm { width: 280px; } + #brainpassphrase { width: 280px; position: relative; z-index: 20; } + #brainpassphraseconfirm { width: 280px; position: relative; z-index: 20; } + #brainpassphraseshow { position: relative; z-index: 20; } + #brainview { position: relative; z-index: 20; } #brainwarning { } #detailcommands { padding: 10px 0; } #detailcommands span { padding: 0 10px; } - #detailprivkey { width: 250px; } - #detailprivkeypassphrase { width: 250px; } + #detailprivkey { width: 250px; position: relative; z-index: 20; } + #detailprivkeypassphrase { width: 250px; position: relative; z-index: 20; } + #detailview { position: relative; z-index: 20; } + #detaildecrypt { position: relative; z-index: 20; } .paper .commands { border: 2px solid #009900; } #bulkstartindex, #paperlimit, #paperlimitperpage { width: 35px; } #bulklimit { width: 45px; } @@ -6548,13 +6552,13 @@ body, html { height: 99%; }
@@ -6877,12 +6881,12 @@ body, html { height: 99%; } Donations: 1NiNja1bUmhSoTXozBRBEtR8LeF9TGbZBN GitHub Repository - (zip) + (zip)
- Version History (2.9.8) + Version History (2.9.9) 527B 5C82 B1F6 B2DB 72A0
ECBF 8749 7B91 6397 4F5A
@@ -7265,6 +7269,8 @@ ninja.seeder = { seedCount: 0, // counter lastInputTime: new Date().getTime(), seedPoints: [], + isStillSeeding: true, + seederDependentWallets: ["singlewallet", "paperwallet", "bulkwallet", "vanitywallet", "splitwallet"], // seed function exists to wait for mouse movement to add more entropy before generating an address seed: function (evt) { @@ -7272,11 +7278,8 @@ ninja.seeder = { var timeStamp = new Date().getTime(); // seeding is over now we generate and display the address if (ninja.seeder.seedCount == ninja.seeder.seedLimit) { - ninja.seeder.seedCount++; - ninja.wallets.singlewallet.open(); - document.getElementById("generate").style.display = "none"; - document.getElementById("menu").style.visibility = "visible"; - ninja.seeder.removePoints(); + ninja.seeder.seedCount++; + ninja.seeder.seedingOver(); } // seed mouse position X and Y when mouse movements are greater than 40ms apart. else if ((ninja.seeder.seedCount < ninja.seeder.seedLimit) && evt && (timeStamp - ninja.seeder.lastInputTime) > 40) { @@ -7294,11 +7297,8 @@ ninja.seeder = { if (!evt) var evt = window.event; // seeding is over now we generate and display the address if (ninja.seeder.seedCount == ninja.seeder.seedLimit) { - ninja.seeder.seedCount++; - ninja.wallets.singlewallet.open(); - document.getElementById("generate").style.display = "none"; - document.getElementById("menu").style.visibility = "visible"; - ninja.seeder.removePoints(); + ninja.seeder.seedCount++; + ninja.seeder.seedingOver(); } // seed key press character else if ((ninja.seeder.seedCount < ninja.seeder.seedLimit) && evt.which) { @@ -7317,16 +7317,20 @@ ninja.seeder = { showPool: function () { var poolHex; if (SecureRandom.poolCopyOnInit != null) { - poolHex = Crypto.util.bytesToHex(SecureRandom.poolCopyOnInit); - document.getElementById("seedpool").innerHTML = poolHex; - document.getElementById("seedpooldisplay").innerHTML = poolHex; + poolHex = Crypto.util.bytesToHex(SecureRandom.poolCopyOnInit); + document.getElementById("seedpool").innerHTML = poolHex; + document.getElementById("seedpooldisplay").innerHTML = poolHex; } else { - poolHex = Crypto.util.bytesToHex(SecureRandom.pool); - document.getElementById("seedpool").innerHTML = poolHex; - document.getElementById("seedpooldisplay").innerHTML = poolHex; + poolHex = Crypto.util.bytesToHex(SecureRandom.pool); + document.getElementById("seedpool").innerHTML = poolHex; + document.getElementById("seedpooldisplay").innerHTML = poolHex; + } + var percentSeeded = Math.round((ninja.seeder.seedCount / ninja.seeder.seedLimit) * 100) + "%"; + document.getElementById("mousemovelimit").innerHTML = percentSeeded; + for (var wIndex in ninja.seeder.seederDependentWallets) { + document.getElementById(ninja.seeder.seederDependentWallets[wIndex]).innerHTML = percentSeeded; } - document.getElementById("mousemovelimit").innerHTML = (ninja.seeder.seedLimit - ninja.seeder.seedCount); }, showPoint: function (x, y) { @@ -7343,6 +7347,21 @@ ninja.seeder = { document.body.removeChild(ninja.seeder.seedPoints[i]); } ninja.seeder.seedPoints = []; + }, + + seedingOver: function () { + ninja.seeder.isStillSeeding = false; + var walletType = ninja.tab.whichIsOpen(); + if (walletType == null) { + ninja.tab.select("singlewallet"); + } else { + ninja.tab.select(walletType) + } + document.getElementById("generate").style.display = "none"; + // update labels for dependent wallets + var culture = (ninja.getQueryString()["culture"] == null ? "en" : ninja.getQueryString()["culture"]); + ninja.translator.translate(culture); + ninja.seeder.removePoints(); } }; @@ -7439,16 +7458,45 @@ ninja.qrCode = { } }; -ninja.tabSwitch = function (walletTab) { - if (walletTab.className.indexOf("selected") == -1) { - // unselect all tabs - for (var wType in ninja.wallets) { - document.getElementById(wType).className = "tab"; - ninja.wallets[wType].close(); - } - walletTab.className += " selected"; - ninja.wallets[walletTab.getAttribute("id")].open(); - } +ninja.tab = { + select: function (walletTab) { + // detect type: normally an HtmlElement/object but when string then get the element + if (typeof walletTab === 'string') { + walletTab = document.getElementById(walletTab); + } + var walletType = walletTab.getAttribute("id"); + + if (walletTab.className.indexOf("selected") == -1) { + // unselect all tabs + for (var wType in ninja.wallets) { + document.getElementById(wType).className = "tab"; + ninja.wallets[wType].close(); + } + + // don't open tab if entropy still being collected + // exceptions: brainwallet detailwallet + if (ninja.seeder.isStillSeeding == false || walletType == "brainwallet" || walletType == "detailwallet") { + walletTab.className += " selected"; + document.getElementById("generate").style.display = "none"; + ninja.wallets[walletTab.getAttribute("id")].open(); + } + else if (ninja.seeder.isStillSeeding == true && !(walletType == "brainwallet" || walletType == "detailwallet")) { + document.getElementById("generate").style.display = "block"; + } + } + }, + + whichIsOpen: function () { + var isOpen; + for (var wType in ninja.wallets) { + isOpen = ninja.wallets[wType].isOpen(); + if (isOpen) { + return wType; + } + } + return null; + } + }; ninja.getQueryString = function () { @@ -7557,7 +7605,16 @@ ninja.translator = { "vanityalertinvalidinputpublickeysmatch": "Invalid input. The Public Key of both entries match. You must input two different keys.", "vanityalertinvalidinputcannotmultiple": "Invalid input. Cannot multiply two public keys. Select 'Add' to add two public keys to get a bitcoin address.", "vanityprivatekeyonlyavailable": "Only available when combining two private keys", - "vanityalertinvalidinputprivatekeysmatch": "Invalid input. The Private Key of both entries match. You must input two different keys." + "vanityalertinvalidinputprivatekeysmatch": "Invalid input. The Private Key of both entries match. You must input two different keys.", + + // header and menu html + "singlewallet": "Single Wallet", + "paperwallet": "Paper Wallet", + "bulkwallet": "Bulk Wallet", + "brainwallet": "Brain Wallet", + "vanitywallet": "Vanity Wallet", + "splitwallet": "Split Wallet", + "detailwallet": "Wallet Details" }, "es": { @@ -7590,6 +7647,7 @@ ninja.translator = { "bulkwallet": "Direcciones en masa", "brainwallet": "Cartera mental", "vanitywallet": "Cartera personalizada", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "Detalles de la cartera", // footer html @@ -7728,6 +7786,7 @@ ninja.translator = { "bulkwallet": "Porte-Monnaie En Vrac", "brainwallet": "Porte-Monnaie Cerveau", "vanitywallet": "Porte-Monnaie Vanité", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "Détails du Porte-Monnaie", // footer html @@ -7867,6 +7926,7 @@ ninja.translator = { "bulkwallet": "Πολλαπλά Πορτοφόλια", "brainwallet": "Μνημονικό Πορτοφόλι", "vanitywallet": "Πορτοφόλι Vanity", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "Λεπτομέρειες Πορτοφολιού", // footer html @@ -8005,6 +8065,7 @@ ninja.translator = { "bulkwallet": "Portafogli multipli", "brainwallet": "Brain Wallet", "vanitywallet": "Vanity Wallet", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "Dettagli portafoglio", // footer html @@ -8143,6 +8204,7 @@ ninja.translator = { "bulkwallet": "Massen-Wallet", "brainwallet": "Kopf-Wallet", "vanitywallet": "Personalisiertes Wallet", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "Walletdetails", // footer html @@ -8281,6 +8343,7 @@ ninja.translator = { "bulkwallet": "Hromadná peněženka", "brainwallet": "Myšlenková peněženka", "vanitywallet": "Peněženka Vanity", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "Detail peněženky", // footer html @@ -8564,6 +8627,7 @@ ninja.translator = { "bulkwallet": "大量ウォレット", "brainwallet": "暗記ウォレット", "vanitywallet": "カスタムウォレット", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "ウォレットの詳細", // footer html @@ -8854,6 +8918,7 @@ ninja.translator = { "bulkwallet": "Несколько кошельков", "brainwallet": "Умный кошелек", "vanitywallet": "Персональный кошелек", + "splitwallet": "Split Wallet", //TODO: please translate "detailwallet": "Детали кошелька", // footer html @@ -9006,6 +9071,10 @@ ninja.translator.showEnglishJson = function () {