-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Intro revision #673
Merged
Merged
Intro revision #673
Changes from 2 commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,36 +4,36 @@ | |
[[control_responsibility]] | ||
=== Control and responsibility | ||
|
||
Open blockchains like Ethereum are important because they operate as a _decentralized_ system. That means lots of things, but one crucial aspect is that each user of Ethereum can (and should!) control their own private keys, which are the things that control access to funds and smart contracts. We sometimes call the combination of access to funds and smart contracts an "account" or "wallet". These terms can get quite complex in their functionality, so we will go into this in more detail later. As a fundamental principle, however, it is as easy as one private key equals one "account". Some users choose to give up control over their private keys by using a third party custodian, such as an online exchange. In this book, we will teach you how to take control and manage your own private keys. | ||
Open blockchains like Ethereum are important because they operate as a _decentralized_ system. That means lots of things, but one crucial aspect is that each user of Ethereum can—and should—control their own private keys, which are the things that control access to funds and smart contracts. We sometimes call the combination of access to funds and smart contracts an "account" or "wallet". These terms can get quite complex in their functionality, so we will go into this in more detail later. As a fundamental principle, however, it is as easy as one private key equals one "account". Some users choose to give up control over their private keys by using a third party custodian, such as an online exchange. In this book, we will teach you how to take control and manage your own private keys. | ||
|
||
With control comes a big responsibility. If you lose your private keys, you lose access to funds and contracts. No one can help you regain access - your funds will be locked forever. Here are a few tips to help you manage this responsibility: | ||
With control comes a big responsibility. If you lose your private keys, you lose access to funds and contracts. No one can help you regain access—your funds will be locked forever. Here are a few tips to help you manage this responsibility: | ||
|
||
* Don't improvise security. Use tried-and-tested standard approaches. | ||
* Do not improvise security. Use tried-and-tested standard approaches. | ||
|
||
* The more important the account (e.g. the higher the value of the funds controlled, or the more significant the smart contracts accessible), the higher security measures should be taken. | ||
|
||
* The highest security is gained from an air-gapped device, but this level is not required for every account. | ||
|
||
* Never store your private key in plain form, especially digitally. Fortunately, most user interfaces today won't even let you see the raw private key! | ||
* Never store your private key in plain form, especially digitally. Fortunately, most user interfaces today won't even let you see the raw private key. | ||
|
||
* Private keys can be stored in an encrypted form, as a digital "keystore" file. Being encrypted, they need a password to unlock. When you are prompted to choose a password, make it strong (i.e. long!), back it up and don't share it. If you don't have a password manager, write it down and store it in a safe and secret place. To access your account, you need both the "keystore" file and the password. | ||
* Private keys can be stored in an encrypted form, as a digital "keystore" file. Being encrypted, they need a password to unlock. When you are prompted to choose a password, make it strong (i.e. long and random), back it up and don't share it. If you don't have a password manager, write it down and store it in a safe and secret place. To access your account, you need both the "keystore" file and the password. | ||
|
||
* Do not store any passwords in digital documents, digital photos, screenshots, online drives, encrypted PDFs, etc. Don't improvise security. Use a password manager or pen and paper. | ||
* Do not store any passwords in digital documents, digital photos, screenshots, online drives, encrypted PDFs, etc. Again, Do not improvise security. Use a password manager or pen and paper. | ||
|
||
* When you are prompted to back up a key as a mnemonic word sequence, use pen and paper to make a physical backup. Do not leave that task for "later"; you will forget. These can be used to rebuild your private key in case you lose all data saved on your system, or if you forget or lose your password. However, they can also be used by attackers to get your private keys, and so never store them digitally, and keep the physical copy stored very securely in a locked drawer or safe. | ||
* When you are prompted to back up a key as a mnemonic word sequence, use pen and paper to make a physical backup. Do not leave that task for "later"; you will forget. These can be used to rebuild your private key in case you lose all data saved on your system, or if you forget or lose your password. However, they can also be used by attackers to get your private keys, and so never store them digitally, and keep the physical copy stored securely in a locked drawer or safe. | ||
|
||
* Before transferring any large amounts (especially to new addresses), first do a small test transaction (e.g. less than $1 value) and wait for confirmation of receipt. | ||
|
||
* When you create a new account, start by sending only a small test transaction to the new address. Once you receive the test transaction, try sending back again from that account. There are lots of reasons account creation can go wrong, and if it has gone wrong, it is better to find out with a small loss. If sending the test back works, all is well. | ||
|
||
* "Block Explorers" are an easy way to independly see whether a transaction has been accepted by the network. | ||
* Public block explorers are an easy way to independently see whether a transaction has been accepted by the network. However, the easiness comes at the price of privacy. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Change to: "However, this convenience has a negative impact on your privacy, because you reveal your addresses to block explorers, which can track you." |
||
|
||
* Do not send money to any of the addresses shown in this book. The private keys are listed in the book and someone will immediately take that money. | ||
|
||
[[ether_units]] | ||
=== Ether currency units | ||
|
||
Ethereum's currency unit is called _ether_, identified also as "ETH" or with the symbols Ξ (from the Greek letter "Xi" that looks like a stylized capital E) or (less often) ♦, for example, 1 ether, or 1 ETH, or Ξ1, or ♦1 | ||
Ethereum's currency unit is called _ether_, identified also as "ETH" or with the symbols Ξ (from the Greek letter "Xi" that looks like a stylized capital E) or, less often, ♦, for example, 1 ether, or 1 ETH, or Ξ1, or ♦1. | ||
|
||
[TIP] | ||
==== | ||
|
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After comma, lower-case "D"