Kryptering er processen med at oversætte almindelig tekst data (alm) til noget, der ser ud til at være tilfældig og meningsløs (ciphertext). Dekryptering er processen med at konvertere chiffertekst tilbage til klartekst.
At kryptere mere end en lille mængde data, der symmetrisk kryptering anvendes. En symmetrisk nøgle bruges under både kryptering og dekryptering processer. At dekryptere en bestemt stykke ciphertext, skal nøglen, der blev brugt til at kryptere data anvendes.
Målet med hver krypteringsalgoritme er at gøre det så svært som muligt at dekryptere den genererede ciphertext uden brug af nøglen. Hvis der anvendes en rigtig god krypteringsalgoritme, er der ingen teknik væsentligt bedre end metodisk forsøger alle mulige nøgle. For en sådan algoritme, jo længere nøglen er, desto vanskeligere er det at dekryptere et stykke ciphertext uden at have nøglen.
Det er vanskeligt at bestemme kvaliteten af en krypteringsalgoritme. Algoritmer, der ser lovende ud nogle gange vise sig at være meget let at bryde, givet den rette angreb. Når du vælger en krypteringsalgoritme, er det en god ide at vælge en, der har været i brug i flere år og har med succes modstået alle angreb.