Professional Documents
Culture Documents
ABBAS JAFAR
Computer Engineering
Myongji University
What we need to consider…
All Bitcoin transactions are recorded permanently on a distributed ledger called the
“Blockchain” – this ledger is shared between all full Bitcoin “miners” and “nodes” around the
world, and is publicly-viewable. These miners and nodes verify transactions and keep the
network secure.
Digital Signatures ( Cryptography )
A digital signature is an electronic form of a signature that can be used to
authenticate the identity of the sender of a message and also ensure that the
original content of the message or document that has been sent is unchanged.
Satoshi Nakmoto Paper Overview
Network participants are induced to agree on a single history through the use of a
timestamp server.
Timestamp server taking the hash of a block of transactions and publicly broadcasting that
hash.
This hash proof that a block of transactions existed at a given time, which allows
participants to verify the order in which blocks of transactions broadcasted.
Permanent history of all transactions that have ever taken place on the blockchain.
Need a system that check incoming transactions and compare them to previous to ensure
that there are no double-spends occurring.
Proof-of-Work
Bitcoin Minors find a random numbers called Nonce, that when inserted into the
current block make the hash(SHA-256) be blow the target.
The average work is exponential in the number of zero bit required and can be
verified by executing a single hash.
Miners are given the right to add a block to the blockchain.
POW …
Mining: A requirement to define an expensive computer calculation, also called mining.
Mining Purpose:
To verify the legitimacy of a transaction, or avoiding the so-called double-spending.
Mining needs to be performed in order to create a new group of trustless transactions (the so-
called block) on a distributed ledger called Blockchain.
Miners verify that transactions within each block are legitimate.
Miners should solve a mathematical puzzle known as proof-of-work problem.
Verified transactions are stored in the public blockchain.
Network
New transactions are broadcast to all nodes.
Each node collects new transactions into a block.
Each node works on finding a difficult proof-of-work for its block.
When a node finds a proof-of-work, it broadcasts the block to all nodes.
Nodes accept the block only if all transactions in it are valid and not already
spent.
Nodes express their acceptance of the block by working on creating the next
block in the chain, using the hash of the accepted block as the previous hash.
Reclaiming the Disk Space
Privacy can be achieved by keeping public keys anonymous and/or using addresses instead.
Use a new key pair / address for each transaction to make it harder to link coin movement to a
common owner.
There is a risk for multiple input transactions as you think that coins are coming from the same
source, and when revealing one address you could infer the owner of the others.
Calculations
We suppose an attacker could get more power than the honest nodes he can alter
the chain.
He can’t alter it in any way he wants, as honest nodes wouldn’t accept an invalid
transaction/block (such as sending other people money to himself or creating
money out of thin air).
The only option is to alter the outputs of his latest transactions or revert them (the
bigger the chain after the transaction the more proof of work is required to
generate the longest valid chain).
Cont.…
Calculation behind the results shows that the probability of the attacker catching
up decreases exponentially the more blocks are confirmed.
Conclusion
The paper proposes an electronic transactions system that relies on distrust.
Ownership is proven by digital signatures while double-spending is mitigated through
the PoW-based P2P network.
All rules and incentives are enforced within the network consensus.
Bad actors are penalized while honest ones are rewarded.
Bitcoin is based on distrust although most users still rely on 3rd party services.
It is a distributed network based on inefficiency, which limits the transactions per
second that can go through.
Thanks…