As we all know, a block-chain is a decentralized and distributed digital ledger that is used to record transactions across many computers so that the record cannot be altered retroactively without the alteration of all subsequent blocks and the collusion of the network. This allows the participants to verify and audit transactions inexpensively.
The working process involves 3 components:
2) A distributed network with a shared ledger
3) Record-keeping and security.
Now, lets see about the first component ‘ Cryptography’ in detail.
Cryptography is the science concerned with the study of secret communication. Cryptography is the study and practice of encrypting and decrypting. It allows people to better understand the encryption practices of others.
Cryptography is basically a method of storing and transmitting data in a particular form so that only those for whom it is intended can read and process it. A plain-text [data to be transmitted] is converted into cipher text [data that is transmitted] through encryption process and received again as plain-text through decryption process. People practicing cryptography are known as cryptographers.
So, the two main process involved in Cryptography are ‘Encryption’ and ‘Decryption’. From the above block diagram, you can clearly understand that the process of converting plain-text to cipher-text is Encryption and vice versa is Decryption.
Before understanding about Encryption and Decryption, you should be aware of these keywords.
During Encryption,an algorithm is performed on plain text to convert it to cipher text. This algorithm is known as cipher. A cryptographic key is mandatory to run cipher. The combination of cryptographic key and cipher is Encryption.
Encoding and Decoding:
Encoding should not be confused with Encryption. In Encryption ,our main aim is to hide/conceal the data. But its not so in encoding.
Encoding is basically a process of converting data into a format that can be understood and used by the external sources for storage/processing/compilation/execution so on. Encoding converts body of information from one form to another form with the help of codes. Code is the system of symbol, sign or letters used to represent the secret meaning. The type of code used for converting characters is known as American Standard Code for Information Interchange (ASCII), the most commonly used encoding scheme for files that contain text.
Decoding is a process of interpretation of the encoded data. Decoding converts the encoded data to readable form to be used at the receiver end.
For example,at radio station audio analog signals are encoded to digital signals for easy transmission and less storage. At home, the radio decodes the signals back to wonderful audio.
Now as we are clear about cipher and encoding, let’s check out about encryption.
If we want transfer a large amount of cash money from one place to another, then what we will do? In order to protect it from robbers on the way, we put the cash in a suitcase and lock it with key. When we reach the desired place, we unlock the suitcase with the same key and give the cash.
This process is known as Encryption. To hide the data from unconcerned persons/systems, the data is encoded with a key and transmitted. At the receiver end, the cipher is decrypted with the key to receive the data.
There are two types of Encryption.
1. Symmetric/Private Key Encryption
2. Asymmetric/Public Key Encryption.
Symmetric/Private Key Encryption:
It is conventional method. The above said example is symmetric encryption. In symmetric encryption, a secret key is shared by both communicating parties. It needs less computation power. But the secret key shared between the two parties should be done in a secured way. Hence,the algorithm or cipher should be very strong.
There are two major threats to this type. Brute force or cryptanalysis.
Brute force is a method (computer) to find all possible combinations and eventually determine the plaintext message. It is hacking the key.
Cryptanalysis is a form of attack that attacks the characteristics of the algorithm to deduce a specific plaintext or the key used. One would then be able to figure out the plaintext for all past and future messages that continue to use this compromised setup. It is hacking the cipher.
Asymmetric/Public Key Encryption:
In public key encryption, two keys are used. One is public key and other is private key. Both are asymmetric but are mathematically-related. One to encrypt the message and the other to decrypt it. These two keys combine to form a key pair. Encryption strength is directly tied to key size and doubling key length delivers an exponential increase in strength, although it does impair performance. But it needs more computation power.
The hash function is used to index the original value or key and then used later each time the data associated with the value or key is to be retrieved. Thus, hashing is always a one-way operation.
The best-known use of public key cryptography is Digital Signatures.