Skip to content

Commit

Permalink
Update grin_for_muggles_and_aspiring_wizards.md
Browse files Browse the repository at this point in the history
Some fixed, really should do a second round of editing, I see many parts that can be imrpoved
  • Loading branch information
Anynomouss authored Jul 4, 2024
1 parent b36cb58 commit 4ec99ed
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions grin_for_muggles_and_aspiring_wizards.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ This document serves as an Add-On to the [official documentation](https://docs.g

1) How does my Grin wallet work?<br/>
3) What is all this Elliptic Curve stuff?<br/>
2) how does my Grin wallet create a transaction?<br/>
2) How does my Grin wallet create a transaction?<br/>
3) How does my transaction gets on the blockchain?<br/>
4) How does my wallet knows which outputs belong to it?<br/>
5) An example for aspiring wizards<br/>
Expand All @@ -20,7 +20,7 @@ This document serves as an Add-On to the [official documentation](https://docs.g
***

# How does my Grin wallet work :purse: :key:?
Grin wallets are generated the same way as Bitcoin wallets. Grin follows the BIP32 standard in deriving a master seed from a mnemonic seed phrase (BIP39) and deriving children keys as a [Hierarchically Deterministic (HD)](https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/) wallet. The process for deriving BIP32 HD wallets is that you start with a randomly generated number called ***seed***, which is presented to the users as a list of words called a ***seed phrase*** (12-24 words). From this seed phrase a master key as well as children keys are generated. HD wallets can be best understood by visualizing them as a tree:
Grin wallets are generated the same way that Bitcoin wallets are generated. Grin follows the BIP32 standard where a master seed is derived from a mnemonic seed phrase (BIP39) and and children keys are derived as a [Hierarchically Deterministic (HD)](https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/https://learnmeabitcoin.com/technical/keys/hd-wallets/derivation-paths/) wallet. The process for deriving BIP32 HD wallets is that you start with a randomly generated number called ***seed***, which is presented to the users as a list of words called a ***seed phrase*** (12-24 words). From this seed phrase a master key as well as children keys are generated. HD wallets can be best understood by visualizing them as a tree:

BIP32:
Master / Account/ Purpose / index Derivation_path
Expand All @@ -37,10 +37,10 @@ Grin wallets are generated the same way as Bitcoin wallets. Grin follows the BIP


Having multiple accounts is supported by *grin-wallet*. *Grin++* does not support multiple accounts, but instead supports having multiple wallet files. Preferably, both wallet software will support multiple accounts and multiple wallet files in the future.
The most important thing to understand about your Grin wallet is that all keys are Hierarchically Deterministic (HD). This means that as long as you have the **seed(phrase)**, you can restore your wallet and derive the complete tree of derived keys. Losing funds when recovery from the seed phrase is therefore impossible! Your wallet seed is stored on your computer in a file called ***"wallet.seed"***. <br/><br/>
In the coming sections as well as in Grin's official documentation and on the forum, the word **"blinding factor"** is used. Make a mental note that a **blinding factor** is just a private-keys generated by your wallet and used to blind an output value.
Later on in this document, I will describe `key 1`, `key 2`, `key 3` and abbreviate them as **k1, k2, k3,..**. These are just the private-keys generated and controlled by your and the recipients wallets.
Having multiple accounts is supported by *grin-wallet*. *Grin++* does not support multiple accounts, but instead supports having multiple wallet files. Preferably, Grin wallet software will support both multiple accounts and multiple wallet files in the future.
The most important thing to understand about your Grin wallet is that all keys are Hierarchically Deterministic (HD). This means that as long as you have the **seed(phrase)**, you can restore your wallet and derive the complete tree of derived keys. Losing funds when recovery from the seed phrase is therefore impossible! Your wallet seed is stored on your computer in a file called ***"wallet.seed"***. Note that the see in this file is encrypted with your wallet password.<br/><br/>
In the coming sections as well as in Grin's official documentation and on the forum, the word **"blinding factor"** is used. Make a mental note that a **blinding factor** is just a private-keys generated by your wallet that are used to "blind" output value, hence the name "blinding factor".
Later on in this document, I will mention wallet keys as `key 1`, `key 2`, `key 3` and abbreviate them as **k1, k2, k3,..**. Note that these are just the private-keys generated and controlled by your and the recipients wallets.

> **WARNING:**
*Grin-wallet* stores the seed itself. This means that the mnemonic seed phrase should not be reused for other wallets.<br/><br/>
Expand All @@ -57,7 +57,7 @@ Thirdly, Grin does not store all transaction information on chain. Payment proof


> **SUMMARY:**
Your Grin wallet is a normal BIP32 HD wallet. Your wallet seed is stored in a file called ***"wallet.seed"***. When you restore your wallet from the seed phrase, all funds will be recovered. However, you will not be able to: 1) see who send you a transactions, 2) see spend transaction outputs 3) restore payment proofs since this information is not stored on the blockchain.
Your Grin wallet is a normal BIP32 HD wallet. Your wallet seed is stored in a file called ***"wallet.seed"***. When you restore your wallet from the seed phrase, all keys are regenerated an you can access all your Grin funds. However, you will not be able to: 1) see who send you a transactions, 2) see spend transaction outputs 3) restore payment proofs since these three types of information are not stored on the blockchain. Why, you might ask? Because Grin is a commitment type blockchain, meaning only a commitment is stored on the blockchai.

***
# How are transactions in Grin different from Bitcoin?
Expand Down

0 comments on commit 4ec99ed

Please sign in to comment.