All Topics  
Key schedule

 

   Email Print
   Bookmark   Link






 

Key schedule



 
 
In cryptography
Cryptography

Cryptography is the practice and study of hiding information. In modern times cryptography is considered a branch of both mathematics and computer science and is affiliated closely with information theory, computer security and engineering....
, the so-called product cipher
Product cipher

In cryptography, a product cipher is a popular type of block cipher that works by executing in sequence a number of simple transformations such as substitution cipher, transposition cipher, and modular arithmetic....
s are a certain kind of ciphers, where the (de-)ciphering of data is done in "rounds". The general setup of each round is the same, except for some hard-coded parameters and a part of the cipher key
Key (cryptography)

In cryptography, a key is a piece of information that determines the functional output of a cryptographic algorithm or cipher. Without a key, the algorithm would have no result....
, called a subkey. A key schedule is an algorithm that, given the key, calculates the subkeys for these rounds.








Discussion
Ask a question about 'Key schedule'
Start a new discussion about 'Key schedule'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Des Key Schedule
In cryptography
Cryptography

Cryptography is the practice and study of hiding information. In modern times cryptography is considered a branch of both mathematics and computer science and is affiliated closely with information theory, computer security and engineering....
, the so-called product cipher
Product cipher

In cryptography, a product cipher is a popular type of block cipher that works by executing in sequence a number of simple transformations such as substitution cipher, transposition cipher, and modular arithmetic....
s are a certain kind of ciphers, where the (de-)ciphering of data is done in "rounds". The general setup of each round is the same, except for some hard-coded parameters and a part of the cipher key
Key (cryptography)

In cryptography, a key is a piece of information that determines the functional output of a cryptographic algorithm or cipher. Without a key, the algorithm would have no result....
, called a subkey. A key schedule is an algorithm that, given the key, calculates the subkeys for these rounds.

Some types of key schedules


  • Some ciphers have simple key schedules. For example, the block cipher TEA
    Tiny Encryption Algorithm

    In cryptography, the Tiny Encryption Algorithm is a block cipher notable for its simplicity of description and implementation . It was designed by David Wheeler and Roger Needham of the Cambridge University Computer Laboratory; it was first presented at the Fast Software Encryption workshop in Leuven in 1994, and first published in the pro...
     simply splits the 128-bit key into four 32-bit pieces and uses them repeatedly in successive rounds.


  • 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....
     uses a key schedule where the 56 bit key is divided into two 28-bit halves; each half is thereafter treated separately. In successive rounds, both halves are rotated left by one or two bits (specified for each round), and then 48 subkey bits are selected by Permuted Choice 2 (PC-2) — 24 bits from the left half, and 24 from the right. The rotations mean that a different set of bits is used in each subkey; each bit is used in approximately 14 out of the 16 subkeys.


  • In an effort to avoid simple relationships between the cipher key and the subkeys, to resist such forms of 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....
     as related-key attack
    Related-key attack

    In cryptography, a related-key attack is any form of cryptanalysis where the attacker can observe the operation of a cipher under several different key whose values are initially unknown, but where some mathematical relationship connecting the keys is known to the attacker....
    s and slide attack
    Slide attack

    The slide attack is a form of cryptanalysis designed to deal with the prevailing idea that even weak ciphers can become very strong by increasing the number of rounds, which can ward off a differential attack....
    s, many modern ciphers use much more elaborate key schedules, algorithms that use a one-way function
    One-way function

    In cryptography, a one-way function is a function that is easy to compute on every input, but hard to invert given the image of a random input....
     to generate an "expanded key" from which subkeys are drawn. Some ciphers, such as Rijndael (AES)
    Rijndael key schedule

    Advanced Encryption Standard uses a key schedule to expand a short key into a number of separate round keys. This is known as the Rijndael key schedule....
     and Blowfish
    Blowfish (cipher)

    In cryptography, Blowfish is a key ed, symmetric key algorithm block cipher, designed in 1993 by Bruce Schneier and included in a large number of cipher suites and encryption products....
    , use parts of the cipher algorithm itself for this key expansion, sometimes initialized with some "nothing up my sleeve number
    Nothing up my sleeve number

    In cryptography, nothing up my sleeve numbers are any numbers which, by their construction, are above suspicion of hidden properties. They are used in creating cryptographic functions such as cryptographic hash and ciphers....
    s". Other ciphers, such as RC5
    RC5

    In cryptography, RC5 is a block cipher notable for its simplicity. Designed by Ron Rivest in 1994, RC stands for "Rivest Cipher", or alternatively, "Ron's Code" ....
    , expand keys with functions that are somewhat or completely different from the encryption functions.