# Your own magic internet money bank
#### What can you accomplish by running a Bitcoin and Lightning node?

## Why Bitcoin?
Bitcoin is the original peer-to-peer, fully-decentralized, electronic cash network. The invention (or [discovery](https://https://allenfarrington.medium.com/bitcoin-is-venice-8414dda42070)) of Bitcoin presents us with programmable money that works without trusted 3rd-parties. The key properties, borrowing [Satoshi](https://https://media.bitrates.com/posts/April2021/140307-satoshi-nakamoto-jsw-1202p-6436124592699df3ac058190601baf43nbcnews-fp-1200-6301_1px.jpeg)'s words from the [Bitcoin whitepaper](https://https://bitcoin.org/bitcoin.pdf), boil down to:
> * Double-spending is prevented with a peer-to-peer network.
> * No mint or other trusted parties.
> * Participants can be anonymous.
> * New coins are made from Hashcash style proof-of-work.
> * The proof-of-work for new coin generation also powers the network to prevent double-spending.
While Bitcoin eliminates the need for trust in 3rd-parties, it relies on the participation of network users, mainly in the form of proof-of-work miners and full nodes. Mining Bitcoin earns you rewards and can be a profitable way to participate, but it's reserved for users willing to invest upfront in expensive hardware and strategic operations. Running a full node does not earn you rewards, but can improve your own security, privacy and user experience, while contributing to validating and securing the Bitcoin network at large.
## Why a Bitcoin node?
Bitcoin nodes are key actors in the steps neccesary to run the Bitcoin network, explained by Satoshi to be as follows:
> 1. New transactions are broadcast to all nodes.
> 2. Each node collects new transactions into a block.
> 3. Each node works on finding a difficult proof-of-work for its block.
> 4. When a node finds a proof-of-work, it broadcasts the block to all nodes.
> 5. Nodes accept the block only if all transactions in it are valid and not already spent.
> 6. Nodes express their acceptance of the block by working on creating the next block in the chain, using the hash of the accepted block as the previous hash.
While taking note that the heavy proof-of-work computation is done by miners (in step 3), it is clear that nodes are essential to Bitcoin. But again, why run your own? To the benefit of all users, you provide strength to the network and increase its decentralization. There are also a handful of perks that are uniquely beneficial to you as a user running a full node.
### 1. Security
You have a direct connection to the Bitcoin Network and can verify transactions with your own computers. Borrowing again from Satoshi:
> **It is possible to verify payments without running a full network node.** A user only needs to keep a copy of the block headers of the longest proof-of-work chain, which he can get by querying network nodes until he's convinced he has the longest chain, and obtain the Merkle branch linking the transaction to the block it's timestamped in. He can't check the transaction for himself, but by linking it to a place in the chain, he can see that a network node has accepted it, and blocks added after it further confirm the network has accepted it. **As such, the verification is reliable as long as honest nodes control the network, but is more vulnerable if the network is overproof-of-workered by an attacker.** While network nodes can verify transactions for themselves, the simplified method can be fooled by an attacker's fabricated transactions for as long as the attacker can continue to overproof-of-worker the network. One strategy to protect against this would be to accept alerts from network nodes when they detect an invalid block, prompting the user's software to download the full block and alerted transactions to confirm the inconsistency. **Businesses that receive frequent payments will probably still want to run their own nodes for more independent security and quicker verification.**
### 2. Privacy
You do not need to give your personal data to service providers and you can keep your transactions pseudonymous.
### 3. Choice
You can decide for yourself which fork of Bitcoin you participate in. This is crucial because you're really giving your vote to the Bitcoin ecosystem.
### 4. User Experience
Full nodes sync a local copy of the blockchain. Therefore, they are capable of fast network querying for users who want high performance for running Bitcoin miners, exporers, or applications. And regardless if you're a power-user or not, you gain the experience of "being your own bank".
### 5. Network Participation
Finally, to reiterate, you improve the robustness of the Bitcoin at large (and therefore the sound value of your money) by becoming a good actor and helping to enforce the consensus rules of the network.
## Why Lightning?
Bitcoin is designed to be optimally decentralized and secure, which, when compared to our experience of money today, is hindered by slow, expensive processing. Lightning is a second network (Layer 2) on top of Bitcoin that aims to make cheap and frequent transactions possible, while retaining the security of the Layer 1.

Lightning does this by allowing users open payment channels, "nodes" (backed by multisignature wallets) with others, which they can fund with Bitcoin. Those payment channels enable for the bundling fast and low-fee transactions off-chain by using Bitcoin's native smart contracting language. These payment channels can be stitched together between mutially communicating parties. Your two friends' transactions would pass through your node if they set up their channels with you first. The Lightning network optimizes for speed and cost by finding the best route.
## Why a Lightning node?
The are a few big benefits you get for running your own Lightning node, and similar to Bitcoin, they're both self-serving and crucial for the network at large.
### 1. Profit
You can earn rewards for processing transactions between other nodes.
### 2. User Experience
Setting up a Lightning node is almost effortless once you've already invested in setting up a Bitcoin node.
### 2. Network Participation
You help grow the adoption (and therefore soundness) of the Bitcoin network by opening up use cases for smaller transactions.
## How to get started?
One easy way to get started setting up a dedicated Bitcoin Lightning node is to purchase a Raspberry Pi and follow the [RaspiBolt](https://https://stadicus.github.io/RaspiBolt/) docs!