Cryptology - Secret Key Algorithm
Cryptography is being used from centuries as a mean of transforming data to an intended person, without letting any other person understand the same. Encryption and decryption methods have improved many folds from the day they were developed. Let us introduce ourselves to some of the interesting algorithms from the world of Cryptography.
Traditionally the encryption and decryption were algorithms relied on Very long keys for their security. Nowadays the encryption algorithm is made so complex that even if anyone succeeds in collecting large data (encrypted/cipher text), he will not be able to use it, and won't even be able to understand anything from the same.
The transposition and substitutions are implemented with simple circuits, which use permutations of input lines and generate some altered output, this device is known as P-box. This P-box is used to effect a transposition on an 8-bit (or more) input. Let us take an example: if we have 8-bit input: 01234567, the P-box is configured in such a way that if these 8-bits are imputed to the P-box, the output that we will get is 25764031. In simple words, the bits are changed for the position. Thus, a P-box is used to perform any transposition in nearly no time.
The next thing i.e. substitution is performed by a device called S-box, for example, if we take a simple S-box which consists of a 3 to 8 bit decoder at the input, a P-box and 8 to 3 encoder at the output i.e. if we enter a 3-bit plain text at the input, a 3-bit cipher text will be received as an output. The 3 to 8 decoder will transform 3-bit data to 8-bit data and this data will be transformed internally, the 3-bit input selects one of the 8 lines existing from the first stage and sets it to 1; all the other lines are 0. Then this received data will be encoded into 3-bit data using 8 to 3 bit encoder. The device used for transposing the 8-bit data is a P-box, the working of which we just discussed in above part. The third stage in S-box encodes the input line that is selected by P-box into binary again. Thus if an octal number is selected e.g. 01234567 as an input, then the output sequence will be 34621705, where 0 is replaced by 3, 1 by 4 and so on. Thus, by using appropriate wiring of P-box inside the S-box, any substitution can be accomplished.
This method seems to be very easy and powerless at first glance, but if an appropriate combination of these basic elements, cascaded in proper way gives a very powerful encryption and decryption mechanism. For example consider that we want to encrypt 12-bit data, so 12 input lines are transposed by first stage, then take 4 S-boxes as second stage, which will map 12 bit number onto another 12 bit number with the help of 4 3-bit substitution boxes. Then P-box is used as a next stage to transpose the data. This specific arrangement is used to create a "Product Cipher" box, which combines P-box and S-box arrangements. If we add sufficiently large number of stages in the product cipher, the output can be made to be an exceedingly complicated function of the input.
Like This Article? Please Share!

Post Comment | View Comments


