Symmetric Cryptography
Introduction
This tutorial will be usefull for you if:
- you don't trust to existing symmetric ciphers (3DES, Rijndale and others);
- you wish to use really secure and fast cipher;
- you think cryptography is like a magic or very complex.
This tutorial will help you to create symmetric cipher in 30 mins.
Symmetric ciphers use the same keys for both encryption and decryption of a message. They are designed to be easily computable and able to process even large messages in real time.
Block symmetric cipher operates on fixed-length groups of bits, called blocks. Block of N bits from the plaintext should be replaced with a block of N bits from the ciphertext.
For process each block we are going to use Feistel network.
So, for create simple symmetric cipher we should:
- Define block size and split plain text into blocks
- Represent each block as positive integer number
- Define Feistel network parameters (Rounds count, Key length)
- Design Round function
- Encrypt each block with Feistel network
- Decryp cipher text
Lets start
Page 1 of 11