Kryptografie je matematická věda zabývající se metodami utajování smyslu zpráv do podoby, jež neoprávněným osobám znemožňuje zjistit jejich obsah. Řada bezpečnostních aplikací je ve skutečnosti založena na využití kryptografických algoritmů (tj. matematických transformačních funkcí) k šifrování a dešifrování dat.
Šifrování je proces (transformace) zabývající se takovou změnou dat, aby pro nepovolanou osobu, která získá k zašifrovaným datům přístup, byla tato data nečitelná a bezcenná. Dešifrování je pak převod dat zpět do původní podoby.
Kryptografický šifrový systém (tvořený šifrováním, dešifrováním a klíčem) umožňuje ukládání citlivých informací nebo jejich přenos nezabezpečenými prostředími (jako je například celosvětová síť Internet) tak, aby je nemohl přečíst nikdo kromě oprávněného příjemce. Kryptografické šifrové systémy jsou dnes již standardem pro zajištění informační bezpečnosti, důvěryhodnosti, řízení přístupu ke zdrojům i elektronických transakcí.
Tuto techniku používáme při každodenních činnostech, jako je volání z mobilního telefonu, placení kreditní nebo debetní kartou, výběr hotovosti z bankomatu nebo přihlašování k počítači pomocí hesla.
Kryptografický algoritmus, nebo též šifra, je matematická funkce používaná během šifrování a dešifrování. Kryptografický algoritmus pracuje ve spojení s jedním nebo několika klíči (kterými může být slovo, číslo nebo řetězec) s cílem zašifrovat prostý (otevřený) text. Použijeme-li pro zašifrování stejného otevřeného textu různé klíče, dostaneme různé šifrové texty. Bezpečnost šifrovaných dat zcela závisí na dvou faktorech – na síle kryptografického algoritmu a na utajení klíče.
Silný kryptografický algoritmus musí splňovat následující kritéria: