| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| cryptocalc_setup.exe | 2025-10-20 | 114.6 MB | |
| README.md | 2025-10-20 | 38.4 kB | |
| Totals: 2 Items | 114.6 MB | 1 |
CryptoCalc 0.4.7
1. Purpose
CryptoCalc is a Cryptocurrency wallet generator provided as a standalone non custodial desktop application.
These wallets can be Non Deterministic (Simple Wallet) or Hierarchical Deterministic (BIP32).
Even though there is already similar tools online, the purpose is to provide these features
locally on your computer (non custodial) in order to reduce the risk of your Private Key / WIF
or Secret phrase informations being stolen.
NB: Since its first release CryptoCalc has been downloaded 12426 times on npm.
You can support this project by reporting bugs (or asking for enhancements) with Issues, provide localization files (see 5.1.19) or even by donating to Aladas, a non profit organization whose primary goal is to protect wild bees.
-
Features
2.1. Support of HD / Bip32 (multiple wallets)2.2. Selection of
Entropy size(between 128 and 256 bits)2.3. Dynamic conversion between
EntropyandSecret phrase2.4.
File/Save/Open..commands
These commands allow edition of Wallet informations after saving (these informations are saved as a.wits, aJSONformat file)2.5. Salted Entropy source
Entropyvalue is indeed computed by combining theSalt(currenly a dynamically generatedUUID) with the value provided by theEntropy source
-SHA256hash function is applied to this:Salt + Entropy source2.6. Security Layers
-Bip38support (dirst method 'Non-EC')2.7. Multiple Entropy sources
100 d6 dices,Mouse moves,ImagesandFortune cookies2.8. QR code generation
For Wallet address, Private Key (also WIF if applicable) and Mnemonics. There is also anxtrasfolder with the SVG versions of these QR codes as well as more experimental QR code formats (rectangular Micro QR code and Ultracode which has colored modules)2.9. Customizable options
Options includesBlockchain,Wallet mode(eg: Simple / HD / SWORD) andEntropy size2.10. List of
Word indexes
The crucial data in theSecret phraseis indeed the list ofWord indexes(indexes in theBIP39wordlist ), is explicitly displayed so if the language is changed these word indexes are the same.2.11. Internet connection status
Because of the Cold wallet / Non custodial purpose of Cryptocalc, it is not recommended to generate cryptocurrency wallets while being online. The status is displayed on the right of the main horizontal toolbar, it's a red "connected" icon when online and a green "disconnected" icon when offline (the highly recommended way to use Cryptocalc).2.12. Localization
Translations of GUI labels in the user's language (only English and French files provided currently but the localization feature allows translations in other languages as well, they are inJSONformat eg.gui-msg-en.json).2.13. Dynamic links
- Address wallet in the appropriateBlockchain Explorer(e.g. blockchain.com)
- Informations inCoinmarketcap.comfor the wallet's cryptocurrency
- 3D representation of theSecret phrase(see an example here: Cryptoshape)2.14. Standalone installer
It is published on SourceForge) once downloaded the installer will install Cryptocalc as a.exelocal standalone desktop application (see 3.1.1) with all its prerequisites. This allows users to install Cryptocalc without installingNodeJS,gitandnpmand using command line instructions (described in 3.2)2.15. Tested on
WindowsandLinux
- ForWindows: tested onWindows 10
- ForLinux: tested on Linux Mint 22.2, tested indeed on a virtual machine within VirtualBox)2.16. Cryptocurrencies: 23 supported Cryptocurrencies
BTC(Bitcoin),ETH(Ethereum),XRP(Ripple),BNB(Binance Smart Chain),SOL(Solana),DOGE(Dogecoin),TRX(TRON),ADA(Cardano),XLM(Stellar),SUI(Sui),BCH(Bitcoin Cash),AVAX(Avalanche),TON(Toncoin),LTC(Litecoin),ETC(Ethereum Classic),POL(Polygon),VET(VeChain),BSV(Bitcoin SV),DASH(Dash),RVN(Ravencoin),ZEN(Horizen),LUNA(Terra) andFIRO(Firo).
- A list of the Top 50 market cap cryptocurrencies is provided (_doc/top_50_marketcap_coins.txt), the fist column a indicates (with*) if it is supported in CryptoCalc.- Note 1:
BNBsupport is on Binance Smart Chain (in this blockchainBNBis aBEP-20token, see 6.3.4) - Note 2: it's
LUNA 2.O(on Terra blockchain) notLUNA Classic - Note 3:
SUIsupport was validated with 'Suiet' (Sui wallet), a Chrome extension
2.17. Languages: 18 supported languages
- Officially supported inBip39
English, French, Spanish, Italian, Czech, Portuguese, Simplified Chinese, Traditional Chinese, Japanese and Korean.
Notice that English is the only supported langage by electronic cold wallets (eg. Ledger or Trezor).- Non official languages
Deutsch, Russian, Esperanto, Latin, Greek, Hindi, Gujarati and Bengali.
Notice that English has around 1.5 billion speakers, Mandarin has around 1.1 billion speakers while the India triad (Hindi, Bengali and Gujarati) has around 1 billion speakers.
2.18. Developed with
Javascriptand ElectronJS
CryptoCalc is written inJavascript(both client side and server side) and is built on top of ElectronJS.
ElectronJS is used in many modern and popular Desktop applications (e.g. Visual Studio Code, Discord, WhatsApp, Notion, Obsidian, etc..). - Note 1:
-
Setup
- 3.1. Fast and Furious (advised for end users)
- 3.1.1. Download CryptoCalc installer
from SourceForge (NB: the installer was generated with electron packager
and Inno Setup.
Notice that the installer is not signed so Windows Defender Smartscreen will require that you validate yourself the application source. If you don't trust the installer (because it is not signed as this is a 350$ cost per year), you can either:- 3.1.1.a. Rebuild yourself the Installer by downloading
Inno Setupand following the Howto provided in the_inno_setupsubfolder (Howto build cryptocalc_setup.txt) - 3.1.1.b. Else you can proceed to Wizard's Lair setup (see 3.2)
- 3.1.1.a. Rebuild yourself the Installer by downloading
- 3.1.2. Default setup folder is
C:\Users\$CURRENT_USER\AppData\Local\Programs\Cryptocalc - 3.1.3. Default subfolder where Wallet informations are saved:
$DEFAULT_SETUP_FOLDER\resources\app\_output
- 3.2. Wizard's Lair (more advised for custom local setup and/or geeks or software developers)
- 3.2.a. On
WindowsOperating system- Prerequisites
- Open a command line interpreter
- Use Windows Menu Start then input
cmd - Change current disk to where you plan to install (eg. if its
Dthen typeD:) - Change current directory to where you to install (eg.
md toolsthencd tools)
- Use Windows Menu Start then input
- Import CryptoCalc from github
- Open the GitHub CryptoCalc repository
- Use the [<> Code v] green button
- Copy the displayed .git URL
- In the command line interpreter, type
git clonefollowed by the.gitURL:- e.g.
git clone https://github.com/ALADAS-org/cryptocalc.git
- e.g.
- Type
cd cryptocalc - Type
npm install - You can launch CryptoCalc with a double clik on
_runW.bat(Wmeans Windows)
- 3.2.b. On
LinuxOperating system- Linux distribution
- CryptoCalc was tested on Linux Mint 22.2
but installed as a virtual machine within VirtualBox.
Notice that the Cinnamon desktop was chosed.
- CryptoCalc was tested on Linux Mint 22.2
but installed as a virtual machine within VirtualBox.
- Open a command shell
- This will open a window where you can input commands (eg. (eg.
sudo apt-get install nodejs)whoami`) - Create a subdirectory to use it as a workspace, I suggest that you name it
Dev:mkdir Dev
- Change current directory to this new subdirectory:
- `cd Dev
- Create a subdirectory for iporting Github projects, I suggest that you name it
gihub:mkdir gihub
- Change current directory to this new subdirectory:
- `cd github
- This will open a window where you can input commands (eg. (eg.
- Prerequisites
- Install NodeJS:
sudo apt-get install nodejs
- Install Git
sudo apt update; apt install git
- Install
xdg-utils(X Desktop Group)sudo apt-get install xdg-utils
- Install NodeJS:
- Import CryptoCalc from Github
cd; cd Dev/githubgit clone https://github.com/ALADAS-org/Cryptocalc.gitcd Cryptocalcnpm install- You can launch CryptoCalc with either:
npm start./_runX.shXmeans Linux, you may need to give Execution rights by usingchmod +x _runX.sh
- Linux distribution
-
Release notes
0.4.7: This version- Bug Fix: regression in
Bip38feature (since implementation of 'Progress Bar' as a feedback for encrypt/decrypt time)
- Bug Fix: regression in
0.4.6- Update of Cryptocalc installer on SourceForge
0.4.5- Updates of images:
- Update of screnshots
- Logo images mirrored to be like a
Zbecause it is the new version. This new version of the logo is also published on the SourceForge installer
- Updates of images:
0.4.4- Enhancements in
Bip38feature:- Default difficulty set to 16384 (the recommended default)
- A Progress bar now shows a better feedback on the time needed to encrypt / decrypt
- Enhancements in
0.4.0- Minor Version number changed to
4to reflect the fact thatBip38support is a taller "step forward" - Documentation Fixes: in this document (
README.md)
- Minor Version number changed to
0.3.65- New Feature:
- Support of
BIP38(passphrase encrypted private key, see 6.3.5) for an additional security layer by Encrypting the Private Key.
NB: Please notice that only the first encryption method ('NON-EC') is supported (see also 5.2.2).
- Support of
- :Bug Fixes
Savecommand (in Main menu and Main Toolbar) is disabled while it should be enabled. This was identified in some use cases withFile/Newfollowed byFile/Open.
- Documentation Fixes:
- Update, fixes and some rewrites of this document (
README.md).
- Update, fixes and some rewrites of this document (
- Refactoring:
- In
html_utils.js:Nodereplaced byElementin all functions because it is a better terminology for HTML entities (eg.INPUT,'TEXTAREA', etc...). - Move of Model related code to
www/js/modeland View related code towww/js/view(cf.MVCDesign Pattern) also asMVCmay be recursive,wallet_info.js(which is a is Model) bas been moved towww/js/view/model
- In
- Usability:
password(Bip32 / HD Wallet mode) replaced byPassphrasebecause it is a better terminology- In
wallet_info.txt:WIFalways provided- Order of "fields" is now predefined (see
js/model/wallet_inf_tmpl.js)
- Changed Label for
Help/About...dialog to a more consistent text ("A cryptocurrency wallet generator")
- New Feature:
0.3.63- Fixed bug found on
Linux: when saving, the [Show] button does nothing - Fixed a Bug found when testing the [Show] button because the output folder is showed not the latest wallet subfolder
- Note that on
Linux, you must also now also installxdg-utils(see 3.2.b)
- Fixed bug found on
0.3.62: GUI Updates- A Label Online/Offline is now at the left of the Internet connection_status icon.
- Seed phrase renamed to Secret phrase because it seems it is the more user friendly terminology (among Mnemonics, Seed phrase, Secret, Passphrase and Secret Recovery Passphrase).
- Added a link (see 5.1.17) to the whitepaper of the 3D representation of a Secret phrase
0.3.600.3.52- Fixes in this README
- First tests on
Linux Mint 22.2: problem with icon filenames - Fix in icon filenames for
Linuxcompatibility
0.3.50- Added a dynamic link button [3D] to display a 3D representation of the
Secret phrase(this is a web page which is indeed a copy of a companion project (CryptoShape) - Added a link for Donations
- Rewrite/Updates in this README
- Replaced
PasswordwithPassphrasein HD Wallet mode
- Added a dynamic link button [3D] to display a 3D representation of the
0.3.49- Added support of Bengali for the Secret phrase
- Fixes in the documentation (this
README.md)
0.3.48- Improvements in
Mouse movesEntropy source :- In manual mode: more entropy data in Entropy source by 'mixing' (
XORoperation) each mouse point (provided by the user) with a random byte (generated withCrypto.getRandomValues()) - Consistent graphics between manual ([New points...]) and automatic ([Generate]) mode
- In manual mode: more entropy data in Entropy source by 'mixing' (
- Improvements in
0.3.47- Fixed Gujarati wordlist to remove words containing ':', '-', or '/'
0.3.46- Added support of Gujarati for the Secret phrase
- Default Entropy source is now
D6 dices
0.3.45- Added informations for
Mouse movesEntropy source:- Renamed [New Entropy] to [New points...]
- Explanations for manual (with [New points...]) vs automatic generation (with [Generate])
- Updated screenshots from
0.3.15to0.3.45
- Added informations for
0.3.44- New Entropy source:
Mouse moves
- New Entropy source:
0.3.43- New Entropy source:
D6 dices(e.g. 100 rolls for 256 bits of Entropy)
- New Entropy source:
-
User's Guide
You can launch CryptoCalc either by first installing it with the CryptoCalc Standalone installer (see 3.1) or by using theWizard's Lairpath (see 3.2): installNodeJs,gitthen install the CryptoCalc project and launch it with a double click on_runW.bat(Wmeans Windows) or_runX.sh(Xmeans Linux).- 5.1. Features
- 5.1.1. Cryptocalc Standalone installer
- 5.1.1.a: Downloadl CryptoCalc installer
- 5.1.1.b. Default subfolder where Wallet informations are saved:
$DEFAULT_SETUP_FOLDER\resources\app\_output: Notice that this folder won't be automatically deleted if you uninstall CryptoCalc
- 5.1.2. Generate Entropy from Entropy Source
Use [Generate] button to draw a random image (cf. 5.1.3) which then will be used as the Entropy (with the Salt) to generate a new Secret phrase (between 12 and 24 words) which is derived to get the Private Key from which the Wallet Address is obtained (NB: Private Key and Wallet Address are in the Wallet Tab). There is also a conversion to the Shortened secret phrase: as only the 4 first characters of each mnemonic are meaningful (cf.BIP39specification) then in the Shortened secret phrase each mnemonic is represented only by its 4 first characters (with the first character in Uppercase as a mean to separate mnemonics).
NB: As some mnemonics are only 3 characters long, the abbreviation will of course only be whole mnemonic.
Here is an example below:
Secret phrase
rent expand super sea summer pull catalog mobile proud solve oven goose
Shortened secret phrase
RentExpaSupeSeaSummPullCataMobiProuSolvOvenGoos
NB: Please notice that the Shortened Secret phrase is not meant to be used to import a wallet in a Wallet Manager, it's only a trick to compress the Secret phrase and make it easier to store on a device with limited memory like aNTAG213 NFC(see 5.2.3). - 5.1.3. Entropy Source :
D6 Dices,Mouse moves,ImageorFortunesD6 Dices: default source, the number of rolls depends on Entropy size (e.g. 100 rolls for 256 bits)Mouse moves: entropy bytes are generated when the user moves the mouse pointeImages- You can Drag'n'Drop images (
png,jpgorsvg) from you local folders. - Image samples are provided in
www/imgfolder. - When using [Generate], Cryptocurrency logos are drawn from
www/img/CryptoCurrency
- You can Drag'n'Drop images (
Fortunes:- Fortune cookies are drawn from a compilation of 12803 quotes
- 5.1.4. Choose Wallet_Mode: Simple Wallet, HD Wallet or SWORD Wallet (choice is in the
Wallettab page)- 5.1.4.a. Simple Wallet
This is the default Wallet Mode. In this mode, each wallet is separated. (no need to understand the principles of the HD Wallet Wallet Tree and the purpose of theDerivation Pathused by HD Wallets). So a it's a good fit to Give it a Try and start creating your Cryptocurrency Wallets with minimum knowledge.
On the other hand it's less secure than HD Wallets (especially if you use low security entropy text like you firstname, city/birth year etc.... Indeed its will be vulnerable to dictionary attacks )
and it becomes clumsy if you need to split your assets between many wallets. - 5.1.4.b. HD Wallet
This Wallet Mode allows to create / manage a whole hierarchy of Wallets (HD is the acronym for Hierarchical Deterministic) in the same BIP32 tree.Please notice that the
Derivation Pathis nowHardenedby default and mandatory (since0.3.18). This is for Security purpose (see 5.2.3) TheBIP32HD wallet tree_ is fully determined by the Entropy (or Secret phrase which is equivalent) and an optional Password. The Entropy may be represented by a more human friendly representation: the Mnemonics Sequence which may also be called a Secret phrase, Mnemonics, Seed phrase, Secret or even SRP (Secret Recovery Passphrase).
How to Generate a new wallet with a given Entropy:
Paste a new Entropy (or Secret phrase) in theEntropywallet tab. Notice that this will hide the Entropy Source and Salt fields (meaningless in this situation).
You can then change either the Account or Address Index fields (the maximum number of digits is 9 so you can input a decimal value between 0 and 999999999, 100.000 possible values for each field) in the Wallet tab page. This will show a [Refresh] button to recompute the wallet once you have finished. Pushing the [Refresh] button (or hitting either [Return] or [Enter] keys while the cursor is in either Account or Address Index field) will recompute the wallet address (and Private key or WIF) accordingly. - 5.1.4.c. SWORD Wallet
SWORDis an acronym which meansSimple Wallet Over Randomized Deterministic, it's an hybrid betweenSimple WalletandHD Walletbecause it hides theDerivation Pathlogic (which containsAccountandAddress Index), thus you don't need to care or understand the principles of Hierarchical Deterministic wallets, but it allows to generate all the cryptocurrencies provided byHD Wallet. - 5.1.4.d. Please notice that for
CardanoHD wallets, theAccountandAddress Indexparameters are not taken into account by the Wallet Managers which I have tested (namelyGuardaandYoroi) because they ask for theMnemonics(Secret phrasein CryptoCalc). This is why in CryptoCalc, these parameters are hard-coded to Zero (forCardanoHD wallets only). - 5.1.4.e. You can check generated HD Wallets with Ian Coleman BIP39 homepage
It's URL is provided as an item in theHelp menu(Help/Resources/Ian Coleman BIP39)
- 5.1.4.a. Simple Wallet
- 5.1.5. 'BIP38' Encryption of the Private Key
BIP38(passphrase encrypted private key, see 6.3.5) is now supported for an additional security layer by Encrypting the Private Key.- A new Tool (in Main menu :
Tool/Bip38 Encrypt/Decrypt) is provided to ease the retrieval of the Private Key from the Bip38 Encrypted PK (or conversely the encryption of the Private Key to the Bip38 Encrypted PK). - When
Bip38 passphraseis provided, aBip38 Encrypted PKis generated when Saving the current wallet (see 5.1.11) A new QR code is generated (Bip38 Encrypted PK) as both aPNGfile and anSVGfile (inxtrassubfolder of the generated wallet folder under_output).
Note 1: Notice that only the first method ('NON-EC') is supported.
Note 2: the Bip38 passphrase is in some way similar to the PIN Code of a Credit card.
- 5.1.6. Bip32 Passphrase feature (HD Wallet only)
With a Bip32 passphrase a completely different HD hierarchy is generated. You can either input or generate (with the [Generate] button represented by aRefreshicon, like in the main toolbar). Important Notice: Once a password is provided, you must use the [Apply] button to recompute the HD hierarchy, this is the reason why Save is disabled (in the main toolbar and in the 'File' menu) until you click on the [Apply] button. - 5.1.7. Salted Entropy
Entropy is generated from Entropy Source and adding a Salt (a generatedUUIDcurrently, this is 128 bits of Entropy) to ensure that the Entropy will be different at each Generation even if the Entropy Source value is the same (e.g. reusing the same image or fortune cookie). Thus the Entropy value will be unique at each press of [Generate] button. - 5.1.8. Choose Entropy Size
The Entropy Size is between 128 to 256 bits (32 to 64 hexadecimal digits). This is equivalent to the size of the Secret phrase (between 12 and 24 words). Changing Entropy Size impacts the size of the Secret phrase and conversely. - 5.1.9. Wallet Address
Wallet Address is displayed in theWallettab page. There's also an [Explorer...] button which allows to check the generated address in the appropriate Blockchain Explorer. - 5.1.10. Internet Connection Status
This is to secure Offline wallet creation (non custodial). An icon at the right of the Main Toolbar shows if the Internet is connected (Wifi ONred icon) or not connected (Wifi OFFgreen icon) - 5.1.11.
SaveWallet Informations
WithFile/Save(or the Save icon in the main toolbar), you can save the Wallet Informations in a timestamped subfolder (eg.2024_10_07_21h-4m-4s-3_BTC_EN) under_outputfolder. This subfolder containswallet_info.txtand awallet.jsonwith the informations displayed in Entropy and Wallet tab pages.- 5.1.11.a. When you save the current generated wallet a Popup dialog confirms the saving and allows to show where it is saved.
- 5.1.11.b. The Wallet Informations subfolder contains QR Codes (
pngimages) forAddress,Private Key,Secret phrase,EntropyandWIF(if applicable).
Notice that there is axtrassubfolder where these QR codes are provided in thesvgformat. There is also a Rectangular Micro QR code (rMQR) of theEntropy(Rectangular Micro QR Code,R15x59orR15x77version depending on
Entropy size) and an experimentalUltracodecolor QR code of theEntropy. - 5.1.11.c: How to retrieve a Wallet Address from the Rectangular Micro QR Code
- 5.1.11.c.I: Notice that most Android QR Code reader apps will
not be compatible with Rectangular Micro QR Code but it works with
QRQR
an Android QR Code reader published by Arara on the Google Play Store. - 5.1.11.c.II: Then convert the Entropy to the matching Secret phrase
by doing a copy/paste in the
Entropyfield of CryptoCalc.
Caution: Take care to set CryptoCalc with the sameEntropy SizeandDerivation path(if applicable, don't forget to use the [Refresh] button) than those used when the wallet was created (these informations are provided either in thewallet_info.txtor inwallet_info.wits).
- 5.1.11.c.I: Notice that most Android QR Code reader apps will
not be compatible with Rectangular Micro QR Code but it works with
- 5.1.12.
OpenWallet Informations of a previously saved wallet- 5.1.12.a. Wallet informations are saved both as a
.txtbut also as a.witsfile (JSONformat). - 5.1.12.b. A
.witsfile can be opened either withFile.Open...menu item or 'Open...' icon in the toolbar. It can be also be opened inCryptocalc.exeby double clicking on the.wits(File extension to Application feature): this will launchlcCryptocalc.exe(cf. 3.1 for installingCryptocalc.exewith the CryptoCalc Standalone installer) / - 5.1.12.c. Once opened, a wallet can't be saved on itself (it is to prevent accidental overwrite of the original wallet),
but you can use
File.Save As...which will save the wallet with a different timestamp than the original one. - 5.1.12.d. Notice that for a HD Wallet you can change the
Accountand/or theAddress Index(dont forget to push the [Refresh] button). Now you can save the new wallet withFile.Save As...and if you didn't change theEntropythen this new wallet will belong to the sameBip32 HD Wallet Tree(see A.2) than the original one.
- 5.1.12.a. Wallet informations are saved both as a
- 5.1.13. Import a wallet in Guarda
An item in the menu (Help / Resources / Guarda) eases importing a wallet in a Wallet Manager application- Notes on
Guarda- It is a Non custodial wallet because the Private Keys are stored on you local computer so keep in mind that you are responsible to take care and make basckups by yourself (eg. if you reinstall the Operating system without having made a security backup then your Private Keys and then your assets will be lost).
- It is a Hot wallet because it is is also a web service which allows to send funds to another wallet and also to change a cryptocurrency in another (eg ETH to SOL).
Guardawas chosen mainly to validate that a generated wallet by CryptoCalc is accepted and thus validated.
- Notes on
- 5.1.14. Select Secret phrase Language
You can select the Wordlist Language (eg. English, French, Deutsh, etc...). Please notice that only English is accepted for most Wallet Manager applications. Changing Wordlist Language is indeed a mean to add an "obfuscation/information hiding" step
in order to make it harder to steal your Secret Recovery Passphrase because it should be translated to English to be used with a Wallet Manager.
NB: it is important to highlight that indeed the crucial information is the list of Word Indexes. Thats's why translation between languages is easy in CryptoCalc because the reference is the Word Indexes (see 6.1.14) not the words. - 5.1.15. Display of Word Indexes
The Word Indexes are between 0 and 2047, it is the index of each of the Secret phrase words in theBIP39wordlist (see also 6.1.1). You can choose to display these indexes in Decimal or Binary (in Binary you can check that the computed Checksum bits are added at the end of the converted Entropy to determine the index of the last word). - 5.1.16. Display of the BIP32 Derivation Path
The BIP32 Derivation Path is displayed in the Wallet tab page. You can edit the Account or Address Index fields to generate new wallets which belong to the sameBIP32hierarchy that is determined by the Secret phrase (also called the Secret Recovery Passphrase). - 5.1.17. Dynamic Links
- Address wallet in the appropriate
Blockchain Explorer(e.g. blockchain.com) - Informations in
Coinmarketcap.comfor the wallet's cryptocurrency - 3D representation of the
Secret phrase(Cryptoshape) The whitepaper The description of this 3D representation is in this whitepaper
- Address wallet in the appropriate
- 5.1.18. Change/Reset of Options (
Tools/Options)
Currently it allows to set default values forDefault Blockchain,Wallet ModeandEntropy Size. These values are defined inwww/config/options.jsonfile.
It is also possible to reset Options to Default Options (defined inwww/config/defaults/options.json) - 5.1.19. Localization
Localization (l10n) feature is the translation of GUI Labels to adapt to the user's language, it' called the locale (eg.en). A locale name can be composed of a base language, country (territory) of use and optionnally a codeset (eg.de_CH.UTF-8).
The locale is provided as part of your machine's environment. CryptoCalc only uses the 2 letter language part (eg.en). Localization is enabled by a JSon file in thewww/js/L10nfolder (eg.gui-msg-en.json).
Notice that currently onlyenandfrare provided.
- 5.1.1. Cryptocalc Standalone installer
- 5.2. Security Issues
- Notice that you should never disclose the Private Key.
NB: In the case of Bip38 Encryption, you may share it but never neither the Private Key nor the Bip38 Passphrase.
- Notice that you should never disclose the Private Key.
- 5.3. Use cases
- 5.3.1. Generate a new Wallet and import it in a Wallet manager
With a Wallet Manager likeGuardayou can import a wallet generated by CryptoCalc:- Choose Wallet Mode: Simple Wallet, HD Wallet or SWORD
- Choose a coin:
BTC,ETH,XRP,ADA,DOGE,LTC,SOL,AVX,TRON,BCH,DASH,Firo - Enter Private Key (NB: or WIF for
BTCwallets)
- 5.3.2.
BIP38Encryption of the Private Key The first method (NON-EC) ofBIP38adds a security layer by encrypting the Private Key with a Passphrase. The Bip38 Encrypted Private Key allows to subcontract the printing of a Paper Wallet with premium features (eg. Watermark, Embossing, Hologram, Custom Credit card, etc..) without disclosing the Private Key to the subcontractor (and providing the Passphrase to your customer via a different channel than the delivery of the Printed paper wallet). - 5.5.3. Store Shortened Secret phrase in a NFC SmartRing
The entry level SmartRings (price range: 7..15$) contains aNTAG213 NFCwith 144 bytes useable capacity. This is enough to store the Shortened Secret phrase, with a 24 words Shortened Secret phrase the maximum required capacity is 96 bytes/characters (24*4, cf. 5.1.2) or even less (as some mnemonics have only three characters). - 5.2.4. Store Master password
This is similar to the previous case, but the Shortened Secret phrase can be used as a Master password for a Password Manager or for tools like PGP Tool which provides encryption/decryption of your documents.
- 5.3.1. Generate a new Wallet and import it in a Wallet manager
- 5.1. Features
-
Appendix
-
6.1.
BIP39: a Dictionary of 2048 words
BIP39(BIPis the acronym for Bitcoin Improvement Proposal) is a specification regarding:- 6.1.1. A Dictionary of 2048 mnemonics
The Dictionary (also called a wordlist) contains 2048 English mnemonics (words) each with a their unique 4 starting characters (or 3 if the mnemonic is 3 characters long). This dictionary exists also in other languages (e.g. French, Deutsh, Spanish, Italian_, Portuguese, etc...) but Wallet Managers (e.g. Guarda, Metamask, Atomic Wallet, etc...) and Hardware Wallets (eg. Ledger, Trezor, Tangem, etc...) will only accept English words. - 6.1.2. Conversion of Secret phrase from and to Entropy
The Secret phrase is obtained by drawing words (also called mnemonics) from the dictionary. Drawing a word is indeed choosing an index between 0 and 2047. This index can be represented by 11 bits in Binary (because 2^11 = 2048).- Conversion from Entropy to Secret phrase The Entropy is represented in Binary and divided in 11 bits segements but the entropy is a multiple of 8 bits (128, 160, 192, 224, 256) there are "missing bits" for choosing the last word. These "missing bits" are provided by computing the Entropy Checksum. e.g. For an Entropy Size of 128 bits (converted to a 12 words Secret phrase), 132 bits are needed (11 * 12), so the Entropy Checksum provides the missing 4 bits.
- Conversion from Secret phrase to Entropy For each word its index is retrieved from the Dictionary, its value is represented as a 11 bits segment and a number of bits corresponding to tne Entropy Checksum are removed at the end of the concatenation of 11 bits segments. e.g. For a Secret phrase of 12 words (converted to a 128 bits Entropy), 132 bits are obtained from the Word Indexes (11 * 12), and because the Entropy Checksum is 4 bits long (in the case of a 128 bits Entropy) then the 4 bits at the end are removed.
- Reference
BIP39 — Mnemonic Generation with detailed explanation
- 6.1.1. A Dictionary of 2048 mnemonics
-
6.2.
BIP32: Hierarchic Deterministic wallets
BIP32specifies how to generate wallets with are all derived from the same Entropy or Secret phrase (also called the Secret Recovery Passphrase). A Secret phrase of only 12 words is enough is most Wallet Managers but it is much more secure to use a 24 words Secret phrase if possible (e.g. Ledger hardware wallet manager).
Example: meaning of each part form/44'/60'/0'/0/0'(a Hardened Derivation Path):- Start at the master key (m)
- Follow the
BIP44specification (44') - Derive the key for Ethereum (for which Coin type is 60) (60')
- Access the first account (0')
- Choose the external chain, used for public addresses (0)
- And finally, generate the first address in this sequence (0')
-
6.3. References
-
