I've been following the crypto space for about a few months now and have invested in a couple of coins/tokens throughout my journey. I am a big believer in the Ethereum technology and think it's the future. On top of that, I've met a couple of friends who also invested. I was super excited to talk crypto with them but realized that a lot of them invested without really understanding the technology. I want to fix that solution.
Though I have a general idea of how the blockchain technology works. I want to document for my own reference as well as yours information about the top and low level details regarding blockchain technology, specifically Ethereum. This will include high level concepts as well as setting up your wallet and potentially creating your own smart contract via geth/solidity.
Before I deep dive into the Ethereum technology I think it would be good to really go over the basics of blockchain technology.
Without further ado lets start off with Blockchain!
Blockchain is a decentralized network/system for exchanging of value. I believe there are 4 main characteristics that really define the intricacies of blockchain technology.
This will be a general explanation. I will go into more details about each one in separate articles and will update this past in the future.
A bank is a perfect example of a traditional ledger. With a traditional ledger, the database and transactions are not exposed to the outside public. Also, the ledger is only updated when customers carry out transactions. The central banks have a legal obligation to ensure money that is transferred amongst users are valid. They are the single source of truth.
Long story short... data can not be changed once added to the ledger.
Owner A wants to sell his item on the blockchain.
a. Creates a transaction
b. Generate a HASH value. (we'll call it hash-original-1234)
c. Confirms the transaction via PRIVATE KEY
d. Generates encrypted HASH value (we'll call it hash-encrypted-1234)
Buyer B wants to buy his item on the blockchain.
a. Buyer B finds the PUBLIC KEY of owner A
b. DECRYPTS the encrypted HASH value via owner A's public key (hash-encrypted-1234)
c. If the HASH value that is decrypted matches the owner's original hash value (hash-original-1234), then the transaction is confirmed.
Seller A --> Create Transaction --> Generate HASH --> Confirm via PRIVATE KEY --> ENCRYPTED HASH
Buyer B --> DECRYPT the ENCRYPTED HASH via PUBLIC KEY --> find HASH value --> determine match