В криптографії, CRAM-MD5 — це механізм автентифікації, побудований на схемі виклик-відповідь (звідси і назва — ).

У CRAM-MD5 сервер автентифікації спершу надсилає рядок виклику до клієнта. Клієнт відповідає іменем, за яким слідує знак пробілу та 16-бітовий дайджест () в шістнадцятковому запису. Дайджест — це значення HMAC-MD5 з паролем користувача як секретним ключем, та первісним викликом сервера. Сервер обраховує власний дайджест із врахуванням пароля користувача, і якщо клієнтський та серверний дайджест збігаються — автентифікація успішна.

Це забезпечує три важливих типи безпеки: ніхто інший не може дублювати хеш без знання пароля. Це називається автентифікацією. сторонні не можуть використовувати той же хеш, оскільки він залежить від випадкового виклику. Це називається запобіганням перепрограванню (). користувачі не знають пароль. Це називається секретністю.

Див. також SASL

Посилання IETF Internet Draft: The CRAM-MD5 SASL Mechanism RFC 2195 Розширення IMAP/POP для простої реалізації протоколу.