Yeah, yeah, yeah… I’m going to talk about Crypto. I’m sure you’ve come across someone who has talked your ear off about how amazing crypto is. How its the next generation of money, its the ultimate middle finger to the banks, and how it grants ultimate freedom from governments. Well… this is going to be one of those posts. I haven’t put too much skin in the crypto game yet, but you got to start somewhere. I decided to start with running a Full-node.
Warning: Lots of TLDR ahead!!
If you are new to crypto and don’t fully understand it, don’t worry. There are a lot of people out there that use it and have no idea how it works. Much like how lots of people drive cars but have no idea where the head gasket in the engine is. I’m skipping over a ton of the inner workings of crypto technology and the various currencies on the market. I’m just going to focus on why setting up a Full-node is a good idea. Ok, back to out regularly scheduled program!
What is a Crypto Full-Node?
I’m sure you’ve seen in the news everyone hogging video cards to mine the last few crypto coins out there. The sea of articles that exist telling you that’s a bad idea is staggering. They are not wrong. The energy to coin extraction ratio has flipped. So unless you have an unhealthy amount of video cards lying around, you are just wasting your money.
Anyway, a Full node is a server on the crypto network. It that holds all or some of the entire block chain transaction history. For Bitcoin, that means tracking every transaction from 2009, all the way to today. Nodes build their ledgers from other nodes, downloading and verifying those transactions are legit. Depending on the size of the block chain, the initial download can be a few hours to a few days. The more nodes on the network, the more reliable those nodes become, keeping legit transactions safe.
While full nodes don’t make you money, you are still massively supporting the peer to peer network. Running a full node, you help keep everyone else in check and help others stay up to date with the latest transactions. Bitcoin being the most popular, I figured I had some extra hardware lying around I could use as a node and help out the network!
And that’s when things went to Shit…
Looking at the Bitcoin documentation, I saw that it was possible to double a full node as a bitcoin wallet using Bitcoin Core. Further in the documentation, it looks like it is way easier to manage things from a GUI than do everything in the CLI. I didn’t want to run this on my main rig, taking up gaming resources. So I ended up reusing my Fold@Home server running on my laptop to be my new Bitcoin Node.
With that, I went to Bitcoin Core, downloaded the package, and started running it. The program starts downloading the initial blockchain, and it runs through all of the transactions, verifying them as it catches up. Progress bar said that it would take several days, so I would just let it run. Checking on it the following day, I saw that it got stuck with a DB Corruption error. It stopped around 2-14-2018. Googling the error, you can reset the initial download by deleting the chain state folder. It’s in the .bitcoin folder under the home directory of the user you installed core on.
It will start the download again but fly through the blocks it already has. It just needs to verify them so this part moves a lot quicker. However, again… the DB crashed again, in 2019 this time. I repeated this process 4 more times, getting different errors and things were not going anywhere. Doing some digging, the errors that I was getting meant the laptop had an issue with its HDD or RAM. Meaning it was not reliable to do coin verification.
When the Full-Node fails, its time to Doge it up!
It was time to fire up Plan B. In my last post, I mentioned that I nabbed an old desktop and turned it into a pFSense firewall. With that project dead, I had a free box to use again. The reason I didn’t initially use it for Bitcoin core was because of the blockchain size.
I have a 300GB HDD in that server, so it wouldn’t be able to fit the whole block chain. And yes… I was too lazy to swap the 750GB drive from my laptop into that server. It was time to just try something different.
Looking at other coins out there, I came across Doge Coin. I remember hearing about Elon Musk buying a bunch of it. That it was created as a joke, poking fun at crypto and how anyone can make a coin. Looking at their block chain, only at 50GB, the initial download would only be a few hours.
I could run the node for a while without worrying about filling up the drive. As it turns out, Dogecoin core is basically the same as Bitcoin Core. So again, I installed Ubuntu server on the old pFSense box. I installed dogecoin core, running as a daemon this time, and got to verifying transactions!
This time around, it worked flawlessly. No crashing, no DB corruptions. The only extra thing I had to do was forward a port on Eero. This was to allow peers to get blockchain info from me as well as pass on info to others. There is even a fun little map that shows all the mining and nodes running doge on their website.
So running for a few days now, I’ve officially made it on the map 🙂
So is Crypto worth it?
I’m not sure… Crypto Currency has the stigma of being a fad. Its too volatile to be reliable and to be taken seriously. It’s too complicated and will not scale with how it currently works. The idea is there, its just not quite refined enough. Certainly not enough to replace conventional money. The culture around it still is to treat it like a stock or gold. An asset you buy at a low price, let it gain traction and buzz, then sell.
I’m trying to change my view on it and see it as money. Just another way to buy things, but anonymously. Some exchanges exist now, visa has a crypto card, so there is some hope.
The lesson I learned from this project is you got to do your part. Open source projects, de-centralized initiatives, all require you! Crypto, the Tor network, Fold@Home, only work because of you. Lending your old hardware, and putting your time and effort is why it works. It will continue to work and get better as long as people invest in it. Not just financially, but with technology and brain power. It’s how Linux got so popular! Don’t like the OS you are on, make your own dammit!
So if you are tired of having limits put on you, its time for you to do something about it! Until next time! 🙂