Password Authentication Protocol
Протокол PAP (англ. Password Authentication Protocol - автентифікація по паролю) забезпечує вузлам одного рівня простий спосіб ідентифікації один одного шляхом двосторонньої згоди (handshake).
Даний протокол — найбільш простий з протоколів підтвердження віддаленим суб'єктом свого ідентифікатора для об'єкта, що надає ресурси для використання. Автентифікація проходить за дві ітерації (англ. two-way handshake).
Протокол PAP вкрай ненадійний, оскільки паролі, що пересилаються, можна легко читати в пакетах PPP (англ. Point-to-Point Protocol), якими обмінюються сторони в ході перевірки автентичності. Зазвичай PAP використовується тільки при підключенні до старих серверів віддаленого доступу на базі UNIX, які не підтримують жодні інші протоколи перевірки автентичності.
Модель TCP/IP (RFC 1122) |
---|
Прикладний рівень |
Транспортний рівень |
Мережевий рівень |
Канальний рівень |
Механізм PAP
При використанні PAP (описано в стандарті RFC-1334) в поле протоколу (два байти протоколу) кадру PPP вказується відповідне PAP-значення Охсоаз, поле даних перетворюється в чотири додаткових поля:
Код | Ідентифікатор | Довжина | Дані |
---|---|---|---|
1 байт | 1 байт | 2 байта | перемінний розмір |
При цьому поле Код вказує на такі можливі типи PAP-пакету:
- Код=1: Запит автентифікації.
- Код=2: Підтвердження автентифікації.
- Код=3: Відмова у автентифікації.
Поле ідентифікатор забезпечує відповідність пари запит/відповідь (повинен змінюватись при кожному новому запиті).
Поле довжина вказує на сумарну довжину всіх чотирьох полів.
Поле дані містить дані пакету — для запиту автентифікації буде мати такий вигляд:
Довжина ідентифікатора | Ідентифікатор | Довжина паролю | Пароль |
---|
Пакет запиту автентифікації буде відправлятись суб'єктом, що бажає отримати доступ неодноразово до настання однієї з таких подій:
- Отримання підтвердження чи відмови.
- Перевищення допустимого значення в лічильнику спроб.
При отриманні запиту об'єктом проводиться розпізнання отриманих результатів (порівняння з наявними у об'єкта значеннями). За результатами розпізнавання суб'єкту висилається пакет з полем Дані такого формату:
Довжина повідомлення | Повідомлення |
---|---|
При цьому в полях Код вказується 2 або 3 (в залежності від того, підтверджена автентифікація чи відхилена), в поле Ідентифікатор — ідентифікатор відповідного запиту. В полях відповіді вказується: Довжина повідомлення — розмір наступного поля, Повідомлення — покладається на певну реалізацію, воно повинне не впливати на роботу протоколу та рекомендовано формувати його зручним для прочитання.
Додатково вказано, що, оскільки пакет з підтвердженням автентифікації може бути втрачений, реалізація повинна передбачати можливість обробки повторного запиту на аутентифікацію.
Отже, схема роботи протоколу така:
- Встановлюється PPP з'єднання.
- Суб'єкт посилає запит автентифікації з вказанням свого ідентифікатора і пароля.
- Об'єкт перевіряє отримані дані і підтверджує автентифікацію або відмовляється від неї.
Варто звернути особливу увагу на те, що весь обмін даними (в тому числі і пересилка паролю) проходять у відкритому вигляді, без використання криптографічних засобів. При цьому частоту та час відправляння пакетів контролює сам суб'єкт.
Посилання
- http://infcryp.ru/content/password-authentication-protocol%5Bнедоступне+посилання+з+червня+2019%5D
- https://web.archive.org/web/20111101171641/http://protocols.ru/modules.php?name=Content&pa=showpage&pid=139