Comparison Of RC5 And RC6 Block Cipher Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Due to rapid growth in Internet and networks applications so the needs to protect such applications are increased. Encryption algorithms play a main role in information security systems. So it is desirable to develop a systematic understanding of database security concerns and their solutions and to come up with a framework. Ideally, such a framework should give some assurance that all relevant security problems have been addressed, and it can possibly point out new security issues not previously considered. It is a goal of this extended abstract and the corresponding talk to contribute to developing such framework and identifying new research directions for fruitful collaborations of the database

The information database security is dependent on many different mechanisms and techniques, such as data and user authentication, encryption, time-stamping, digital signatures, and other cryptographic mechanisms and protocols. access control, information flow control, operating system and network security. The cryptographic algorithm RC6 is an evolutionary improvement of RC5 and designed to meet the requirements of the Advanced Encryption Standard (AES). Like RC5, RC6 also makes essential use of data-dependent rotations. RC6 also has the feature of the use of four working registers instead of two, and the inclusion of integer multiplication as an additional primitive operation. The use of integer multiplication greatly enhances the diffusion achieved per round allowing for greater security, fewer rounds, and increased throughput.

Keyword:cryptography,data security,secret key length ,block size,block cipher


The word cryptography comes from the Greek word kryptos meaning hidden and graphia meaning writing. Cryptography thus literally means the art of secret writing. Cryptography is the science of devising methods which allow for information to be sent in a secure form in a way that the intended recipient would be able to retrieve the information so provides means of hiding (encryption) and recovering (decryption) information. A cipher in cryptography is an algorithm used for performing encryption & decryption - a series of well defined steps that can be followed as a procedure. In non-technical terms a "cipher" is the same thing as a "code"; however, the concepts are distinct in cryptography. The modern cipher work on either a fixed size of blocks of symbols, which is referred to as block cipher or the one which works on continuous stream of symbols called Stream cipher.

Variety of encryption algorithms are available and used in information security. They can be classified into Symmetric (private) and Asymmetric (public) keys Encryption. In Symmetric keys encryption a key is used to encrypt and decrypt data. The key is to be distributed before transmission between entities. The role of it is very important for such system. If weak key is used in algorithm then data can be decrypted by anybody.

Strength of Symmetric key encryption depends on the size of key used. For the same algorithm, encryption using longer key is harder to break than the one done using smaller key. There are many examples of strong and weak keys of cryptography algorithms like RC2, DES, 3DES, RC5, RC6, Blowfish, and AES.

In Asymmetric key encryption method two keys are used one is private and another is public. Public key is used for encryption and private key is used for decryption. Public key is known to the public and private key is known only to the user. This removes the need of distribution of keys prior to the transmission. However public key encryption is based on mathematical function, computationally intensive and is less efficient for smaller mobile devices.

Many encryption algorithms are widely available and used in information security. They can be categorized into Symmetric (private) and Asymmetric (public) keys encryption. In Symmetric keys encryption or secret key encryption, only one key is used to encrypt and decrypt data. The key should be distributed before transmission between entities. Keys play an important role. If weak key is used in algorithm then every one may decrypt the data. Strength of Symmetric key encryption depends on the size of key used. For the same algorithm, encryption using longer key is harder to break than the one done using smaller key.

Commonly Used Encryption Techniques

DES: (Data Encryption Standard), was the first (National Institute of Standards and Technology).DES is (64 bits key size with 64 bits block size). Since then, many attacks and methods recorded the drawbacks of DES, which made it an insecure block cipher [2] ,[4].

3 DES: is an advanced version of DES; it is 64 bit block size with 192 bits key size. In this standard the encryption method is similar to the original DES but applied 3 times to increase the encryption level and the average safe time. But it is found that 3DES is slower than other block cipher methods [2].

RC2: is a block cipher with a size of 64-bits and have a variable key size that varies from 8 to128 bits. RC2 is vulnerable to a related-key attack using 234 chosen plaintexts [2].

Blowfish: is block cipher 64-bit block - can be used as a replacement for the DES algorithm. It takes a variable length key, varying from 32 bits to 448 bits; default 128 bits. Blowfish is unpatented, license-free, and is available free for all uses. Blowfish has variants of 14 rounds or less. Blowfish is successor to Twofish [3].

AES: is a block cipher .Its key length ranges from 128, 192, to 256 bits; default 256. It encrypts data blocks of 128 bits in 10, 12 and 14 round depending on the key size. It is the fast and flexible encryption technique and can be explored on various platforms especially in small devices [6]. Also, AES has been carefully tested for many security applications [2], [4].

RC5: is a block cipher with a 64-bits block cipher with a variable key size that varies from 8 to128 bits. It is the fast and flexible encryption technique and can be explored on various platforms especially in small devices. While this is fast compared to most block ciphers, it is disappointingly slow compared to what might be expected, again pointing out the danger in estimating the speed of an algorithm from a high-level language without understanding the underlying processor limitations.[5]

