Алгоритм Луна (Luhn algorithm) — простой контрольный алгоритм (модуль-10), предназначенный для обнаружения случайных опечаток в цифровых кодах (замена цифры, перестановка соседних цифр и т.п.). Он не защищает от сознательной фальсификации — это не криптография, а простой чек-суммный тест.
Идея: к номеру добавляют контрольную (последнюю) цифру так, чтобы обработанная по определённым правилам сумма всех цифр делилась на 10.
Алгоритм Луна ловит все одиночные ошибки (замену одной цифры); большинство обменов местами соседних цифр (перестановки).
На практике при вводе номера карты платёжные системы сначала проверяют Luhn — если номер не проходит, платёж не отправляется дальше. Поэтому случайная опечатка обычно просто приведёт к ошибке валидации, но никак не к блокировке.
Luhn даёт быстрый первичный фильтр и экономит ресурсы — отбрасывает очевидно неверные номера ещё до обращения в банк.
СПРАВКА:
Алгоритм разработал Ханс Петер Лун (Hans Peter Luhn) из IBM в 1954 году. В 1960 IBM получила патент на метод проверки чисел (механизмы обработки ввода). С тех пор Luhn используется повсеместно — в банковских картах, IMEI, некоторых идентификационных номерах и т.д.
Подписывайтесь на телеграм-канал Финсайд и потом не говорите, что вас не предупреждали: https://t.me/finside.
Сообщить о мошенниках или задать вопрос Памятка о возврате от мошенников Телеграм-канал и чат Вкладер Белый список инвестиций