Elements of Cryptography
Elements of Cryptography
Elements of Cryptography
Elements of Cryptography
• Hash function,
• Properties of a hash function,
• Puzzle friendly Hash,
• Collison resistant hash,
• digital signatures,
• public key crypto,
• verifiable random functions
Cryptography
• The goal of cryptography is to transform any data from its
original form, called the plaintext, into an obscure form
known as the ciphertext. This process is called encryption.
• The reverse process of recovering the plaintext from the
ciphertext is called decryption.
• It is essential to understand that the plaintext does not have
to be a textual message. It can be a computer file representing
binary or other types of data, an image, a database and so on
• The process of encrypting plaintext using a particular
algorithm depends on a code, commonly known as the secret
key. A secret key is nothing but a large number
• Use
• Message (Plain Text): This is Block chain class
• Key = 4
• A-> D, B-> E, C-> F
• ABCDEFGHIJKLMNOPQRSTUVWXYZ
• Difficult to find any two messages that hash to the same value
i.e difficult to find x and x’ with same hash value.
• Weak and Strong Collisions are not same
• Weak Collision resistance is bound to particular resistance
Hash Function: Three security properties
• SHA-3:
– This is the latest family of SHA functions. SHA3-224,
SHA3-256, SHA3-384, and SHA3- 512 are members
of this family.
– SHA-3 is a NIST-standardized version of Keccak.
Secure Hash Algorithms (SHA)
• RIPEMD:
– RIPEMD is the acronym for RACE Integrity Primitives Evaluation
Message Digest.
– It is based on the design ideas used to build MD4.
– There are multiple versions of RIPEMD, including 128-bit, 160-bit,
256-bit, and 320-bit.
• Whirlpool:
– This is based on a modified version of the Rijndael cipher known as
W.
– It uses the Miyaguchi-Preneel compression function, which is a type
of one-way function used for the compression of two fixed-length
inputs into a single fixed-length output.
– It is a single-block length compression function.
Applications of cryptographic hash
functions
• Cryptographic parameters are used in blockchains
to provide various protocol-specific service
• For example, hash functions are used to build
Merkle trees, which are used to efficiently and
securely verify large amounts of data in
distributed systems.
• Some other applications of hash functions in
blockchains are to provide several security
services
Applications of cryptographic hash
functions
1. Hash functions are used in cryptographic puzzles such
as the proof of work (PoW) mechanism in Bitcoin.
– Bitcoin’s PoW makes use of the SHA-256 cryptographic
hash function.
Introduction to HDFS 28
Unique features of HDFS
HDFS also has a bunch of unique features that make it ideal for distributed
systems: