CLASS 7
Data Structures 2S2019
Blockchain
As its name implies a blockchain is a chain or list
of blocks or records, this blocks are linked using
cryptographic principles. By design, a blockchain is
resistant to modification of the data. Blockchain
was invented by a person or group of people using
the name Satoshi Nakamoto in 2008 to serve as
the public transaction ledger of the cryptocurrency
bitcon. The identity of Satoshi Nakamoto is
unknown.
Block
A single block of a blockchain consist of a number
of attributes, since this blocks are linked thru
cryptography the principal attributes are:
■ Hash: The Hash string of the current block.
■ previousHash: The Hash string of the last block
(For the genesis block this number is arbitrary).
There are also other common attributes used such
as:
■ Index: number of the current block.
■ Timestamp: Date and time of creation.
■ Data: the data stored in the block.
How is blockchain stored?
A blockchain is typically managed by a
peer-to-peer network collectively
adhering to a protocol for inter-node
communication and validating new
blocks. A Peer-to-peer network or P2P
is an architecture that partitions tasks
or workloads between peers. Which
are equally privileged, equipotent
participants int the application and
usually referred as a peer-to-peer
network of nodes.
Cryptographic principles
Cryptographic is more than jus encryption.
■ Encryption: in its simplest form its converting data into and
unreadable form. Protecting the data from both the sender
and the receiver
■ Authentication: what good is encryption if we cant
authenticate it?, this principle ensures that the message is
sent by whom it says it was sent.
■ Integrity: Cryptography should ensure that the messages
received have not been altered in any way.
■ Non repudiation: this ensures thru the use of signatures
that the receiver does not denies the sender message.
Based on this techniques there are 3 basic cryptography
techinques:
■ Secret key cryptography
■ Public key cryptography
■ Hash Function
Hash Function
It’s a technique that does not involve the use of keys but rather a fixed length hash
value that is computed on the basis of a plain text message. This functions are
commonly used to check the integrity of a message, that this message has not been
altered or compromised.
SHA-2
Secure Hash Algorithm 2 is a set of cryptographic hash functions designed by the
United States National Security Agency (NSA). It consists of 6 functions that are 224,
256, 384 or 512 bits:
■ SHA-224
■ SHA-256
■ SHA-384
■ SHA-512
■ SHA-512/224
■ SHA-512/256
The technical limit for an input string in SHA-256 is ~= 2’091’752 terabytes, just
reading that quantity of data would take about 220 years using the fastest SSD’s on the
market.