Шифруванням називається процес перетворення даних, в результаті якого стає неможливою правильна інтерпретація даних. Зворотне перетворення називається дешифрованием. Обидва процеси представляють собою застосування деякого математичного алгоритму до зашифрованих або дешіфруемим даними і до нікому секретному блоку даних (ключу). Сучасні алгоритми шифрування / дешифрування досить складні і їх неможливо проводити вручну. Справжні криптографічні алгоритми розроблені для використання комп'ютерами або спеціальними апаратними пристроями. У більшості додатків криптографія виробляється програмним забезпеченням і є безліч доступних криптографічних пакетів. Методи шифрування можна розділити на два класи: При шифруванні з закритим ключем (симетричному шифруванні) при шифрування і дешифрування даних використовується один і той же ключ, відомий обом сторонам. При шифруванні з відкритим ключем (асиметричному шифруванні) при шифрування і дешифрування даних використовуються різні ключі. У кожної сторони є два ключі: загальний і особистий. Вони математично пов'язані між собою, але отримати один з іншого практично неможливо. Повідомлення, зашифроване за допомогою загального ключа, можна розшифрувати лише за допомогою відповідного особистого ключа. Подвійне шифрування даних із застосуванням особистого ключа відправника і загального ключа одержувача дозволяє не тільки забезпечити конфіденційність, а й гарантувати справжність відправника.