Сама криптографія не є вищим ступенем класифікації суміжних з нею дисциплін. Навпаки, криптографія спільно з криптоаналіз (метою якого є протистояння методам криптографії) складають комплексну науку - криптології.
Відносно криптоалгоритмів існує кілька схем класифікації, кожна з яких заснована на групі характерних ознак. Таким чином, один і той же алгоритм "проходить" відразу за кількома схемами, опиняючись в кожній з них в будь-якої з підгруп.
Основною схемою класифікації всіх криптоалгоритмів є наступна:
Весь подальший матеріал буде присвячений криптографії з ключем, так як більшість фахівців саме по відношенню до цих криптоалгоритм використовують термін криптографія, що цілком виправдано. Так, наприклад, будь-який криптоалгоритм з ключем можна перетворити в тайнопис, просто "зашивши" у вихідному коді програми деякий фіксований ключ. Зворотне ж перетворення практично неможливо.
Залежно від характеру впливів, вироблених над даними, алгоритми поділяються на:
- перестановочность
Блоки інформації (байти, біти, більші одиниці) не змінюються самі по собі, але змінюється їх порядок проходження, що робить інформацію недоступною сторонньому спостерігачеві. - Символи
Самі блоки інформації змінюються за законами криптоалгоритма. Переважна більшість сучасних алгоритмів належить цій групі.
Залежно від розміру блоку інформації криптоалгоритми діляться на:
- Потокові шифри.
Одиницею кодування є один біт. Результат кодування не залежить від минулого раніше вхідного потоку. Схема застосовується в системах передачі потоків інформації, тобто в тих випадках, коли передача інформації починається і закінчується в довільні моменти часу і може випадково перериватися. Найбільш поширеними предствателей поточних шифрів є скремблери. - блокові шифри
Одиницею кодування є блок з декількох байтів (в даний час 4-32). Результат кодування залежить від усіх вихідних байтів цього блоку. Схема застосовується при пакетної передачі інформації і кодування файлів.