Efficient Implementation Of Cryptographically Useful"Large"Boolean Functions
Published on Aug 15, 2016
The art and science of keeping messages secure is cryptography and it is practitioned by cryptographers. Cryptography is used to solve problems. It solves problems involving secrecy, authentication and integrity. We present a low cost hardware architecture consisting of large Boolean functions and stream ciphers for implementing cryptography.
The main idea of implementing cryptography using this technique centers around the generation of pseudorandom bits using Linear Feedback Shift Registers implemented through the pipeline concept. This technique is based on symmetric key algorithm.
We have presented the reasons for implementing cryptography using symmetric key algorithm rather then going for public key algorithm. Using this technique we can achieve cryptography using a low cost hardware architecture which is very efficient for providing security to our data.
Cryptography provides the necessary tools for accomplishing private and authenticated communication and for performing secure and authenticated transactions over the Internet as well as other networks. It is highly probable that every single bit of information flowing through our networks will have to be either encrypted or signed and authenticated in a few years from now.
Historically, four groups of people have used and contributed to the art of cryptography: The military, the diplomatic corps, diarists, and lovers. Of these, the military has had the most important role and has shaped the field. Within military organizations, the messages to be encrypted have traditionally been given to poorly paid clerks for encryption and transmission.
Until the advent of computers, one of the main constraints on cryptography had been the ability of the code clerk to perform the necessary transformations, often on a battlefield with little equipment. An additional constraint has been the difficulty in switching over quickly from one cryptographic method to another one, since this entails retraining a large number of people.
Modern cryptography is based on key, denoted by K. This key might be any one of a large number of values. The range of possible values of the key is called the keyspace. Both the encryption and decryption operations use this key, so the functions are given as:
where M is the message and C is ciphertext. A message is nothing but plaintext. The process of disguising a message in such a way as to hide its substance is encryption. An encrypted message is ciphertext. The purpose of turning cipher text back into plaintext is decryption.
Need for symmetric algorithms
There are two general types of key-based algorithms: Symmetric and Public-key. The number and length of messages are far greater with public-key algorithms than with symmetric key algorithms. The conclusion was that the symmetric algorithm was more efficient than public-key algorithm. The RSA system belonging to public-key algorithm ran about one-thousandth as fast as DES (Data Encryption Signature) and required keys about ten times as large.
Although it had been obvious from the beginning that the use of public key systems could be limited to exchanging keys for symmetric cryptography, it was not immediately that this was necessary. Symmetric cryptography is best for encrypting data. It is orders of magnitude faster and is not susceptible to choose cipher text attacks as with public-key.