Beruflich Dokumente
Kultur Dokumente
A Decentralized computation and information sharing platform that enables multiple authoritative domains, who do
not trust each other, to co-operate, co-ordinate and collaborate in a rational decision making process.
Traditional Document Sharing Method (using word document):
Contents are written inside word document.
The word document is shared between users.
One user creates the document and send it to the other person for viewing and editing.
The second person edits the document and sends it back to the first user.
Disadvantages of the Traditional Approach:
Editing the document simultaneously is not possible.
Next Stage (Like Google document)
Simultaneous editing is possible.
The document is stored in a centralized location.
Disadvantages of Central document repository
o A single point of failure.
o If you don’t have sufficient bandwidth you will not be able to edit it.
o If server crashes, no recovery.
Solution – We have to move from a centralized platform to a distributed platform.
Centralized Vs Decentralized Vs Distributed:
Centralized – Reliance on single point.
Decentralized – Multiple point of co-ordinateion.
Distributed – Everyone collectively executes the job.
Blockchain –
The internet database to support decentralization.
A decentralized database with strong consistency support
How it Works:
Each individual has own copy of document.
The network or block chain will try to update both the document, so that every individual will see latest copy
of the document.
Advantage
o No need to relay on the network
o No need to relay on server. (Even if server crashes)
Lecture 2
Merkle Trees:
The Key point in Markle tree is that any change in any document will change the Root Note. By sharing the Markle
root, we can secure all the four documents is a single shot.
What is Bitcoin?
Bitcoin is a completely decentralized, peer-to-peer, permissionless cryptocurrency put forth in 2009 by Nakmoto,
Satoshi.
Completely decentralized – no central party for ordering or recording anything.
Peer-to-Peer : software that runs on machines of all stakeholders to form the system.
Permissionless: no identity, no need to signup anywhere to use; no access control – anyone can participate in any
role.
Smart Contracts: An automated computerized protocol used for digitally facilitating, verifying or enforcing the
negotiation or performance of a legal contract by avoiding intermediates and directly validating the contract over a
decentralized platform – faster, cheaper and more secure.
Block in Blockchain:
What is inside the block of the blockchain? – They contain transaction that are digitally signed, encrypted and
verified by the peers. The participants can only view the transactions that they are authorized to see.
Structure of Block:
A block is a container data structure that contains a series of transactions.
In Bitcoin, A block can contain 500 transactions on average, the average size of the block is around 1 MB.
(Original Limit)
Can grow update 8 Mb or more (Current scenario). The bigger the block size, higher the number of
transactions that are getting processed.
Block Identifier – the hash of the current block header (Hash algorithm : Double SHA 256)
List of Transactions
o Arranged in the form of Markle Tree.
The Consensus Algorithm – It ensures that all the nodes are synced with each other.
All the nodes in the network need to agree or consent on a regular basis, that the data stored by them is the
same.
Ensure that different nodes in the network see the same data at nearly the same point of time.
www.linkedin.com/pulse/why-so-delirious-blockchain-technical-view-praveen-jayachandran/
Week 1 – Unit 1 -Lecture 04 – Introduction of Blockchain – IV (Conceptualization)
Peer Addresses (Ref:Bitcoin)
Address in bitcoin is synonymous to an ACCOUNT in a bank.
The wallet listens for transactions addressed to an account
o Encrypts the transactions by the public key of the target address
o Only the target node can decrypt the transaction and accept it
However, the actual transaction amount is open to all for validation
Hyperledger Fabric:
A permissioned blockchain framework provides an enterprise-grade foundation for transactional
applications.
Supports smart contracts – ensure security and integrity.
Very different from BitCoin and Ethereum which does not support privacy and confidential transactions.
Fabric supports the notion of channels, a “subnet” of peers.
o Gives restricted visibility – important for business applications.
Fabric has no notion of mining, uses the notion of distributed consensus under a closed environment.
Cryptographic Hash Pointer – Pointer to a location where some information is stored, Hash of the information is
stored.
With the hash pointer, we can retrieve the information, Check that the information has not been modified.
Week 2 – Lecture 1
Basic Crypto Primitives – II
Digital Signature:
A digital code, which can be included with an electronically transmitted document to verify
o The content of the document is authenticated.
o The identity of the sender
o Prevent non-repudiation – Sender will not be able to deny about the origin of the document.
Purpose
o Only the signing authority can sign a document, but everyone can verify the signature.
o Signature is associated with a particular document. Signature of one document cannot be
transferred to another document.
Week 2 – Unit 2
Bitcoin Basics – I
Bitcoin – The Beginning
Two broad operations
o Transaction Management – Transfer of bitcoins from one user to another.
o Money Issuance – Regulate the monetary base
Controlled Supply
o Must be limited for the currency to have value – any maliciously generated currency needs to be
rejected by the network.
o Bitcoins are generated during the mining – each time a user discovers a new block
o The number of bitcoins generated per block is set to decrease geometrically, with 50% reduction for
every 210,000 blocks or approximately 4 years.
o Theoretical limit for total bitcoins : slightly less than 21 million.
o Miners will get less reward as time progresses
Bitcoin – Sending Payments:
o Bitcoin uses public key cryptography to make and verify digital signatures.
o Each person may have one or more addresses each with an associated pair of public and private keys
(may hold in the bitcoin wallet)
o Double Sending
How it is avoided in Bitcoin?
Details of the transactions are sent to all or as many as possible computers.
To be accepted in the chain, transaction blocks must be valid and must include proof
of work – a computationally difficult hash generated by the mining procedure.
o Y = H(H || Nonce)
Block chain ensures that, if any of the block is modified, all following blocks will have
to be recomputed.
When multiple valid continuation to this chain appear, only the longest such branch
is accepted and it is then extended further (longest chain)
Once a transaction is committed in the block chain, everyone in the network can
validate all the transactions by using public key.
The validation prevents double spending in bitcoin.
o Bitcoin anonymity:
Bitcoin is permission-less, do not need to setup any “account”, or required any email
address, user name or password to login to the wallet.
The public and private keys do not need to be registered, the wallet can generate them for
the users.
The bitcoin address is used for transaction, not the user name or identity.
A bitcoin address mathematically corresponds to a public key based on ECDSA – the digital
signature algorithm used in bitcoin
Each person can have many such addresses, each with its own balance – Difficult to know
which person owns what amount.
Bit Coin Script:
o Along with the transaction, Signature and public key of the person is transmitted.
o A transactions is characterized by two parameters
The output of the transaction
The input of the transaction.
We need to determine that a transaction input correctly claims a transaction output.
o A programming language to validate bitcoin transactions.
A list of instructions recorded with each transaction
Describes how the next person can gain access to the bitcoins, if that person wants to spend
them.
FORTH –like language, stack based and processed left to right.
o How Forth Works:
A stacked based computer programming language originally designed by Charles Moore
A procedural programming language without type checking
Use a stack for recursive subroutine execution.
Uses reverse polish notation (RPN) or postfix notation. 2 + 3 is written as 2 3+.
Week2 – Lecture 3
Bitcoin Basis – II
Bitcoin Scripts:
Simple, Compact, Stack-based and processed left to right.
o FORTH like language.
No Turing Complete (No Loops)
Bitcoin Transactions – Input and Output