SP nätverk

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 3 januari 2020; verifiering kräver 1 redigering .

SP-nätverk ( Substitution-permutation network , substitution-permutation network ) är en typ av blockchiffer som föreslogs 1971 av Horst Feistel . I den enklaste versionen är det en "smörgås" av två typer av lager som används upprepade gånger i tur och ordning. Den första typen av skikt är P-skiktet, bestående av ett P-block med stor kapacitet, följt av den andra typen av skikt - S-skiktet, som är ett stort antal S-block med liten kapacitet, sedan igen P-skikt, etc. Den första kryptografiska algoritmen baserad på SP-nätet var "Lucifer" ( 1971 ). För närvarande används AES (Rijndael) flitigt bland algoritmer baserade på SP-nätverk. Ett alternativ till SP-nätverk är Feistel-nätverk .

I moderna algoritmer, istället för S- och P-boxar, används olika matematiska eller logiska funktioner. Vilken binär funktion som helst kan reduceras till en S-box, vissa funktioner till en P-box. Till exempel reduceras ett cykliskt skift till en P-box , själva P-boxen är ett specialfall av S-boxen. Sådana funktioner är vanligtvis lätta att implementera i hårdvara, samtidigt som de ger god kryptografisk styrka .

Hur det fungerar

Ett chiffer baserat på SP-nätet får ett block och en nyckel som indata och utför flera alternerande omgångar, bestående av alternerande substitutionssteg och permutationssteg [ 1 ] .  

En S-box räcker för att uppnå säkerhet, men ett sådant block kommer att kräva en stor mängd minne. Därför används små S-boxar blandade med P-boxar [2] .

Det icke-linjära substitutionssteget blandar nyckelbitarna med klartextbitarna , vilket skapar en Shannon- förlägenhet . Det linjära permutationssteget fördelar redundansen genom datastrukturen, vilket ger upphov till diffusion [3] [4] .

S - boxen  ersätter ett litet block av ingångsbitar med ett annat block av utgångsbitar. Denna substitution måste vara en-till-en för att garantera reversibilitet. Syftet med S-boxen är för en icke-linjär transformation, vilket förhindrar att linjär kryptoanalys utförs . En av egenskaperna hos S-boxen är lavineffekten , det vill säga en förändring av en bit vid ingången leder till en förändring av alla bitar vid utgången [5] .

P-box ( eng.  permutationsbox eller P-box ) - permutation av alla bitar: blocket tar emot utdata från S-boxen som indata, byter alla bitar och matar resultatet till S-boxen i nästa omgång. En viktig egenskap hos en P-box är möjligheten att fördela uteffekten från en S-box till ingångarna på så stora S-boxar som möjligt.

För varje runda används en annan nyckel, erhållen från den ursprungliga. En sådan nyckel kallas en rund nyckel. Den kan erhållas antingen genom att dela upp originalnyckeln i lika delar, eller genom någon form av transformation av hela nyckeln.

Algoritmer

Följande algoritmer använder SP-nätverket:

Anteckningar

  1. Keliher, Liam et al. Modeling Linear Characteristics of Substitution-Permutation Networks // Utvalda områden inom kryptografi: 6:e årliga internationella workshopen, SAC'99, Kingston, Ontario, Kanada, 9-10 augusti 1999: procedurer  (engelska) / Hays, Howard & Carlisle, Adam. - Springer, 2000. - P. 79. - ISBN 9783540671855 .
  2. Schneier, 2002 .
  3. Baigneres, Thomas & Finiasz, Matthieu. Slå "C" för chiffer // Valda områden inom kryptografi: 13:e internationella workshopen, SAC 2006, Montreal, Kanada, 17-18 augusti 2006: reviderade utvalda papper  / Biham, Eli & Yousseff, Amr. - Springer, 2007. - P. 77. - ISBN 9783540744610 .
  4. Cusick, Thomas W. & Stanica, Pantelimon. Kryptografiska booleska funktioner och  applikationer . - Academic Press , 2009. - S. 164. - ISBN 9780123748904 .
  5. Katz, Jonathan; Lindell, Yehuda. Introduktion till modern kryptografi  (neopr.) . - CRC Press , 2008. - ISBN 9781584885511 . , sid 166-167

Litteratur