Sinople | |
---|---|
Skaber | Philip pakke |
Oprettet | 2003 _ |
Nøglestørrelse | 128 bit |
Blokstørrelse | 128 bit |
Antal runder | 64 |
Type | Ubalanceret Feistel-netværk |
Sinople er en symmetrisk blokkryptoalgoritme bygget på basis af et ubalanceret " Feistel-netværk ". Algoritmen blev udviklet i 2003 .
De vigtigste krav til algoritmen under dens udvikling:
Algoritmen er baseret på 32-bit operationer og har 64 runder, blandt hvilke der er to typer - C og D. D runder er designet til at opnå maksimal diffusion, C runder - for at opnå blanding. D-rundens F-funktion bruger et af elementerne i datablokken ( D[3] ) og den aktuelle undernøgle ( K[r] ) til at transformere 3 elementer i datablokken. I modsætning hertil bruger C-runde F-funktionen de første tre elementer i datablokken og den aktuelle undernøgle ( K[r] ) til at transformere det sidste element i datablokken ( D[3] ). D-type runder spilles før C-type runder. Tilføjelse af nøgler med data udføres kun gennem substitutionstabeller. Operationer XOR (addition modulo 2) er nødvendigvis kombineret med operationer ADD (addition modulo 2 32 ).
Erstatningstabellerne er oprindeligt lånt fra MARS-algoritmen og indeholder 512 32-bit elementer, men er blevet grundigt analyseret for forstærkning.
Nøgleplanen blev designet til at opfylde kravene til:
Algoritmen er ifølge forfatterne modstandsdygtig over for lineær og differentiel analyse.
Symmetriske kryptosystemer | |
---|---|
Stream-cifre | |
Feistel netværk | |
SP netværk | |
Andet |