Ik las onlangs over het concept van Feistel Networks en Substitution Permutation Networks, maar wat is precies het verschil tussen de twee?

Answer

In een Feistel-netwerk (van de Duitse IBM-cryptograaf Horst Feistel ), is de invoer verdeeld in twee blokken ($ L_0 $ en $ R_0 $) die met elkaar communiceren. Het belangrijkste voorbeeld is DES.

basisconstructie:

voer de beschrijving van de afbeelding hier in


In een SPN (Substitution Permutation Network) is de invoer verdeeld in meerdere kleine blokken, toegepast op een S-box ( substitutie ), daarna worden de bitsposities gemengd ( permutatie ). De sleuteltoevoeging kan voor of na deze twee bewerkingen plaatsvinden.

Huidige blokcijfer:

voer de afbeeldingsbeschrijving hier in

Opmerkingen

  • Funfact: je begint en eindigt meestal met een toetsbewerking in een SPN, omdat deze ronde anders triviaal omkeerbaar is.
  • Ja, ik weet het. 😉 Maar het ' kwam niet overeen met het huidige diagram van iacr.org/authors/tikz
  • bedankt! dit heeft me echt geholpen, zie je, ik heb onlangs een video bekeken waarin ze DES uitlegden met het feistel-netwerk, maar toen lieten ze zien hoe de functie in het feistel-netwerk werkte (dat er echt uitzag als een spn-netwerk), dus daarom werd ik verward met de verschil tussen hen, in ieder geval bedankt voor het helpen!
  • Ik heb een OT-vraag: in de algemene beschrijving van Feistel-cijfers zijn er uitwisselingen van L en R voor de opeenvolgende stappen. Maar dat zou blijkbaar kunnen worden vermeden door een geschikte herformulering van het algoritme dat IMHO beter zou kunnen begrijpen. Zou ik daar gelijk in kunnen hebben?
  • @ Mok-KongShen Je bedoelt zoiets als dit of dit ? Hoewel het gemakkelijker te implementeren lijkt (omdat je een grote ronde functie beschouwt als 2 iteratie van de gebruikelijke ronde functie: L – > R; R – > L). De gebruikelijke weergave is beter in traditionele zin, aangezien je deze waarschijnlijk zult vinden in boeken, uitleg enz. Dus ja, gemakkelijker te implementeren, maar geen standaard weergave.

Antwoord

Van Wikipedia :

Hoewel een Feistel-netwerk dat S-boxen gebruikt (zoals DES) vrij gelijkaardig is aan SP-netwerken, zijn er enkele verschillen die dit of dat meer van toepassing maken in bepaalde situaties . Voor een bepaalde hoeveelheid verwarring en diffusie heeft een SP-netwerk meer " inherent parallellisme " 1 en kan dus – gegeven een CPU met veel uitvoeringseenheden – sneller worden berekend dan een Feistel-netwerk. [2] CPUs met weinig uitvoeringseenheden – zoals de meeste smartcards – kunnen niet profiteren van dit inherente parallellisme. Ook SP-cijfers vereisen dat S-boxen omkeerbaar zijn (om decodering uit te voeren); Feistel innerlijke functies hebben zon beperking niet en kunnen worden geconstrueerd als eenrichtingsfuncties.

Reacties

  • Wat zijn uw " [1] " en " [2] ", ben je vergeten referenties te citeren?
  • Wat is het punt van ' als je een letterlijke kopie maakt van Wikipedia en andere wikis als veel mensen er al toegang toe hadden?
  • Hallo, het lijkt erop dat je dit antwoord hebt gekopieerd van Wikipedia . U ' gebruikt het werk van iemand anders ' zonder de auteur te vermelden. Dit komt neer op plagiaat en is niet welkom op Cryptography Stack Exchange. Denk eraan om altijd een duidelijke attributie toe te voegen wanneer u andere bronnen gebruikt. Bedankt! (deze opmerking heeft betrekking op een eerdere herziening van dit antwoord)
  • Voor degenen die mijn recente activiteiten besluipen, heb ik ' t bezoek Wikipedia om te weten waar de tekst vandaan komt, mijn zoekmachine heeft de inhoud van zijn spiegelsites weergegeven.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *