January 12, 2023
Ardan Labs
From the Ardan Community
Introduction Google developed Go to be an alternative to C++ with the internet and scale in mind. Go’s toolchain automates tasks that are easily overlooked, and amongst those tasks is generating documentation. Go has the ability to generate documentation based on comments written in your source code. As the end user, you have the choice to view this documentation in your terminal or, if your code is publicly accessible, on pkg.
Continue reading January 12, 2023
Ardan Labs
From the Ardan Community
Introduction In episode 14, Bill architected a solution to digitally sign the transactions on his blockchain. His solution retrieved the private key by : loading private key data from disk, parsing the key data and returning the ECDSA private key. The private key is then used to generate the signature of a transaction. While writing the code to perform this functionality, Bill highlighted how a blockchain node can use a transaction’s signature to extrapolate the public key.
Continue reading January 11, 2023
Ardan Labs
From the Ardan Community
Introduction In episode 13, Bill discussed the idea of adding salt to a hash and how modern crypto-currency blockchains use it to better interpret requests sent to nodes. He continued by defining a function called stamp that embeds a salt within a hash. While writing the function, Bill stated that he would use keccak256 as it’s the same algorithm used by Ethereum to generate hash values. Bill will use the APIs provided with Go Ethereum to generate a keccak256 hash.
Continue reading January 11, 2023
Ardan Labs
From the Ardan Community
Introduction In episode 12, Bill laid out his strategy to handle data hashing on his blockchain. The first step he took was to create a package to handle the cryptographical aspects of his blockchain. After that, he wrote a hash function that met the requirements outlined in his strategy. This function took transaction data as a parameter and returned a hexadecimal representation of the hash. To implement this function, Bill imported packages from the Go standard library and Ethereum API.
Continue reading January 4, 2023
Ardan Labs
From the Ardan Community
Introduction In episode 11, Bill highlighted the issue of identity verification and provided a solution to this problem. The solution proposed was to cryptographically sign a transaction to verify its authenticity. Bill chose to implement a solution making use of the Elliptic Curve Digital Signature Algorithm (ECDSA) as the public key can be extracted from a signature. Although a small distinction, the ability to re-compute a public key is essential in a decentralized and distributed environment.
Continue reading January 3, 2023
Ardan Labs
From the Ardan Community
Introduction In episode 10, Bill dove into the technical implementation of his genesis record and defined a custom Go type representing the record. While doing so, he provided an in-depth look at the reasoning behind the fields he included.. After declaring this type, Bill wrote a function that loads the genesis record from disk and onto memory. His function will use the standard library encoding/json package to load JSON data from a hard-coded file path.
Continue reading January 3, 2023
Ardan Labs
From the Ardan Community
Introduction In episode 9, Bill introduced the idea of the genesis record and its role in his blockchain. As a recap, the genesis record will be used to customize the settings of his blockchain. The approach Bill takes here is similar to how Ethereum operates because he is storing the record in JSON format.
In this video, Bill starts by defining the Go types his blockchain will use. The first type he defines will represent the genesis record.
Continue reading Introduction I made it my mission in 2022 to learn everything I could about blockchain and as the year ends, I feel like I accomplished my goal. Love it, hate it, or don’t want to know nothing about it, I think it’s important to push your opinions aside and understand how this technology works. Even with the current collapse of several large crypto companies in 2022, blockchain isn’t going to disappear.
Continue readingDecember 20, 2022
Ardan Labs
From the Ardan Community
Introduction In episode 8, Bill wanted to build a blockchain in Go and began to lay the groundwork for the project. Go is a good choice because its standard library has the necessary network and cryptographical functionality required to build a blockchain. Unlike the previous segment, Bill plans to use this blockchain to manage accounts and balances with hypothetical assets. Bill will reuse concepts from ethereum, bitcoin and the previous segment of the series to implement this blockchain.
Continue reading December 19, 2022
Ardan Labs
From the Ardan Community
Introduction In the first part of the series, Bill designed a dependency management system. The dependency manager needed to be distributed, transparent, cryptographically auditable and scalable. To meet these requirements, Bill borrowed concepts from blockchain. He did this to illustrate how the blockchain can be repurposed and used to accomplish the mundane task of dependency management. While doing so, Bill indirectly highlighted the problems a blockchain solves.
In the next segment of the series, Bill will build a semantically correct blockchain.
Continue reading