Kas yra šifravimo algoritmas?

Šifravimas yra mokslas apie teksto pavertimą neįskaitomu, kad jis būtų saugiai ir slaptai perduotas numatytam gavėjui, kuris naudoja raktą pranešimui iššifruoti. Šifravimo algoritmas yra apibrėžta duomenų šifravimo veiksmų seka. Originalus tekstas vadinamas paprastu tekstu, o pritaikius šifravimo algoritmą, jis vadinamas šifruotu tekstu. Šifravimo algoritmas gali būti vadinamas šifru ir dažnai jam suteikiamas pavadinimas. Pavyzdžiui, yra vienas šifravimo algoritmas, pavadintas Blowfish, ir kitas, pavadintas AES (Advanced Encryption Standard).

Šifravimo algoritmas gali priklausyti nuo pakeitimo, kaip pakeitimo šifre, arba perkėlimo, kaip ir perkėlimo šifre. Žinomų ankstyvųjų šifrų pavyzdžiai rėmėsi paprastais šifravimo algoritmais. Pavyzdžiui, Julijus Cezaris naudojo šifrą, kuris apėmė pakeitimą, kai jis perkėlė abėcėlės raides taip, kad A būtų vaizduojamas D, B – E ir pan. Kadangi abėcėlėje yra 26 raidės, galima sukurti 25 tokio tipo šifrus – 26 vietoje A būtų A, o tai nėra labai slapta. Šio šifro raktas gali būti laikomas pakeistu vietų skaičiumi.

Tačiau nebūtina, kad šifravimo algoritmas naudotų raides. Jis gali naudoti skaičius ir kitus simbolius kaip raidžių pakaitalus. Apsakyme „Auksinė klaida“ Edgaras Allenas Poe panaudojo pakeitimo šifrą, kuriame šifravimo algoritmas apima tokio tipo pakeitimą naudojant simbolius.

53##+305))6*;4826)4#.)4#);806*;48+8¶60))85;;]8*;:#*8+83(88)5*+;46(;88*96*?;8)*#(;485);5*+2:*#(;4956*2(5*-4)8¶8*;4069285);)6+8)4##;1(#9;48081;8:8#1;48+85;4)485+528806*81(#9;48;(88;4(#?34;48)4#;161;:188;#?;

Jei kas nors išspręstų šį šifrą, pamatytumėte, kad Poe raidėms simbolių nepriskyrė tvarkingai, kai A = 1, B = 2 ir tt Tokiu būdu šifravimo algoritmas yra šiek tiek sudėtingesnis nei abėcėlės keitimo algoritmas. Jei išsiaiškinsite vieną raidę abėcėlės poslinkyje, galėsite lengvai jas visas išvesti. Tačiau naudojant Poe algoritmą, žinant, kad A = 5, nieko nepasakoma apie B ar bet kurią kitą raidę.
Šifravimo algoritmai, naudojami šiuolaikinėse programose, pvz., kredito kortelių operacijų internete apsaugai, yra daug sudėtingesni. Klavišai gali būti 256 bitų ar ilgesni. Jei jie bus nulaužti, tai bus tik kompiuterių pagalba. Tačiau jei būtų gautas šifro raktas, šifruotą tekstą būtų galima perskaityti iš karto.