RC6: is block cipher derived from RC5. It was designed to meet the requirements of the Advanced Encryption Standard competition. RC6 proper has a block size of 128 bits and supports key sizes of 128, 192 and 256 bits. Some references consider RC6 as Advanced Encryption Standard [2].[7]

In the present work, a comparison is carried out between RC 5 and RC 6. In the later part an attempt is made to compare different encryption techniques based on energy, change of packet size, change of key size.

Performance Comparison between RC5 and RC6 symmetric key algorithms:

RC5 is a parameterized algorithm with a variable block size, a variable key size, and a variable number of rounds. Allowable choices for the block size are 32 bits (for experimentation and evaluation purposes only), 64 bits (for use a drop-in replacement for DES), and 128 bits. The number of rounds can range from 0 to 255, while the key can range from 0 bits to 2040 bits in size. Such built-in variability provides flexibility at all levels of security and efficiency.

There are three routines in RC5: key expansion, encryption, and decryption. In the key-expansion routine, the user-provided secret key is expanded to fill a key table whose size depends on the number of rounds. The key table is then used in both encryption and decryption. The encryption routine consists of three primitive operations: integer addition, bitwise XOR, and variable rotation. The exceptional simplicity of RC5 makes it easy to implement and analyze. Indeed, like the RSA system, the encryption steps of RC5 can be written on the "back of an envelope".

The heavy use of data-dependent rotations and the mixture of different operations provide the security of RC5. In particular, the use of data-dependent rotations helps defeat differential and linear cryptanalysis.

As technology improves, and as the true strength of RC5 algorithms becomes better understood through analysis, the most appropriate parameter values can be chosen. The choice of r affects both encryption speed and security. For some applications, high speed may be the most critical requirement-one wishes for the best security obtainable within a given encryption time requirement. Choosing a small value of r (say r = 6) may provide some security, albeit modest, within the given speed constraint

RC6 is a block cipher based on RC5 and designed by Rivest, Sidney, and Yin for RSA Security. Like RC5, RC6 is a parameterized algorithm where the block size, the key size, and the number of rounds are variable; again, the upper limit on the key size is 2040 bits. The main goal for the inventors has been to meet the requirements of the AES. There are two main new features in RC6 compared to RC5: the inclusion of integer multiplication and the use of four b/4-bit working registers instead of two b/2-bit registers as in RC5 (b is the block size). Integer multiplication is used to increase the diffusion achieved per round so that fewer rounds are needed and the speed of the cipher can be increased. The reason for using four working registers instead of two is technical rather than theoretical. Namely, the default block size of the AES is 128 bits; while RC5 deals with 64-bit operations when using this block size, 32-bit operations are preferable given the intended architecture of the AES. However, RC6 may remain a trademark of RSA Security. RC5 using 128-bit encryption is still considered one of the safest encryption methods.

A comparative analysis between the block cipher RC5, and RC6 is performed to provide some measurements on the encryption and decryption. Effects of several parameters such as number of rounds, block size, and the length of secret key on the performance evaluation criteria are


Table No. I shows the results of a study between RC5 and RC6 block cipher for different design parameters such as word size, block size, number of rounds and secret key size. It is already known that as the no of rounds and the secret key length increases the security of encrypted data is more. Here the RC6 have a clear upper hand.




W (word size in bits)



R (no. of rounds)



B (key length in bytes)



Block size in words



Block size in bits



Max block size in bits



No. of keys derived

2r + 2

2r + 4

Used operation


+,-,ƒ…, *, <<<,>>>

Table no. I Comparison between RC5 & RC6 block cipher at different design parameters.[1][6]

A comparison for the throughput of encryption and decryption as a function of secret key length is shown in Table II Also as far as throughput in a encryption algorithm is concerned, it depends upon the length of secret key length used for encrypting the data. It is also very clear that RC6 gives more throughput .The table shows the throughput for both RC5 and RC6 algorithm at various key lengths with 32 bit word size and 20 no. of rounds kept constant but high security requires large number of rounds, so there is a trade off between high security and high throughput. [1],[6]

The effect of number of rounds on both the throughput (Th) for RC5 and RC6 is given in Table no. III. The block size and secret key length are both constant, w = 32 and b = 16 and same is shown on graph. The result shows that with a constant word size and constant key length RC6 has more throughput than RC5 . However the throughput of encryption and decryption decreases with increasing number of rounds and vice versa. High throughput requires less number of rounds,


The article describes about a detailed comparative study for the well-known block ciphers RC5 and RC6. The comparison is made based on several design parameters of the two algorithms among which are word size, number of rounds and length of secret key. Effect of number of rounds, secret key length and data block size on encryption time and system throughput is also studied. The comparison also shows that RC6 cipher achieve maximum throughput and minimum encryption time compared with RC5 The RC6 block cipher offers a simple, compact, and flexible block cipher. It can be easily implemented for encryption. We believe that on all counts RC6 is most suitable to be chosen as the AES