Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 18 additions & 18 deletions en/pages/pleb_lessons.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ You can checkout my concise explainer video clips on various bitcoin topics:
* [Physical Attackers](https://v.nostr.build/ZPj9.mp4): How to prepare for physical attackers with passphrased wallets and multisig
* [Bitcoin Privacy](https://v.nostr.build/JyDM.mp4): Basics of Privacy in bitcoin
* [Free and Open Source Software](https://v.nostr.build/a2KZ.mp4): How FOSS is important for all bitcoiners
* [Secure Seed Generation](https://v.nostr.build/5B2y.mp4): How FOSS is important for all bitcoiners
* [Secure Seed Generation](https://v.nostr.build/5B2y.mp4): Why secure seeds matter and how to create them safely
* [Hardware Wallet Security](https://v.nostr.build/nlB3.mp4): How to choose, buy and verify hardware wallets
* [Bitcoin Nodes](https://v.nostr.build/G3EA.mp4): Why and how to run a bitcoin node
* [Peer-to-Peer Exchanges](https://v.nostr.build/lB6G.mp4): How to buy bitcoin on Peer-to-Peer exchange platforms
Expand All @@ -58,20 +58,20 @@ Read this nice introduction from the Ubuntu website and complete some exercises

Some of the terminal stuff I use very often can come handy for you too:

* Copy text from terminal: `ctrl + shift + C` (right click works too)
* Paste text into the terminal: `ctrl + shift + V` (right click works too)
* Copy text from terminal: `Ctrl + shift + C` (right click works too)
* Paste text into the terminal: `Ctrl + shift + V` (right click works too)
* Search the text in your terminal with the `search icon` located in the top-right corner
* The `“Tab”` button tries to guess and complete your command. Always fervently pummel it especially when inputting file names because if it cannot complete an ambiguous command it still can give you the possible options. If it does not want to complete something it might mean you’re in the wrong directory or trying to do it the wrong way
* Use previous/next command in history: `Up/Down arrows`
* Search for previously ran command by name: `ctrl + R`
* Jump to beginning of line with `ctrl + A` and to the end of line with `ctrl + E`
* Go forward one word with `ctrl + right arrow` and back one word with `ctrl + left arrow`
* Delete previous word: `ctrl + W`
* Clear screen: `ctrl + L` or running the `clear` command
* Use previous/next command in history: `up/down arrows`
* Search for previously ran command by name: `Ctrl + R`
* Jump to beginning of line with `Ctrl + A` and to the end of line with `Ctrl + E`
* Go forward one word with `Ctrl + right arrow` and back one word with `Ctrl + left arrow`
* Delete previous word: `Ctrl + W`
* Clear screen: `Ctrl + L` or running the `clear` command
* Inspect most commands you don’t yet understand before blindly using it: `man <command>` is the most common way
* Alternatively you can also use `<command> + “-help”` option or without dash just `<command> + “help”` or the other way round like `help <command>` or `“info” + <command>` to try to get information about command usage
* Escape from a running process: `Ctrl + C`
* Quit programs: Examples are pressing `q` button or typing `exit` or pressing `ctrl + X`. Always run through software manuals quickly to spare the headaches
* Quit programs: Examples are pressing `Q` button or typing `exit` or pressing `Ctrl + X`. Always run through software manuals quickly to spare the headaches
* Edit/View text files: `nano <filename>`
* Use multiple tabs (top-left corner) and terminal windows for different terminal sessions. This is useful if you launched a program from one terminal session but want to do other things in parallel

Expand Down Expand Up @@ -132,7 +132,7 @@ A key that can only lock but not unlock is very handy this way because now anyon

Using bitcoin is all about security and privacy. We use encryption in many different ways to protect AND verify valuable information. Alice can encrypt a message with your public key and send it to you. You can decrypt and read it but how do you know the message _actually_ came from Alice? Anyone can send you a message and claim that. You need stronger proof. This is the other great feature of public key cryptography: Digital signatures.

If you know that Alice’s **_public_** key actually belongs to her then you can ask Alice to always sign her messages with her **_private_** key. This digital signature Alice uniquely produces for every message can be 100% verified that it was generated with Alice’s **private key by just knowing Alice’s public** key.
If you know that Alice’s **_public_** key actually belongs to her then you can ask Alice to always sign her messages with her **_private_** key. This digital signature Alice uniquely produces for every message can be 100% verified that it was generated with Alice’s **private key by just knowing Alice’s public key.**

The checking is done with a so-called “Digital Signature Algorithm”. This algorithm takes a signed message (sometimes the signature is literally in the message file, sometimes it is sent as a separate file “detached” from the message) and a **_public_** key and determines if the signature was produced with the corresponding **_private_** key without any knowledge of that private key. If it checks out we can say that this message indeed came from Alice.

Expand Down Expand Up @@ -216,8 +216,8 @@ Seed phrases must be backed up because that information unlocks all your bitcoin

* “Brain wallets”: just memorization of the words
* “Paper wallets”: writing them down on paper and potentially also laminating them
* Steel plates: A very common way to protect from degradation, fire, water and almost anything that could destroy the information
* Digital backups: You can of course store the information on any digital device just beware that most computers are not safe from hackers and they tend to break after some time
* Steel plates: a very common way to protect from degradation, fire, water and almost anything that could destroy the information
* Digital backups: you can of course store the information on any digital device just beware that most computers are not safe from hackers and they tend to break after some time

As you see these different storage media imply their own unique advantages and disadvantages. People have to weigh their situation to choose solutions that fit their unique needs. Nevertheless Bitcoiners like tried-and-tested standards and best practices developed around those standards. People who want to custody their coins securely will adopt these standards and best practices.

Expand Down Expand Up @@ -261,11 +261,11 @@ Provided that the underlying mathematics and technology holds up, which seems to

Bitcoin transactions are similar to traditional fiat banking transactions in that they have a payment sender and a recipient but the transaction itself is constructed and propagated through the network very differently.

Also, bitcoin transactions cannot be reversed. Once a transaction has been confirmed by miners by producing a block that contains your transaction, and validated by full bitcoin nodes by validating every aspect of the blocks and transactions miners presented to the network, cash finality has been achieved and there is no going back. Time cannot be reversed. There is no authority controlling the flow of time and bitcoin reflects this reality.
Also, bitcoin transactions cannot be reversed. Once a transaction has been confirmed by miners by producing a block that contains your transaction, and validated by full bitcoin nodes by validating every aspect of the blocks and transactions miners presented to the network, cash finality has been achieved and there is no going back. Time cannot be reversed. There is no authority controlling the flow of time and Bitcoin reflects this reality.

---

A bitcoin transaction is created by first getting a recipient “bank account number” that is a bitcoin address. This is communicated not through the bitcoin network itself but through any means online or offline.
A bitcoin transaction is created by first getting a recipient “bank account number” that is a bitcoin address. This is communicated not through the Bitcoin network itself but through any means online or offline.

Once the sender gets the address she will first unlock some bitcoin with her private key. She unlocks enough bitcoin to meet the sum to be paid plus the transaction fee. The fee can be any amount but if it is too low the transaction will be slow or might not even go through. She then broadcasts that transaction to the network of bitcoin nodes all running the bitcoin open-source software.

Expand Down Expand Up @@ -330,7 +330,7 @@ There are other things you can adjust when you create a transaction which we wil

---

## The Blockchain (a.k.a. the Timechain, a.k.a. the public ledger of bitcoin)
## The Blockchain (a.k.a. the Timechain, a.k.a. the public ledger of Bitcoin)
{: .no_toc }

![bitcoin is time](/assets/img/graphics/bitcoin_is_time.jpg)
Expand All @@ -343,7 +343,7 @@ However, it does not tell you anything about what kind of new data should be con

So how do we break these ties? This is where Proof of Work mining comes into play. In bitcoin the “truth” from all the possible alternatives is determined by a contest: The transaction that can “round up more votes” wins. But votes are expensive, and I mean really expensive. You have to prove with actual work i.e. expended energy that you care about this vote in the first place.

This work can be thought of as the security budget of bitcoin because this creates the incentives for the participants of the network to play the game honestly. If they really work hard and win, the price is juicy bitcoin AND a more secure network, that is, the game becomes more valuable overall too.
This work can be thought of as the security budget of bitcoin because this creates the incentives for the participants of the network to play the game honestly. If they really work hard and win, the price is juicy bitcoin AND a more secure network, that is, the game becomes more valuable overall too.

If they try to cheat, others kick them out of the game and the work they did goes to waste. If they somehow manage to ruin the game, bitcoin becomes worthless so why play in the first place? Otherwise honest players can still restart the game from scratch. This is real-life incentives at play.

Expand All @@ -353,7 +353,7 @@ The work is done by playing the same easy game: Solving a math problem that is k

The difference is that this guessing game can be done by anyone, anywhere on earth because it only requires electricity and electricity is a secondary energy source meaning any energy can be converted into electrical energy.

You just grab the transaction data you gathered from peer nodes and generate fixed length random numbers ([sha256 hashes](https://en.wikipedia.org/wiki/SHA-2)) from it until you find a "winner hash". It will be a random number that is in a very narrow range compared to the possible range of numbers.
You just grab the transaction data you gathered from peer nodes and generate fixed length random numbers ([sha256 hashes](https://en.wikipedia.org/wiki/SHA-2)) from it until you find a "winner hash". It will be a random number that is in a very narrow range compared to the possible range of numbers.

The first transaction to round up more energy manages to get into a block with valid Proof of Work and wins the race, becoming the ultimate truth in bitcoin. Transactions in this regard are like politicians trying to round up more energy for themselves all over the globe to win the popularity contest. This is just a more peaceful, ethical and less wasteful conflict resolution than destroying the world with wars.

Expand Down
31 changes: 16 additions & 15 deletions en/pages/quest-3-journey-begins.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,47 +25,48 @@ Feel free to not just complete the exercises but also try out other exciting thi

**You really need to take ownership of your coins or they will be frozen for eternity!**

## OBJECTIVE: Create your first Bitcoin wallet!([Progress Images](/en/progress-the-journey-begins/){:target="_blank"})
## OBJECTIVE: Create your first Bitcoin wallet! ([Progress Images](/en/progress-the-journey-begins/){:target="_blank"})
1. 💡Learn about [Bitcoin ownership basics](/en/pleb-lessons/#bitcoin-ownership)
2. Create your first Bitcoin Wallet. `Go to File` --> `New Wallet`
2. Create your first Bitcoin Wallet. Go to `File` --> `New Wallet`
3. Give it a name like “myfirstwallet”
4. Use the preset options: Single sig, Native Segwit
5. Select New or Imported Software Wallet
4. Use the preset options: `Single Signature` `Native Segwit`
5. Select `New or Imported Software Wallet`
6. Select `Use 12 Words` from the dropdown menu
7. Click `Generate New`
8. Write the words down on a piece of paper with the numbers
9. Click `Confirm Backup` and `Re-enter Words`
9. Click `Confirm Backup...` and `Re-enter Words...`
10. Re-enter them from the paper backup
11. Click `Create Keystore`
12. Click `Import Keystore`. It takes you to the finalizing stage of the Wallet creation process
13. Hover over the little question mark icons to get a sense of what all these things are about. Look at the Master fingerprint tooltip message carefully
13. Hover over the little question mark icons to get a sense of what all these things are about. Look at the `Master fingerprint` tooltip message carefully
14. On the paper where you wrote down the words write your wallet name and master fingerprint as well to keep track of this wallet
1. It is a unique wallet ID derived from the Xpub
15. Click `Apply`. Click `No Password`. Tabs on the left turned blue from gray
16. Go to the `Transactions tab`. See that this is indeed a completely empty wallet. Sparrow did not find any transactions associated with it
15. Click `Apply`.
16. Click `No Password`. Tabs on the left turned blue from gray
16. Go to the `Transactions` tab. See that this is indeed a completely empty wallet. Sparrow did not find any transactions associated with it

Your exchange is on the brink of collapse. The yield generator algorithms sadly did not work out well in the long run. Now you really have to leave the sinking ship!

---

## OBJECTIVE: Save your coins from the exchange([Progress Images](/en/progress-the-journey-begins/){:target="_blank"})
## OBJECTIVE: Save your coins from the exchange ([Progress Images](/en/progress-the-journey-begins/){:target="_blank"})
1. 💡Learn about the [Bitcoin Transactions and the UTXO model](/en/pleb-lessons/#bitcoin-transactions-and-the-utxo-model)
2. Go to the `Receive` tab in Sparrow
3. Get a new receiving address in Sparrow wallet
4. Add a label as the purpose of this transaction
3. Get a new receiving `Address` in Sparrow wallet
4. Add a `Label` as the purpose of this transaction
1. It only appears to you. You can write something like “from: exchange. purpose: not your keys not your coins
5. "Withdraw from exchange”: Use the Mutinynet signet [faucet website](https://faucet.mutinynet.com/)
2. Paste your receiving address into the faucet website
3. Use maximum amount
4. Complete the captcha and press `Send`
4. Complete the captcha and press `Make it rain`
6. After a short while Sparrow notifies you about the Transaction. Check it on the `Transactions` tab
7. Check your transaction how it appears on the Blockchain, Bitcoin’s public ledger: Use [this](https://mutinynet.com/){:target="_blank"} (signet) block explorer!
5. In the `Transactions tab` if you hover over the `Date column` there appears a magnifying glass icon to inspect the transaction. Click that
6. Copy the Txid
5. In the `Transactions` tab if you hover over the `Date` column there appears a magnifying glass icon to inspect the transaction. Click that
6. Copy the `Txid`
7. In the block explorer search bar, paste your Txid
8. It will visualize and give you information about the Transaction
9. You can inspect bitcoin transactions or addresses as well
10. Now paste your receiving address(addresses tab) into the search bar or click the link on the website `Inputs and Outputs` section transaction and check the result in the block explorer
10. Now paste your receiving address (`Addresses` tab) into the search bar or click the link on the website `Inputs and Outputs` section transaction and check the result in the block explorer
8. Check any of your transactions and addresses with this block explorer going forward
9. You can close the transaction window in Sparrow

Expand Down
Loading