MAC підпис

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

MAC (англ. message authentication code — код аутентифікації повідомлення) — спеціальний набор символів, що додається до відповідного повідомлення, логічно поєднаний з цим повідомленням та призначений для забезпечення цілісності повідомлення та аутентифікації джерела даних.

Для перевірки цілісності до повідомлення засобами відправника додається MAC-підпис, як результат хеш-функції від перетворення зміста повідомлення та криптографічного ключа. Засобами отримувача виконується аналогічне перетворення такою самою хеш-функцією зміста повідомлення та криптографічного ключа. Після цього отриманий MAC-підпис та MAC-підпис, згенерований для перевірки, порівнюються. Якщо обидва MAC-підписи збігаються, це підтверджує цілісність повідомлення та ідентичність відправника.

Відмінність MAC-підпису від електронного цифрового підпису полягає в тому, що у якості криптографічного ключа використовується однаковий набір даних, як відправником, так й одержувачем. У разі використання електронного цифрового підпису, відправник та одержувач для криптографічного перетворення даних використовують власні особисті ключі, що не збігаються.

Зокрема, MAC-підпис має використовуватись для аутентифікації фінансових повідомлень між банкоматом та процесинговим центром (хостом). В цьому випадку MAC-підпис складається з восьми шіснадцяткових символів та додається до повідомлення. У випадку відсутності MAC-підпису, відповідь на запит, яку банкомат очікує, можна підробити. Наприклад, засобами підробленого хоста можна відправити інструкцію банкомату на видачу готівки. У такому разі банкомат видасть готівку без авторизації такої операції у відповідному процесинговому центрі.

Як криптографічний ключ для накладення MAC-підпису в банкоматі використовується MAC-ключ, що створюється як результат криптографічного перетворення відкритої компоненти та MASTER-ключа. Таким чином на стороні банкомата (термінала) та процесингового центра (хоста) використовується однаковий MAC-ключ.