Feistel-salaus

Feistel-salauksen rakenne.

Feistel-salaus on 1970-luvun alussa julkaistu salausmenetelmä. 1960-luvun lopulla Horst Feistel ja Walt Tuchman työskentelivät IBM:n tietokoneille tarkoitetussa salausprojektissa nimeltä Lucifer. Projektissa syntyi myös lohkosalausalgoritmi, jonka nimi on Lucifer. Luciferista tehtiin useita patentteja, jotka ovat kaikki vanhentuneet. Useimmat lohkosalausmenetelmät ovat Feistel-verkkoja, jossa lohko jaetaan kahteen osaan L ja R. Feistel-rakenteessa samaa perusalgoritmia käytetään salaukseen ja purkamiseen. Rakenne perustuu useista kierroksista, joissa selkotekstiä käsitellään. Joka kierroksella on korvausaskel, jota seuraa permutaatioaskel.[1][2] Feistelin verkko on tapa muodostaa käännettävä funktio ei-käännettävistä komponenteista. Korvaus-permutaatio -verkko ja Feistelin verkko käyttävät kierrosfunktioita, mutta Feistelin verkossa niiden ei tarvitse olla invertoitavia.[3]

Salauskierros kuvataan muodossa:[3]

L i = R i 1 {\displaystyle L_{i}=R_{i-1}}
R i = L i 1 f i ( R i 1 ) , {\displaystyle R_{i}=L_{i-1}\oplus \mathrm {f_{i}} (R_{i-1}),}

.. jossa {\displaystyle \oplus } tarkoittaa XOR-funktiota.

Lähteet

  1. Schneier; Bruce: Applied Cryptography. 2nd edition. Wiley. ISBN 0-471-11709-9. (englanniksi)
  2. Avi Kak: Lecture 3: Block Ciphers and the Data Encryption Standard (PDF) engineering.purdue.edu. 16.1.2024. Viitattu 26.2.2024. (englanniksi)
  3. a b Jonathan Katz & Yehuda Lindell: Introduction to Modern Cryptography, s. 170-172. Chapman & Hall/CRC, 2008. (englanniksi)

Aiheesta muualla

  • Luby-Rackoff: 7 Rounds are Enough for 2n(1−ε) Security (PDF) (englanniksi)
  • n
  • k
  • m
Kryptografiset algoritmit
Symmetrinen salaus
  • 3-DES
  • AES
  • AES-GCM
  • Blowfish
  • CAST-128
  • CAST-256
  • DES
  • GOST
  • IDEA
  • RC2
  • RC4
  • RC5
  • RC6
  • Salsa20
  • Skipjack
  • Twofish
Julkisen avaimen salaus
  • Diffie–Hellman
  • ElGamal
  • RSA
Kryptografiset tiivisteet
Salausprotokollat
Viestin todennuskoodit
Digitaaliset allekirjoituskoodit
Lohkosalaus
  • Feistel-salaus
  • Lai–Massey salaus
Muuta
Luettelo salausalgoritmeista