All Topics  
Serpent (cipher)

 

   Email Print
   Bookmark   Link






 

Serpent (cipher)



 
 
Serpent is a symmetric key block cipher
Block cipher

In cryptography, a block cipher is a symmetric key algorithm cipher which operates on fixed-length groups of bits, termed blocks, with an unvarying transformation....
 which was a finalist in the Advanced Encryption Standard (AES) contest
Advanced Encryption Standard process

The Advanced Encryption Standard , the block cipher ratified as a standard by National Institute of Standards and Technology of the United States , was chosen using a process markedly more open and transparent than its predecessor, the aging Data Encryption Standard ....
, where it came second to Rijndael. Serpent was designed by Ross Anderson
Ross Anderson

Ross John Anderson is a researcher, writer, and industry consultant in security engineering.He is Professor in security engineering at the University of Cambridge University of Cambridge Computer Laboratory, where he is engaged in the ....
, Eli Biham
Eli Biham

Eli Biham is an Israeli cryptographer and Cryptanalysis, currently a professor at the Technion Israeli Institute of Technology Computer Science department....
, and Lars Knudsen
Lars Knudsen

Lars Ramkilde Knudsen is a Denmark researcher in cryptography, particularly interested in the design and cryptanalysis of block ciphers, cryptographic hash function and message authentication codes ....
.

Like other AES
Advanced Encryption Standard

In cryptography, the Advanced Encryption Standard is an encryption standard adopted by the Federal government of the United States. The standard comprises three block ciphers, AES-128, AES-192 and AES-256, adopted from a larger collection originally published as Rijndael. Each AES cipher has a 128 bit block size, with key sizes of 128...
 submissions, Serpent has a block size
Block size (cryptography)

In modern cryptography, symmetric key algorithm ciphers are generally divided into stream ciphers and block ciphers. Block ciphers operate on a fixed length string of bits....
 of 128 bits and supports a key size
Key size

In cryptography, key size or key length is the size of the key used in a cryptographic algorithm . An algorithm's key length is distinct from its cryptographic security, which is a logarithmic measure of the fastest known computational attack on the algorithm, also measured in bits....
 of 128, 192 or 256 bits. The cipher
Cipher

In cryptography, a cipher is an algorithm for performing encryption and decryption — a series of well-defined steps that can be followed as a procedure....
 is a 32-round substitution-permutation network
Substitution-permutation network

In cryptography, an SP-network, or substitution-permutation network , is a series of linked mathematical operations used in block cipher algorithms such as Advanced Encryption Standard....
 operating on a block of four 32-bit words. Each round applies one of eight 4-bit to 4-bit S-boxes 32 times in parallel.






Discussion
Ask a question about 'Serpent (cipher)'
Start a new discussion about 'Serpent (cipher)'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Serpent is a symmetric key block cipher
Block cipher

In cryptography, a block cipher is a symmetric key algorithm cipher which operates on fixed-length groups of bits, termed blocks, with an unvarying transformation....
 which was a finalist in the Advanced Encryption Standard (AES) contest
Advanced Encryption Standard process

The Advanced Encryption Standard , the block cipher ratified as a standard by National Institute of Standards and Technology of the United States , was chosen using a process markedly more open and transparent than its predecessor, the aging Data Encryption Standard ....
, where it came second to Rijndael. Serpent was designed by Ross Anderson
Ross Anderson

Ross John Anderson is a researcher, writer, and industry consultant in security engineering.He is Professor in security engineering at the University of Cambridge University of Cambridge Computer Laboratory, where he is engaged in the ....
, Eli Biham
Eli Biham

Eli Biham is an Israeli cryptographer and Cryptanalysis, currently a professor at the Technion Israeli Institute of Technology Computer Science department....
, and Lars Knudsen
Lars Knudsen

Lars Ramkilde Knudsen is a Denmark researcher in cryptography, particularly interested in the design and cryptanalysis of block ciphers, cryptographic hash function and message authentication codes ....
.

Like other AES
Advanced Encryption Standard

In cryptography, the Advanced Encryption Standard is an encryption standard adopted by the Federal government of the United States. The standard comprises three block ciphers, AES-128, AES-192 and AES-256, adopted from a larger collection originally published as Rijndael. Each AES cipher has a 128 bit block size, with key sizes of 128...
 submissions, Serpent has a block size
Block size (cryptography)

In modern cryptography, symmetric key algorithm ciphers are generally divided into stream ciphers and block ciphers. Block ciphers operate on a fixed length string of bits....
 of 128 bits and supports a key size
