How Blockchain Works9044940

De GEATI - Grupo de Estudos Avançados em TI
Ir para: navegação, pesquisa

Blockchain is really a piece of software designed to create decentralized databases.

The system is entirely "open source", meaning that anyone has the capacity to view, edit and propose changes to the underlying code base.

Though it has become increasingly popular thanks to Bitcoin's growth - that it is been around since 2008, rendering it around 10 years old (ancient in computing terms).

The main point about BITCOIN is it was designed to create applications which do not require a central information systems service. Which means if you're utilizing a system build on top of it (namely Bitcoin) - your data will be stored on 1,000's of "independent" servers around the world (not of any central service).

What sort of service works is as simple as creating a "ledger". This ledger allows users to produce "transactions" with each other - obtaining the contents of those transactions stored in new "blocks" of each "blockchain" database.

Depending on the application creating the transactions, they ought to be encrypted with different algorithms. As this encryption uses cryptography to "scramble" the info stored in each new "block", the term "crypto" describes the whole process of cryptographically securing any new blockchain data an application may create.

To totally understand how it works, you need to appreciate that "blockchain" just isn't new technology - it simply uses technology in the slightly different way. The core of it is really a data graph referred to as "merkle trees". Merkle trees are essentially methods of computer systems to hold chronologically ordered "versions" of your data-set, allowing them to manage continual upgrades compared to that data.

The reason this is important happens because current "data" systems are what might be described as "2D" - meaning they don't have any method to track updates towards the core dataset. The information is basically kept entirely as it is - with any updates applied straight to it. Whilst you'll find nothing wrong using this, it does pose an issue in that it means that data either has to be updated manually, or his tough to update.

The perfect solution is that "blockchain" provides is actually the creation of "versions" of the data. Each "block" put into a "chain" (a "chain" being a database) offers a list of new transactions for your data. This means that if you're able to tie this functionality right into a system which facilitates the transaction of data between several users (messaging etc), you can create a completely independent system.

This is exactly what we've seen with the likes of Bitcoin. Contrary to public opinion, Bitcoin isn't a "currency" in itself; it's a public ledger of financial transactions.

This public ledger is encrypted so that only the participants in the transactions can see/edit the data (hence the name "crypto")... but way more, the fact that the data is stored-on, and processed-by 1,000's of servers all over the world means the service can operate independently of the banks (its main draw).

Obviously, difficulties with Bitcoin's underlying idea etc aside, the underpin of the service is that it is basically a system that works across a network of processing machines (called "miners"). These are all running the "blockchain" software - and work to "compile" new transactions into "blocks" that keeps the Bitcoin database as current as possible.