Skip to content

Teddy937/blockchain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

Blockchain Technology

Introduction

Blockchain is a system in which a record of transactions made in bitcoin or another cryptocurrency are maintained across several computers that are linked in a peer-to-peer network.

Why Blockchain

  • There are certain issues with the current technology we are using, for example internet has changed technologies it has changed the way business works Think about facebook, google , amazon they are all running because of internet. Now internet was meant to be open to everyone but now the internet is actually controlled by few companies.and we dont want to have central power because its good now but what about the future?
  • When you do online transactions, lets say if you need to send money to someone you need a bank between, thats not really an issue but think of transaction costs, also time if you do an international transaction it can even take days thats why blockchain comes in with the idea of decentralized applications.
  • Blockchain also gives you trust, because every transaction you do online blockchaim saves it on ledger If you have a ledger there and you are storying alot of transactions, we dont want it to be changed we want every transaction to be saved in the same way for longer time and it should not be changed . we want it be immutable and blockchain does provide that
  • Secure,, the entire blochain system works on cryptography

Who should get into blockchain

  • Developers
  • Experts

Prerequisites

  • cryptography - Cryptography, or cryptology, is the practice and study of techniques for secure communication in the presence of adversarial behavior more resources
  • Distributed computing - A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system.

Cryptography in Blockchain

The blockchain works on peer-to-peer network (We don't need a central server). for example you have multipe nodes or people and the want to share music, they can do it using peer-to-peer , i.e ABCD are nodes A and B have same music album, C can download the album from A and B, lets say half from A and half from B and at the same time C can upload the album so that D can download it. Torentz works with peer-to-peer network P2P is awesome but it doesnt matter which network you are using, we have 4 main concerns:

  • Confidentiality
  • Integrity
  • Non repudiation
  • Authentication

Sender Message(Readable) - Encrption- (Message|Cipher) - Decryption - Message(Readable) - Receiver

Types of Cryptography

Digital Signature

The concept of digital signatures

Blockchain nodes

  • Full node Full node is basically a computer which will have the entire blockchain.It verify and store blocks

  • Partial Node

Hashing in Blockchain

Hashing Algorithms

Example of different hashing Algorithms:

  1. MD (Message Digest) Message Digest Algorithm 5 (MD5) is a cryptographic hash algorithm that can be used to create a 128-bit string value from an arbitrary length string. Although there has been insecurities identified with MD5, it is still widely used. MD5 is most commonly used to verify the integrity of files.
  2. SHA (Secure Hash algorithm Build by NSA (National Security Agency) is a cryptographically broken but still widely used hash function which takes an input and produces a 160-bit (20-byte) hash value known as a message digest – typically rendered as a hexadecimal number, 40 digits long. We have SHA0, SHA1 , SHA2 (normally used by bitcoin), and SHA3. Two pupoluar values for SHA2 are 256 and 512

Merkle Tree/Root

In blockchain we have several blocks connected with the hash of values. Every block will have transactions. This can be one transaction or thausands of transactions. Now if you want to find the hash of one block will you combine the hash of all transactions or find hash of each transaction in a block (this means you have to store hash of each transactions) which is not a good idea. We can solve this puzzle with the helpe of Merkle trees/root? merkle tree

Blockchain Technology Architecture

Blockchain is simply database. One example of public blockchain is Bitcoin. Bitcoin block which we use to send money may have from, to and money info all stored in bitcoin block

Blockchain architecture

Blockchain hash network (in the diagram below) Blockchain hash diagram

POW (Proof of Work)

  • a block has to be validated before making a change
  • it takes atleast 10 minutes to add the block in blockchain
  • blockchain will be stored in multiple machines
  • A concept of consensus algorithm comes in

Types of Blockchain

  • Private Blockchain. Specifically for single company

  • Federated Blockchain - group of people/companies

  • Public - Open to entire world

What is Ethereum

Ethereum is the community-run technology powering the cryptocurrency ether (ETH) and thousands of decentralized applications. Read more All these web apps runs on internet(Centralized), we need Ethereum to be able to run them on decentralized network Ethereum Virtual Machine (EVM), if you want to run softwares on Ethereum network you need this machine Basically Ethereum is a platform where you can create decentralized applications

Smart Contracts Ethereum

Case Study: Suppose we have a company ABC that is selling merchandise, and XYZ is a delivery company,, I fully trust ABC but I have trust issues with XYZ, How do we solve this? Well, if I make an order and pay, ABC will only receive the money after the product has been delivered to me by XYZ. This whole concept is called smart contracts

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published