Key size

In cryptography, key size or key length is the size of the key used in a cryptographic algorithm . An algorithm's key length is distinct from its cryptographic security, which is a logarithmic measure of the fastest known computational attack on the algorithm, also measured in bits....
 of 128, 192 or 256 bits. The cipher
Cipher

In cryptography, a cipher is an algorithm for performing encryption and decryption — a series of well-defined steps that can be followed as a procedure....
 is a 32-round substitution-permutation network
Substitution-permutation network

In cryptography, an SP-network, or substitution-permutation network , is a series of linked mathematical operations used in block cipher algorithms such as Advanced Encryption Standard....
 operating on a block of four 32-bit words. Each round applies one of eight 4-bit to 4-bit S-boxes 32 times in parallel. Serpent was designed so that all operations can be executed in parallel
Parallel computing

Parallel computing is a form of computing in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved Concurrency ....
, using 32 1-bit slices. This maximizes parallelism, but also allows use of the extensive cryptanalysis
Cryptanalysis

Cryptanalysis is the study of methods for obtaining the meaning of encrypted information, without access to the secret information which is normally required to do so....
 work performed on DES
Data Encryption Standard

The Data Encryption Standard is a block cipher that was selected by National Bureau of Standards as an official Federal Information Processing Standard for the United States in 1976 and which has subsequently enjoyed widespread use internationally....
.

Serpent was widely viewed as taking a more conservative approach to security than the other AES
Advanced Encryption Standard

In cryptography, the Advanced Encryption Standard is an encryption standard adopted by the Federal government of the United States. The standard comprises three block ciphers, AES-128, AES-192 and AES-256, adopted from a larger collection originally published as Rijndael. Each AES cipher has a 128 bit block size, with key sizes of 128...
 finalists, opting for a larger security margin: the designers deemed 16 rounds to be sufficient against known types of attack, but specified 32 rounds as insurance against future discoveries in cryptanalysis.

The Serpent cipher has not been patented. It is completely in the public domain
Public domain

File:PD-icon.svgThe public domain is a range of abstract materials?commonly referred to as intellectual property?which are not owned or controlled by anyone....
 and can be freely used by anyone. There are no restrictions or encumbrances whatsoever regarding its use. As a result, anyone is free to incorporate Serpent in their software (or hardware implementations) without paying license fees.

Rijndael vs. Serpent

Rijndael is a substitution-linear transformation network with ten, twelve, or fourteen rounds, depending on the key size, and with block sizes of 128 bits, 192 bits, or 256 bits, independently specified. Serpent is a substitution-linear transformation network which has thirty-two rounds, plus an initial and a final permutation to simplify an optimized implementation. The round function in Rijndael consists of three parts: a nonlinear layer, a linear mixing layer, and a key-mixing XOR layer. The round function in Serpent consists of key-mixing XOR, thirty-two parallel applications of the same 4x4 S-box, and a linear transformation, except in the last round, wherein another key-mixing XOR replaces the linear transformation. The nonlinear layer in Rijndael uses an 8x8 S-box whereas Serpent uses eight different 4x4 S-boxes. The 32 rounds make Serpent have a higher security margin than Rijndael; however, Rijndael with 10 rounds is faster and easier to implement for small blocks. Hence, Rijndael was selected as the winner in the AES competition.

Security

The XSL attack
XSL attack

In cryptography, the XSL attack is a method of cryptanalysis for block ciphers. The attack was first published in 2002 by researchers Nicolas Courtois and Josef Pieprzyk....
, if effective, would weaken Serpent (though not as much as it would weaken Rijndael, which became AES
Advanced Encryption Standard

In cryptography, the Advanced Encryption Standard is an encryption standard adopted by the Federal government of the United States. The standard comprises three block ciphers, AES-128, AES-192 and AES-256, adopted from a larger collection originally published as Rijndael. Each AES cipher has a 128 bit block size, with key sizes of 128...
). However, many cryptanalysts believe that once implementation considerations are taken into account the XSL attack would be more expensive than a brute force attack
Brute force attack

In cryptanalysis, a brute force attack is a method of defeating a cryptographic scheme by systematically trying a large number of possibilities; for example, a large number of the possible key s in a key space in order to decrypt a message....
.

See also

  • Tiger
    Tiger (hash)

    In cryptography, Tiger is a cryptographic hash function designed by Ross Anderson and Eli Biham in 1995 for efficiency on 64-bit platforms. The size of a Tiger hash value is 192 bits....
     - hash function by the same authors.


External links

  • - NYTimes May 5 2008