From 70d00dd30748a8b0c8137fc2b770fd1619c58f48 Mon Sep 17 00:00:00 2001 From: odudex Date: Mon, 16 Oct 2023 15:04:45 -0300 Subject: [PATCH] docs update on encrypted mnemonics and development --- docs/development.en.md | 15 +++++++++++++++ .../encrypted-mnemonics.en.md} | 7 ++++--- mkdocs.yml | 3 ++- 3 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 docs/development.en.md rename docs/{encrypted-qr-codes.en.md => getting-started/encrypted-mnemonics.en.md} (72%) diff --git a/docs/development.en.md b/docs/development.en.md new file mode 100644 index 000000000..6e3f32723 --- /dev/null +++ b/docs/development.en.md @@ -0,0 +1,15 @@ +# Navigation + +Mind map representation of menus under development. + +Click on the circle on the right side of each node to expand and explore the mind map. + +Activate full screen for better visualization on top-right menu. + +## Login Menu + + + +## Home Menu (Loaded Wallet) + + diff --git a/docs/encrypted-qr-codes.en.md b/docs/getting-started/encrypted-mnemonics.en.md similarity index 72% rename from docs/encrypted-qr-codes.en.md rename to docs/getting-started/encrypted-mnemonics.en.md index 1ad65ede4..a6ff68f8c 100644 --- a/docs/encrypted-qr-codes.en.md +++ b/docs/getting-started/encrypted-mnemonics.en.md @@ -1,8 +1,8 @@ ## Introduction -There are many possible security layers one could add to protect a wallet’s private key, adding a passphrase to the mnemonic is the most common. To encrypt a mnemonic would have similar use case as the passphrase, but, depending on how it is done, the user experience could be different. The main difference from passphrases to Krux’s encrypted mnemonic implementation is that when users type the wrong key, instead of loading a different wallet, encrypted mnemonic QR codes will return an error. This is not considered an advantage, but a difference, that may be desired or not. The implementation also has the convenience of storing a mnemonic ID on the QR code. Mnemonic encryption, with its own key, can be used together with passphrases as an extra security layer. +There are many possible security layers one could add to protect a wallet’s private key, adding a passphrase to the mnemonic is the most common. To encrypt a mnemonic would have similar use case as the passphrase, but, depending on how it is done, the user experience could be different. The main difference from passphrases to Krux’s encrypted mnemonic implementation is that when users type the wrong key, instead of loading a different wallet, encrypted mnemonics will return an error. This is not considered an advantage, but a difference, that may be desired or not. The implementation also has the convenience of storing a mnemonic ID together with stored or QR code encrypted mnemonics. Mnemonic encryption, with its own key, can be used together with passphrases as an extra security layer. -## QR Data and Parsing +## Encrypted QR Codes Data and Parsing In search of efficiency and smaller QR codes, all data is converted to bytes and organized like a Bitcoin transaction, with variable and fixed length fields. The following data is present on the QR code: | ID length (1) | ID (2) | Version (3) | Key Derivations (4) | IV (5) | Encrypted Mnemonic (6) | Validation Block (7) | @@ -21,4 +21,5 @@ In search of efficiency and smaller QR codes, all data is converted to bytes and * **(6)** Encrypted Mnemonic (16 Bytes - 12 words, 32 Bytes - 24 words): Mnemonic ciphertext. * **(7)** Validation block (16 Bytes): Currently using first 16 bytes of sha256 of the mnemonic bytes as checksum, could be used in future to store AES-AEX validation tag. - +## Considerations +Storage of encrypted mnemonics on the device or SD cards are meant for convenience only and should not be considered a form of backup. Always make a physical backup of your keys that is independent from electronic devices and test recovering your wallet from this backup before you send funds to it. diff --git a/mkdocs.yml b/mkdocs.yml index 0c5645c27..ffd121161 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -71,13 +71,14 @@ nav: - Navigating the Main Menu: getting-started/navigating-the-main-menu.en.md - Using a Single-sig Wallet: getting-started/using-a-single-sig-wallet.en.md - Using a Multisig Wallet: getting-started/using-a-multisig-wallet.en.md + - Encrypted Mnemonics: getting-started/encrypted-mnemonics.en.md - Printing: getting-started/printing.en.md - Transcribing QR codes: getting-started/QR-transcript-tools.en.md - Settings: getting-started/settings.en.md - Tools: getting-started/tools.en.md - Devices and Part List: parts.en.md - - Encrypted QRCodes: encrypted-qr-codes.en.md - FAQ: faq.en.md + - Development: development.md - Support the Project: support.en.md plugins: