Feistel network
E487732
A Feistel network is a symmetric structure for building block ciphers that splits data into halves and repeatedly applies round functions to achieve secure encryption and decryption.
Observed surface forms (1)
| Surface form | Occurrences |
|---|---|
| Lucifer cipher | 1 |
Statements (50)
| Predicate | Object |
|---|---|
| instanceOf |
block cipher structure
ⓘ
cryptographic construction ⓘ |
| advantage |
decryption uses same structure as encryption
ⓘ
flexible choice of round functions ⓘ good diffusion after sufficient rounds ⓘ round function need not be invertible ⓘ |
| appliesTo | symmetric-key cryptography ⓘ |
| coreOperation |
XOR of round function output with one half
ⓘ
repeated application of round function ⓘ swap of halves between rounds ⓘ |
| decryptionProcess | apply same rounds with subkeys in reverse order ⓘ |
| designGoal | build secure block ciphers from round functions ⓘ |
| developedAt | IBM NERFINISHED ⓘ |
| encryptionProcess | apply multiple Feistel rounds with subkeys in forward order ⓘ |
| field | cryptography ⓘ |
| hasProperty |
confusion and diffusion through multiple rounds
ⓘ
invertible transformation ⓘ iterative structure ⓘ supports same structure for encryption and decryption ⓘ symmetric structure ⓘ |
| introducedIn | 1970s ⓘ |
| namedAfter | Horst Feistel NERFINISHED ⓘ |
| operatesOn | fixed-size data blocks ⓘ |
| relatedConcept |
Substitution–permutation network
NERFINISHED
ⓘ
pseudorandom function ⓘ pseudorandom permutation ⓘ |
| requires | key schedule to derive round subkeys ⓘ |
| roundFunctionInput |
one half of the block
ⓘ
round subkey ⓘ |
| securityDependsOn |
key schedule design
ⓘ
number of rounds ⓘ round function design ⓘ |
| splitsInto |
left half
ⓘ
right half ⓘ |
| theoreticalResult | sufficiently many rounds with pseudorandom round functions yield a pseudorandom permutation ⓘ |
| typicalNumberOfRounds | multiple rounds for security ⓘ |
| usedBy |
Blowfish
NERFINISHED
ⓘ
CAST-128 NERFINISHED ⓘ Camellia NERFINISHED ⓘ DES NERFINISHED ⓘ Data Encryption Standard NERFINISHED ⓘ GOST 28147-89 NERFINISHED ⓘ Twofish NERFINISHED ⓘ |
| usedIn | block cipher design ⓘ |
| variant |
Feistel-like network
NERFINISHED
ⓘ
generalized Feistel network ⓘ type-2 Feistel network ⓘ type-3 Feistel network ⓘ type-4 Feistel network ⓘ unbalanced Feistel network ⓘ |
Referenced by (6)
Full triples — surface form annotated when it differs from this entity's canonical label.