Blockchain Tutorial

Blockchain Tutorial History of Blockchain Blockchain Terminologies Working of Blockchain Blockchain vs DLT Blockchain Versions Smart Contracts Blockchain Applications Cryptography Role of Bitcoin Miners Blockchain Hash Function Bitcoin Basic Component Blockchain Block Hashing How to Block Hashes Work in Blockchain Blockchain Pow Coinbase Transaction Key Concepts in Bitcoin Key Areas of Blockchain Blockchain Cryptocurrency Blockchain DAO Blockchain Double Spending Blockchain Bitcoin Cash Bitcoin Forks and SegWit Blockchain Merkle Tree Difference between Blockchain and Database Bitcoin Mitigating Attacks Who sets the Bitcoin Price Getting Started with Bitcoin How to choose Bitcoin Wallet Sending and Receiving Bitcoin Converting Bitcoins to Fiat Currency Ethereum 2.0 Blockchain Data Management Steps to become a Blockchain developer Smart Contracts Advantages of Blockchain in healthcare Decentralized Voting System using Blockchain Demur-rage currencies in Blockchain How can Blockchain Technology help IoT to reach its full potential Project Ideas on Blockchain for Professionals Consensus Algorithms in Blockchain Top 10 Blockchain Project Concepts Uses of Blockchain Obtaining Free Test Ethers What does a Blockchain contain What does the IT industry mean by BaaS Top Blockchain Project Ideas for Beginners

Cryptography

Introduction and Features of Cryptography DNA cryptography ECB Mode in Cryptography Elliptic curve in cryptography Format String Vulnerabilities in Cryptography and Network Security Kerberos in Cryptography and Network Security Blowfish Algorithm in Cryptography Data Encryption Standards Feistel Cipher in Cryptography HMAC Algorithm in Cryptography IP Security in Cryptography ElGamal Algorithm ElGamal Cryptosystem What is IDEA Advantages of Cryptography Role of Bitcoin Miners Blockchain Hash Function Blockchain Merkle Tree Blockchain Pow Coinbase Transactions Consensus Algorithms in Blockchain Converting Bitcoins to Fiat Currency Decentralized Voting System using Blockchain Demur-rage currencies in Blockchain Difference between Blockchain and Database Difference between Symmetric and Asymmetric Encryption Ethereum 2.0 Getting Started With Bitcoin How can Blockchain Technology help IoT to reach its full potential? How does Digital Signature Work Advantages of Blockchain in healthcare Basic Component of Bitcoin Bitcoin Forks and SegWit Bitcoin Mitigating Attacks Blockchain Bitcoin Cash Blockchain Block Hashing Blockchain Cryptocurrency Blockchain DAO Blockchain Data Management Blockchain Double Spending What does Blockchain contain? What does the IT industry mean by BaaS (Blockchain as a Service)? Who sets the Bitcoin Price? Working of Block Hashes in Blockchain How to Choose Bitcoin Wallet? Key Areas of Blockchain Key Concepts in Bitcoin Obtaining Free Test Ethers for the Rinkeby Test Network on the Ethereum Blockchain Project Ideas on Blockchain for Professionals Sending and Receiving Bitcoin Top 10 Blockchain Project Concepts Uses of Blockchain What do you need to do to become a Blockchain Developer? Blockchain Technology-Introduction

Data Encryption Standards

The Data Encryption Standards was introduced by the National Institute of Standards and Technology. A Feistel Cipher is implemented in DES. The Data Encryption Standards was developed by the company named IBM in the early 1970s and the development of this system is based on the inventions of Horst Feistel.

The popularity of the Data Encryption Standard (DES) has been discovered to be slightly declining because of the discovery that DES is susceptible to very strong attacks. Data encryption standard usually works based on block cypher, and it encrypts the data in 64bits each. The key is 56 bits long.

History of Data Encryption Standards

The National Bureau of Standards first studied the security of US government computers in 1972 and found a need for a government-wide standard for encrypting sensitive, unclassified data. This is when DES was born.

How does Data Encryption Work?

As a result, the original 64-bit key is reduced to a 56-bit key by throwing away every eighth bit of the key. DES is built on substitution (also known as confusion) and transposition, two key components of cryptography (also called diffusion). Each of the 16 steps in DES is referred to as a round. In Data Encryption standards, all the 16 steps are a single round.  The stages of substitution and transposition are carried out in each round.

  • The 64-bit plain text block is sent to the initial Permutation (IP) function in the first phase.
  • The first permutation is applied to plain text.
  • The encryption process now includes 16 cycles for both LPT and RPT.
  • After reuniting LPT and RPT, the combined block is sent through a Final Permutation (FP).
  • This procedure generates 64-bit ciphertext as the result.

Steps in Data Encryption Standards

There are three steps in the Data Encryption.

  • Initial Permutation
  • Key Transformation
  • Expansion Permutation

Initial Permutation

Before the first round, the initial permutation (IP) occurs only once. As seen in the graphic, it makes suggestions for how IP transposition should go. Nothing more than a bit-position juggling game with the initial plain text block is being done here. All other bit locations are subject to the same regulation.

Simple bit-position juggling with the initial plain text block is all that is involved in this. The same principle applies to all other bit places shown in the illustration.

Data Encryption Standards

Key Transformation

As mentioned, the initial 64-bit key is reduced to 56 bits by throwing away every eighth bit. Consequently, a 56-bit key is accessible for each. A procedure known as key transformation is used to create a unique 48-bit Sub Key from this 56-bit key throughout each round. The 56-bit key is split into two parts, each of 28 bits, for this purpose. Depending on the round, these halves have a circular left shift of one or two locations.

For instance, if the round number is 1, 2, 9, or 16, the circular shift is carried out by two positions for additional rounds. The figure displays how many key bits are shifted per cycle.

Data Encryption Standards

48 of the 56 bits are chosen after the proper shift. The table is depicted in the image below for choosing 48 of the 56 bits. For instance, bit number 14 shifts to the first position following the shift, followed by bit number 17, and so on. We can see that the table only has 48-bit positions if we look at it closely. To decrease a 56-bit key to a 48-bit key, bit number 18 is eliminated along with 7 other bits (bit number 18 will not appear in the table).

Data Encryption Standards

Expansion Permutation

The term "expansion permutation" refers to the permutation of bits as well. This occurs because the 32-bit RPT is split into 8 blocks, each of which has 4 bits. Then, after adding 2 extra bits to each 4-bit block, each 4-bit block from the previous phase is increased to a corresponding 6-bit block. While producing output, this process causes the input bit to expand and be permuted. The 56-bit key is compressed to 48 bits during the key translation procedure. The 32-bit RPT is then expanded to 48 bits by the expansion permutation method. The 48-bit key and 48-bit RPT are now XORed before the output is given to the S-Box substitution.