Проверка по алгоритму Луна
Алгоритм Луна лишь проверяет контрольную цифру, но не подтверждает, что карта активна.
Алгоритм Луна (ISO/IEC 7812-1), это контрольная сумма, которая защищает номера банковских карт, идентификаторы устройств IMEI, канадские номера SIN, американские номера NPI и ряд других систем нумерации от однозначных опечаток. Вставьте строку цифр, пробелы и дефисы игнорируются, и инструмент покажет, действителен ли номер, а также проведёт вас через шаги удвоения и суммирования, чтобы при желании вы могли проверить его вручную.
Как вычисляется проверка Луна
-
1
Удалить нецифровые символы
Пробелы, дефисы и точки удаляются. Учитываются только цифры от 0 до 9.
-
2
Удвоить каждую вторую цифру справа
Начиная с предпоследней, удваивается каждая вторая цифра.
-
3
Сложить цифры каждого удвоенного значения
Если при удвоении получается 14, прибавьте 1 + 4 = 5. Это равносильно вычитанию 9 из любого удвоения ≥ 10.
-
4
Сложить все полученные значения
Прибавьте удвоенные и приведённые цифры к нетронутым цифрам.
-
5
Проверить делимость на 10
Если сумма оканчивается на 0, номер действителен. В противном случае он недействителен.
Практический пример
Проверьте 4539 1488 0343 6467:
| Позиция (справа→слева) | Цифра | Удвоена? | Значение |
|---|---|---|---|
| 1 | 7 | нет | 7 |
| 2 | 6 | да | 12 → 3 |
| 3 | 4 | нет | 4 |
| 4 | 6 | да | 12 → 3 |
| 5 | 3 | нет | 3 |
| 6 | 4 | да | 8 |
| 7 | 3 | нет | 3 |
| 8 | 0 | да | 0 |
| 9 | 8 | нет | 8 |
| 10 | 8 | да | 16 → 7 |
| 11 | 4 | нет | 4 |
| 12 | 1 | да | 2 |
| 13 | 9 | нет | 9 |
| 14 | 3 | да | 6 |
| 15 | 5 | нет | 5 |
| 16 | 4 | да | 8 |
Сумма: 80. 80 mod 10 = 0 → действителен.
Где применяется алгоритм Луна
| Система | Длина | Защищена алгоритмом Луна? |
|---|---|---|
| Visa, Mastercard, Discover | 13–19 цифр | да |
| American Express | 15 цифр | да |
| IMEI (идентификатор устройства GSM) | 15 цифр | да |
| Канадский номер социального страхования (SIN) | 9 цифр | да |
| Национальный идентификатор поставщика услуг США (NPI) | 10 цифр | да |
| Израильское удостоверение личности (Teudat Zehut) | 9 цифр | да |
| ISBN-13 | 13 цифр | нет (использует mod 10 с весами 1 и 3) |
Что алгоритм Луна выявляет, а что упускает
- Выявляет: все однозначные ошибки и большинство (но не все) перестановок соседних цифр.
- Упускает: перестановку 09 ↔ 90 и несколько похожих пар. Это проверка опечаток, а не проверка безопасности.
- Это не средство защиты. Номер, действительный по Луну, легко сгенерировать. Проверка номера PAN в платёжных шлюзах использует диапазоны эмитентов, код CVV, систему AVS и технологию 3-D Secure, а не только алгоритм Луна.
Часто задаваемые вопросы
Нет. Алгоритм Луна проверяет лишь то, что номер математически корректен. Он ничего не говорит о том, была ли карта выпущена, есть ли на ней средства и не украдена ли она. Настоящая проверка выполняется эмитентом при авторизации.
Да, последняя цифра является контрольной, и её всегда можно подобрать так, чтобы сумма делилась на 10. Именно так работают генераторы IMEI и тестовые номера карт.
Он выявляет любую замену одной цифры и большинство перестановок соседних цифр, но некоторые пары (например, 09 ↔ 90) не меняют контрольную сумму. Более надёжные схемы (ISBN-13, Верхуфф, Дамм) обеспечивают более широкое покрытие ошибок ценой большей сложности.
Инструмент работает полностью в вашем браузере, поэтому ничего не передаётся, но вставлять реальные данные PAN там, где это не нужно, плохая привычка. Для экспериментов используйте тестовые номера (например, 4242 4242 4242 4242).
Лун работает с любой длиной, но стандартизирован для конкретных схем (обычно 9–19 цифр). Инструмент не ограничивает длину.
Сопутствующие инструменты
Справочная таблица ASCII
Полная таблица ASCII от 0 до 127 с десятичным, шестнадцатеричным, восьмеричным и двоичным представлением, а также записью числовых ссылок HTML, включая NUL, LF и DEL.
Справочник символов HTML
Справочник HTML-сущностей с поиском, их именованными и числовыми кодами, а также копированием специальных символов и знаков одним кликом.
Справочник сочетаний клавиш
Ищите документированные сочетания по умолчанию для VS Code, Chrome и Bash с GNU Readline в macOS, Windows и Linux.
Конвертер CMYK в RGB
Преобразуйте проценты CMYK в приблизительные значения RGB и Hex для быстрого экранного предпросмотра по стандартной формуле.
Шпаргалка по Markdown
Практический справочник Markdown с настоящим предпросмотром и готовыми для копирования примерами заголовков, списков, таблиц, кода, ссылок, изображений и синтаксиса GFM.
Счетчик FPS
Измерьте FPS браузера через requestAnimationFrame: сглаживание, минимальная и максимальная частота кадров, порог предупреждения и график по желанию. Работает локально, без загрузок и API.
Инструмент доступен на других языках
- เครื่องตรวจสอบอัลกอริทึมของ Luhn [TH]
- Luhn-Algorithmus-Prüfer [DE]
- Pemeriksa Algoritma Luhn [ID]
- Luhnアルゴリズムチェッカー [JA]
- Verificador del Algoritmo de Luhn [ES]
- Walidator algorytmu Luhna [PL]
- Validador do Algoritmo de Luhn [PT]
- Vérificateur d'algorithme de Luhn [FR]
- Luhn 알고리즘 검사기 [KO]
- Trình kiểm tra thuật toán Luhn [VI]
- Luhn-algoritmens kontrollverktyg [SV]
- أداة فحص خوارزمية Luhn [AR]
- Luhn-algoritme-checker [NL]
- Luhn Algorithm Checker [EN]
- Controllore dell'Algoritmo di Luhn [IT]
- Luhn Algoritma Kontrolcüsü [TR]
- Luhn 算法校验工具 [ZH]