This is a short guide on getting familiar with Bitcoin and how to use it effectively. First of all, this guide doesn't cover purchasing or selling since those topics are really region-specific. Second, don't post about any Tor or darknet-specific stuff. Don't PM me about that stuff either, I don't use them so I literally cannot help you in that, even if I wanted to. That is just one use for Bitcoin, the same way that buying drugs is just one use for cash. What this guide will cover is how to actually use Bitcoin (aka BTC, XBT) to prevent any oh-shit situations caused by lack of knowledge. There is a fair bit to know and it is pretty complicated in contrast to cash money, but once you've got your head wrapped around the basics it should be (nearly) as easy to use as cash.
First of all, you need a wallet to use Bitcoin. There are wallet applications that you should use for transactions, but a wallet is not an application. A wallet, in practical terms, is nothing more than a pair of keys (sequence of numbers and letters, case-sensitive). One of these is named the public key. The public key is like your e-mail address, except it receives Bitcoin instead of e-mails. As the name suggests, this is the key you can share with anyone you wish to receive Bitcoin from. You could share it with a person, or you could even share it with a machine.*
The other key, which is paired with a public key, is the private key. The private key is what gives you authority to spend the coins associated with the wallet, so do not share that with anyone. It's important to remember that a wallet equals a pair of keys, and here's why: Bitcoin is a network-dependent currency. To spend Bitcoin, you must have internet access in order to broadcast your transaction to nodes in the network and get that transaction verified before it is considered valid. However, you can deterministically generate wallets (keypairs) offline and receive coin to these wallets without ever being online. These wallets are known as paper wallets*, because they are offline (as if though they exist only on paper). They are the most secure and anonymous way to store Bitcoin and should be the first resort for long-term storage needs.
To recap, a wallet is just a keypair and as long as you know your public (receiving) key and corresponding private (sending) key, you can use Bitcoin. To receive Bitcoin, you can be offline, but to send it, you must be online. The online component requires a wallet application, and I'm going to focus on Electrum as that is the best common wallet application in terms of ease-of-use and anonymity. Electrum is easy to use because it has a small file size (as opposed to clients like Bitcoin Core, which require downloading the entire blockchain), has all the must-have features and is updated frequently. It's anonymous because your own IP address is once removed from the nodes that serve as the backbone of the network. Instead of connecting directly to those, Electrum connects to Electrum servers that store blockchain information so you don't have to. The result is you can quickly get wallet status updates (transaction information) without too much fuss.
Current versions of Electrum are >=2.8.0. On first run, Electrum will walk you through creating a wallet file with an associated seed phrase. Store that seed phrase carefully, if you ever lose your wallet file you can restore it fully with that phrase alone. When you've finished with that, go to Tools->Preferences and check “Enable Replace-By-Fee”. What this means is for every transaction you broadcast, you will retain the option to replace that fee after the broadcast has been made. The reason you want this option is because fees are subject to change. See, the way this whole thing works is when you broadcast a transaction it must be included in the blockchain to become valid. Transactions become included in the blockchain when miners (the nodes that create the coins) affix your transaction details to the freshest block mined. In order to have that happen, you need to incentivize the miners by sacrificing a small amount of Bitcoin to them in the form of fees. Fees are typically approximated per byte of the transaction. An average transaction size is 225 bytes, but as the inputs and outputs of a transaction grow, so does the byte-size. I'll get to that soon. For now, just know that your fee per byte* is what determines how quickly (or slowly) your transaction will be validated by nodes. For a successful transaction, the consensus is that 6 confirmations are required. The network will pick up on your transaction requests as soon as you broadcast them, but in general they may not be considered truly valid until at least six nodes have confirmed they have received and acknowledged it.
Under Tools->Preferences in Electrum, you can also set a baseline transaction fee per kilobyte. Remember that you may need to do the conversion from fee-per-byte to fee-per-kilobyte, though Electrum will warn you if you attempt to broadcast a transaction with a fee that it deems excessive. The next setting you should check on is Tools->Network. You need a network connection to know current wallet status and broadcast transactions. For a list of servers and their status, check here: https://1209k.com/bitcoin-eye/ele.php. “Use SSL” should always be checked. Proxy settings are relevant if you are attempting to connect via Tor* to a hidden [.onion] Electrum server, it's best to check Tor-related documentation on how to make an Electrum connection over the Tor network.
Ok, it's time now to cover the last bit of must-know errata, which is inputs and outputs. As you know by now, wallets are simply keypairs. When transactions appear on the blockchain, they are identified by the wallet's public key. But Bitcoin doesn't work like a normal cash wallet, from which you can pull a five-dollar note and still have a bunch of notes left in the wallet for future use. When you broadcast a transaction from a Bitcoin wallet, if you don't send the full amount in the wallet to the intended receiver (not counting the fee), the remainder will be counted as a second input and sent to a “change wallet” created for you by the Electrum client. The keys for the new wallet will automatically be added to your wallet file, so manually consolidating all your change is not necessary. This input/output mechanism can affect your fees by increasing the byte size of transactions. If, for example, you have received 1 Bitcoin to a single public key from a number of different addresses, then transactions you send from that wallet will record on the blockchain each originating address of the total of those funds*.
That should cover all the basics you need to know in order to easily, reliably use Bitcoin. For buying and selling, I only recommend using the resources linked below as they are reliable and generally anonymous. There are a lot of shady happenings in the Bitcoin world so do your due dilligence before trying new services!
Resources:
https://en.bitcoin.it/wiki/Main_Page - Bitcoin Wiki (good for a deep dive on specific concepts)
https://blockchain.info – Transaction info, current exchange prices, taint analysis and more
https://bitcoinfees.earn.com/ - Bitcoin fee status
https://coinmarketcap.com/ - Market capitalization by cryptocurrency
https://bitcointalk.org/ - General discussions about Bitcoin and related services
https://www.reddit.com/r/Bitcoin/ - Current events in the Bitcoin world
https://coinatmradar.com/ - Global cryptocurrency ATM locations map
https://localbitcoins.com/ - An exchange for local Bitcoin sales
- Read this before using paper wallets
First of all, you need a wallet to use Bitcoin. There are wallet applications that you should use for transactions, but a wallet is not an application. A wallet, in practical terms, is nothing more than a pair of keys (sequence of numbers and letters, case-sensitive). One of these is named the public key. The public key is like your e-mail address, except it receives Bitcoin instead of e-mails. As the name suggests, this is the key you can share with anyone you wish to receive Bitcoin from. You could share it with a person, or you could even share it with a machine.*
*Pro-tip: Bitcoin-dispensing machines are also known as BTMs, and there are a number of different models that either accept or dispense fiat currency in exchange for XBT. Most often, fiat->XBT machines require no identifying information, while XBT->fiat or two-way machines may ask for ID.
The other key, which is paired with a public key, is the private key. The private key is what gives you authority to spend the coins associated with the wallet, so do not share that with anyone. It's important to remember that a wallet equals a pair of keys, and here's why: Bitcoin is a network-dependent currency. To spend Bitcoin, you must have internet access in order to broadcast your transaction to nodes in the network and get that transaction verified before it is considered valid. However, you can deterministically generate wallets (keypairs) offline and receive coin to these wallets without ever being online. These wallets are known as paper wallets*, because they are offline (as if though they exist only on paper). They are the most secure and anonymous way to store Bitcoin and should be the first resort for long-term storage needs.
*Pro-tip: A wallet is recommended for single-time use only. Once you hand your public key out to people who you are expecting Bitcoin from, store the corresponding private key and you can forget the public key altogether. As long as you have the private key, you can access the wallet to broadcast transactions whenever you're ready to.
To recap, a wallet is just a keypair and as long as you know your public (receiving) key and corresponding private (sending) key, you can use Bitcoin. To receive Bitcoin, you can be offline, but to send it, you must be online. The online component requires a wallet application, and I'm going to focus on Electrum as that is the best common wallet application in terms of ease-of-use and anonymity. Electrum is easy to use because it has a small file size (as opposed to clients like Bitcoin Core, which require downloading the entire blockchain), has all the must-have features and is updated frequently. It's anonymous because your own IP address is once removed from the nodes that serve as the backbone of the network. Instead of connecting directly to those, Electrum connects to Electrum servers that store blockchain information so you don't have to. The result is you can quickly get wallet status updates (transaction information) without too much fuss.
Current versions of Electrum are >=2.8.0. On first run, Electrum will walk you through creating a wallet file with an associated seed phrase. Store that seed phrase carefully, if you ever lose your wallet file you can restore it fully with that phrase alone. When you've finished with that, go to Tools->Preferences and check “Enable Replace-By-Fee”. What this means is for every transaction you broadcast, you will retain the option to replace that fee after the broadcast has been made. The reason you want this option is because fees are subject to change. See, the way this whole thing works is when you broadcast a transaction it must be included in the blockchain to become valid. Transactions become included in the blockchain when miners (the nodes that create the coins) affix your transaction details to the freshest block mined. In order to have that happen, you need to incentivize the miners by sacrificing a small amount of Bitcoin to them in the form of fees. Fees are typically approximated per byte of the transaction. An average transaction size is 225 bytes, but as the inputs and outputs of a transaction grow, so does the byte-size. I'll get to that soon. For now, just know that your fee per byte* is what determines how quickly (or slowly) your transaction will be validated by nodes. For a successful transaction, the consensus is that 6 confirmations are required. The network will pick up on your transaction requests as soon as you broadcast them, but in general they may not be considered truly valid until at least six nodes have confirmed they have received and acknowledged it.
*Pro-tip: Check out https://bitcoinfees.earn.com/ for information on unconfirmed transactions pending on the network and to estimate what the lowest fee-per-byte you will need to get your transaction confirmed fastest. Transactions broadcast without a fee may never confirm, while transactions with the best fee-per-byte may be validated in under 30 minutes. If you accidentally broadcast a transaction with too low a fee, you can use the Replace-By-Fee mechanism to dislodge it from the infinite queue. If you forgot to enable Replace-By-Fee, there is another transaction trick called Child-Pays-For-Parent that can also work
Under Tools->Preferences in Electrum, you can also set a baseline transaction fee per kilobyte. Remember that you may need to do the conversion from fee-per-byte to fee-per-kilobyte, though Electrum will warn you if you attempt to broadcast a transaction with a fee that it deems excessive. The next setting you should check on is Tools->Network. You need a network connection to know current wallet status and broadcast transactions. For a list of servers and their status, check here: https://1209k.com/bitcoin-eye/ele.php. “Use SSL” should always be checked. Proxy settings are relevant if you are attempting to connect via Tor* to a hidden [.onion] Electrum server, it's best to check Tor-related documentation on how to make an Electrum connection over the Tor network.
*Pro-tip: The Whonix software distribution comes with Electrum installed and routes all traffic through the Tor network. Electrum is fairly anonymous on its own but for the paranoid it can be run through Whonix for a greater assurance of privacy
Ok, it's time now to cover the last bit of must-know errata, which is inputs and outputs. As you know by now, wallets are simply keypairs. When transactions appear on the blockchain, they are identified by the wallet's public key. But Bitcoin doesn't work like a normal cash wallet, from which you can pull a five-dollar note and still have a bunch of notes left in the wallet for future use. When you broadcast a transaction from a Bitcoin wallet, if you don't send the full amount in the wallet to the intended receiver (not counting the fee), the remainder will be counted as a second input and sent to a “change wallet” created for you by the Electrum client. The keys for the new wallet will automatically be added to your wallet file, so manually consolidating all your change is not necessary. This input/output mechanism can affect your fees by increasing the byte size of transactions. If, for example, you have received 1 Bitcoin to a single public key from a number of different addresses, then transactions you send from that wallet will record on the blockchain each originating address of the total of those funds*.
*Pro-tip: Blockchain is a public ledger. For improving anonymity, third-party services known as Bitcoin mixers exist. When using one of these services, taint analysis should be performed on the output address via https://blockchain.info. Taint occurs when your origin address appears as part of the inputs to your output address. A reliable mixer should produce taint-free output, but be aware when you use a mixer that you have no idea where your input coins could end up, or where your output coins came from.
That should cover all the basics you need to know in order to easily, reliably use Bitcoin. For buying and selling, I only recommend using the resources linked below as they are reliable and generally anonymous. There are a lot of shady happenings in the Bitcoin world so do your due dilligence before trying new services!
Resources:
https://en.bitcoin.it/wiki/Main_Page - Bitcoin Wiki (good for a deep dive on specific concepts)
https://blockchain.info – Transaction info, current exchange prices, taint analysis and more
https://bitcoinfees.earn.com/ - Bitcoin fee status
https://coinmarketcap.com/ - Market capitalization by cryptocurrency
https://bitcointalk.org/ - General discussions about Bitcoin and related services
https://www.reddit.com/r/Bitcoin/ - Current events in the Bitcoin world
https://coinatmradar.com/ - Global cryptocurrency ATM locations map
https://localbitcoins.com/ - An exchange for local Bitcoin sales
- Read this before using paper wallets
Last edited by a moderator: