After the publishing of the book “Deep Dark Web” many colleagues asked me to explain how does work the finance in hidden world and which is the currency used for the transactions? Of course I receive many question also on Bitcoin by common people so I decided to introduce the basic concepts behind the famous e-currency.
Bitcoin is an electronic currency introduced in 2008 by a programmer known as Satoshi Nakamoto that posted an interesting paper outlining Bitcoin project and the entire architecture to implement the currency distribution.
Few months after, in early 2009, Nakamoto distributed the first software that can be used to exchange bitcoinsaccording the architecture described in his paper.
How is the network for the distribution of Bitcoin?
In the traditional markets in which we are accustomed to analyze, central governments manage the currencies and their performance based on a number of factors often questionable. In the model developed by Nakamoto electronic currency is circulated within a peer to peer network that make use of encryption mechanism to ensure the reliability and the value of currency. What has made really popular the Bitcoin is the absence of central government whom decisions could induce phenomena of inflation or deflation and the anonymity of the transfer between entities in the network.
In the paper Nakamoto introduced the argument with the following statements:
“Commerce on the Internet has come to rely almost exclusively on financial institutions serving as trusted third parties to process electronic payments. While the system works well enough for most transactions, it still suffers from the inherent weaknesses of the trust based model. Completely non-reversible transactions are not really possible, since financial institutions cannot avoid mediating disputes.”
“What is needed is an electronic payment system based on cryptographic proof instead of trust, allowing any two willing parties to transact directly with each other without the need for a trusted third party. Transactions that are computationally impractical to reverse would protect sellers from fraud, and routine escrow mechanisms could easily be implemented to protect buyers”
The intent of Nakamoto wasn’t the fight to financial institutions and their influence on the currencies, he desired to propose solution to avoid the problems described with a “peer-to-peer distributed timestamp server to generate computational proof of the chronological order of transactions”.
Today the software released by Nakamoto, named Bitcoin, is maintained by a volunteer open-source community coordinated by four core developers.
The figure itself of Satoshi Nakamoto is a mystery, Jeff Garzik, member of that core team and founder of Bitcoin Watch declared that nobody know him despite occasionally he corresponded with him by e-mail.
To better understand the model let’s make a premise on the concept of Digital Signature in a PKI. A digital signature is the application of asymmetric encryption mechanism to the hash (a sort of digital footprint) of a document. The mathematical scheme allow to ensure the authenticity of a document and the avoidance of its repudiation. A valid digital signature gives the proof that the document was created by a known entity and that it was not altered during its manipulation (e.g. transmission over a network).
The entire infrastructure is based on the concept of Bitcoin that Nakamoto defined as a chain of digital signatures, it is possible to consider the coin as a token digitally signed by the owner that desires to transfer the currency. To be more accurate each user transfer the coin to other entity in the network digitally signing a hash of the previous transaction and the public key of the next owner, the signature is then added to the end of the token.
The payee is the only one that could verify the previous transaction using its private key because the coin has been signed using its public key, this allow it to verify the chain of ownership. The described process has solved the problem of authentication of the payment and not repudiation, but we are still not able to avoid the duplication of the transaction, in practice the circuit must avoid that the same coin could be used in multiple transactions.
The model is enriched by another actor, entrusted with the task of verifying that each coin is spent only once, this central authority is named “mint”. To discharge its task, after each transaction the mint acquires the coin used to issue a new coin, in this way only the coins distributed directly from the mint are valid and only for them there is the assurance that have not already been spent.
Great … the model proposed is able to trust the entities involved in the transaction and to control the effective circulation of the currency … but there is still another factor not yet considers … the time! When does a transaction occurred?
The schema makes use of a timestamp server, that produces the timestamps elaborating block of hash, in this way it is possible to link the existence of a hash in a particular time. Each timestamp includes the previous timestamp in its hash, forming a chain, with each additional timestamp reinforcing the ones before it.
Every new transaction is broadcast to all nodes of the network that collect the information related to the operation into a block. Once verified the time validity of the data the node broadcasts the block to other elements in the network.
The Bitcoin software connect to the network and generates the private and public keys necessary to take part to the process. The private is kept hidden on user’s pc, the public is dubbed a Bitcoin address and is spread to other nodes of the network to allow them to send bitcoins to it.
The security of the model resides in the impossibility to exploit user’s private key from its public key, making impossible to impersonate the user. The couple of keys could simple be moved from a machine to another because are stored in a file resident on the user’s pc.
Essentially each transaction is characterized by payee’s public key, owner private key and of course the amount of bitcoins that a have to be transferred.
We have seen that resultant of the mathematical elaboration of these information are sent out across the peer to peer network to make possible the verification of the transaction also by other nodes.
When a user A transfers the money to another user B prepares an information block containing the public key of B (the address) and the quantity of coins to be transferred, by signing with the A private key.
The information is then distributed in the network and the nodes validate the signatures and the amount of numbers involved before accepting it. When a node verifies the correctness of the transaction, it send the details to the network to allow to other entities to verify them to allow to specific machines to add the transaction to a public register of transactions, these machines are known as “miners“.
The security level of the model make impossible the generation of fake transactions, every user could use only the bitcoins he owns. The presence of a public log of all transactions also provides a further element of security for the transaction, according the “course group” it represents a deterrent to money laundering.
Two common questions I receive are
Let’s reply every single point:
1) The Bitcoin network creates and distributes randomly block of coins about six times an hour to respond to the request of keep enabled “generates bitcoin” in his client. To get bitcoin there are basically two methods:
The probability that a user receives a block of coins depends on the computational capability which adds to the Bitcoin network, relating to the computational power of the network in its entirety. The number of bitcoin created by block is never superior to 50 units and this amount is scheduled to decrease over time until you get to zero.
2) There are different exchange agents such as Mt. Gox, a web site that allows the conversion with various currencies. Mt.Gox is the world’s most established Bitcoin exchange that makes possible a secure trade of bitcoins with other people around the world with user’s local currency!
3) There is no limit to spend bitcoins, an increasing number services accept payment made with this currency … don’t forget also that also that in the Deep Web it is considered the official currency.
But if it is possible to mine bitcoins in so simple way, is it possible to observe in the future a bitcoin inflation phenomenon?
The model developed by Nakamoto, in particular its rules established that the amount of bitcoins in circulation will grow at an ever-decreasing rate toward a maximum of 21 million. In June there were just over 9 million; in 2030, there will be over 20 million bitcoins.
Nakamoto’s scheme includes also one loophole to prevent a financial cartel operated by financial institutions or cybercriminals. The loophole consists in a change of rules to preserve the network in case than half of the Bitcoin network’s computing power comes under the control of one entity.
This post will be just the first of a long series dedicated to one of the most interesting arguments …
To be continued …