🔢

Алгоритм Луна

Проверка и генерация контрольной цифры по алгоритму Луна (mod 10)

0 цифр

Алгоритм Луна онлайн — проверка номера карты, IMEI и контрольной цифры

Онлайн-калькулятор алгоритма Луна (Luhn algorithm) — универсальный инструмент для проверки и валидации числовых идентификаторов. Алгоритм Луна, также известный как формула Луна, модуль 10 или mod 10, представляет собой простую контрольную формулу, используемую для проверки правильности разнообразных идентификационных номеров. Формула была изобретена учёным-информатиком Гансом Петером Луном (Hans Peter Luhn) в 1954 году и запатентована корпорацией IBM. Сегодня алгоритм Луна является международным стандартом ISO/IEC 7812 и применяется повсеместно в банковской сфере, телекоммуникациях и других отраслях.

Наш калькулятор позволяет проверить валидность номера банковской карты (Visa, Mastercard, МИР, American Express, Maestro, UnionPay, JCB, Diners Club, Discover), проверить корректность IMEI-номера мобильного устройства, а также валидировать любой произвольный номер, использующий контрольную цифру по алгоритму Луна. Инструмент автоматически определяет тип вводимого номера и платёжную систему банковской карты по первым цифрам (BIN/IIN — Bank Identification Number). Все вычисления выполняются исключительно в вашем браузере — данные не передаются на сервер, что гарантирует полную конфиденциальность и безопасность.

Помимо проверки, калькулятор алгоритма Луна предоставляет функцию генерации валидных номеров для тестирования программного обеспечения, а также пакетную проверку нескольких номеров одновременно. Для каждого проверенного номера доступна детальная пошаговая визуализация алгоритма — от удвоения нечётных позиций до итоговой контрольной суммы. Это делает инструмент незаменимым как для разработчиков, тестировщиков и QA-инженеров, так и для обычных пользователей, желающих проверить правильность ввода номера карты или IMEI.

Где используется алгоритм Луна

Алгоритм Луна применяется значительно шире, чем может показаться на первый взгляд. Вот основные области применения формулы Луна, в которых контрольная цифра по модулю 10 играет ключевую роль в обеспечении целостности данных и защите от случайных ошибок ввода:

  • Номера банковских карт — все карты Visa, Mastercard, МИР, American Express, Maestro и других платёжных систем проверяются алгоритмом Луна. Последняя цифра номера карты является контрольной и рассчитывается по формуле mod 10.
  • IMEI мобильных устройств — международный идентификатор мобильного оборудования (International Mobile Equipment Identity) из 15 цифр содержит контрольную цифру, вычисленную по алгоритму Луна.
  • Номера социального страхования — в Канаде номер Social Insurance Number (SIN) валидируется по формуле Луна.
  • ISIN-коды ценных бумаг — международные идентификационные коды ценных бумаг (International Securities Identification Number) используют алгоритм Луна для проверки.
  • Штрихкоды и идентификаторы — множество систем штрихкодирования и серийных номеров применяют модуль 10 для контроля ошибок ввода.
  • СЕДОЛ (SEDOL) — идентификационный код ценных бумаг Лондонской фондовой биржи использует модифицированную версию алгоритма Луна.
  • Коды провайдеров NPI — в системе здравоохранения США National Provider Identifier проверяется по алгоритму Луна.

Как работает алгоритм Луна — принцип расчета контрольной цифры

Принцип работы алгоритма Луна основан на математическом вычислении контрольной суммы по модулю 10. Формула проста, но эффективна — она выявляет все одиночные ошибки ввода и большинство перестановок смежных цифр. Вот пошаговое описание того, как рассчитывается и проверяется контрольная цифра по формуле Луна:

Шаг 1. Начиная со второй цифры справа (предпоследней) и двигаясь влево, удваиваем каждую вторую цифру номера. Если результат удвоения превышает 9, вычитаем из него 9 (эквивалентно сложению цифр двузначного числа).

Шаг 2. Складываем все полученные цифры — как удвоенные, так и неизменённые — в общую контрольную сумму.

Шаг 3. Если итоговая сумма делится на 10 без остатка (сумма mod 10 = 0), номер признаётся валидным. В противном случае номер содержит ошибку.

Для генерации контрольной цифры используется обратный процесс: вычисляется сумма всех цифр без контрольной, а затем определяется такая цифра, при добавлении которой общая сумма становится кратной 10. Формула: контрольная цифра = (10 − (сумма mod 10)) mod 10.

Возможности нашего онлайн-калькулятора Луна

  • Мгновенная проверка любых номеров по алгоритму Луна — банковские карты, IMEI, произвольные числовые последовательности
  • Автоматическое определение платёжной системы карты: Visa, Mastercard, МИР, American Express, Maestro, UnionPay, JCB, Discover, Diners Club
  • Пошаговая визуализация расчёта — наглядная демонстрация каждого этапа алгоритма Луна с таблицей удвоений и контрольной суммой
  • Генерация валидных номеров для тестирования — создание любого количества номеров с заданным префиксом и длиной
  • Пакетная проверка до 100 номеров одновременно — загрузка списка и массовая валидация
  • Маскировка конфиденциальных данных — возможность скрыть средние цифры номера для безопасности
  • Определение корректной контрольной цифры — если номер невалиден, калькулятор покажет, какой должна быть правильная последняя цифра
  • Копирование результатов проверки в буфер обмена одним нажатием
  • Работа полностью в браузере — без отправки данных на сервер, 100% конфиденциальность

Кому полезен калькулятор алгоритма Луна

Инструмент проверки по алгоритму Луна востребован широким кругом пользователей. Веб-разработчики и программисты применяют его для валидации форм оплаты, тестирования платёжных шлюзов и проверки корректности генерации номеров в коде. QA-инженеры и тестировщики используют генератор валидных номеров для создания тестовых данных при проверке интернет-магазинов, банковских приложений и платёжных систем. Специалисты по безопасности проверяют корректность реализации алгоритма Луна в различных системах. Обычные пользователи могут быстро проверить, правильно ли они ввели номер банковской карты при онлайн-оплате, или убедиться в корректности IMEI своего смартфона. Студенты и преподаватели изучают принципы контрольных сумм и обнаружения ошибок на наглядном примере алгоритма Луна с пошаговой визуализацией.

Как проверить номер по алгоритму Луна — пошаговая инструкция

1

Выберите тип номера

Укажите тип проверяемого номера: банковская карта, IMEI устройства, произвольный номер или оставьте автоопределение. Калькулятор автоматически распознает платёжную систему карты (Visa, Mastercard, МИР и другие) по первым цифрам номера.

2

Введите или вставьте номер

Введите номер вручную или вставьте его из буфера обмена. Допускаются пробелы и дефисы — калькулятор автоматически извлечёт только цифры. Для IMEI введите 15 цифр, для банковской карты — от 13 до 19 цифр.

3

Получите результат проверки

Нажмите кнопку "Проверить" или клавишу Enter. Мгновенно получите результат: валидный или невалидный номер, контрольную сумму, определённую платёжную систему. При необходимости нажмите "Показать шаги расчёта" для детальной визуализации алгоритма Луна.

Примеры использования проверки по алгоритму Луна

💳 Проверка номера банковской карты при оплате

При вводе номера банковской карты в интернет-магазине легко допустить ошибку — пропустить цифру или переставить две соседние. Алгоритм Луна мгновенно выявляет подобные ошибки. Введите номер карты в калькулятор: если статус "невалидный", значит где-то допущена ошибка ввода. Калькулятор также покажет правильную контрольную цифру, что поможет быстро найти опечатку.

📱 Проверка IMEI смартфона

При покупке б/у смартфона важно проверить подлинность IMEI. Наберите *#06# на телефоне, чтобы узнать IMEI, затем введите 15-значный код в калькулятор. Если номер невалиден, это может указывать на изменённый или поддельный IMEI, что является серьёзным предупреждающим сигналом. Калькулятор автоматически определит, что введён именно IMEI.

🧪 Генерация тестовых данных для разработки

Разработчик интернет-магазина тестирует форму оплаты и платёжный шлюз. С помощью генератора он создаёт 20 валидных номеров с префиксом 4276 (Visa) длиной 16 цифр. Все сгенерированные номера гарантированно проходят проверку по алгоритму Луна, что позволяет тестировать валидацию формы без использования реальных карточных данных.

📋 Массовая проверка базы данных

QA-инженер получил выгрузку из базы данных с номерами карт клиентов и подозревает, что часть записей повреждена. Он копирует список номеров в режим пакетной проверки и мгновенно видит, какие номера невалидны. Для каждого невалидного номера показана ожидаемая контрольная цифра, что помогает быстро исправить данные.

Определение платёжной системы по номеру карты (BIN/IIN)

Первые цифры номера банковской карты (BIN — Bank Identification Number, или IIN — Issuer Identification Number) определяют платёжную систему и банк-эмитент. Наш калькулятор автоматически распознаёт следующие платёжные системы:

Платёжная системаНачальные цифры (BIN)Длина номера
Visa413, 16, 19
Mastercard51–55, 2221–272016
МИР2200–220416, 18, 19
American Express34, 3715
Maestro5018, 5020, 5038, 6304, 6759…12–19
UnionPay62, 8116–19
JCB3528–358916–19
Discover6011, 644–649, 6516–19
Diners Club300–305, 36, 3814, 16, 19

Часто задаваемые вопросы об алгоритме Луна

Алгоритм Луна (Luhn algorithm, формула Луна, mod 10) — это математическая формула для вычисления контрольной цифры, используемая для проверки правильности числовых идентификаторов. Алгоритм обнаруживает все одиночные ошибки ввода (замена одной цифры) и большинство перестановок двух соседних цифр. Он применяется в номерах банковских карт, IMEI мобильных устройств, идентификаторах ценных бумаг и многих других системах. Алгоритм не обеспечивает криптографической защиты, а служит для быстрой проверки корректности ввода данных.

Да, абсолютно безопасно. Все вычисления выполняются исключительно в вашем браузере (на стороне клиента). Введённые данные никогда не отправляются на сервер, не сохраняются и не передаются третьим лицам. Вы можете убедиться в этом, открыв инструменты разработчика в браузере (F12 → Network) и проверив, что при нажатии кнопки «Проверить» не происходит никаких сетевых запросов. Для дополнительной безопасности доступна функция маскировки номера.

Для вычисления контрольной цифры: 1) Возьмите все цифры номера кроме последней. 2) Начиная с правой цифры, удвойте каждую вторую цифру. 3) Если результат удвоения > 9, вычтите 9. 4) Сложите все цифры. 5) Контрольная цифра = (10 − сумма mod 10) mod 10. Наш калькулятор вычисляет контрольную цифру автоматически и показывает пошаговый расчёт.

Алгоритм Луна обнаруживает: все одиночные ошибки ввода (замена любой одной цифры), большинство транспозиций двух соседних цифр (кроме перестановки 0↔9), а также многие другие типичные ошибки ввода. Однако алгоритм не обнаруживает все возможные ошибки — например, перестановку одинаковых цифр или некоторые комбинации множественных ошибок. Это средство первичной проверки, а не криптографической защиты.

Нет, категорически нельзя. Сгенерированные номера предназначены исключительно для тестирования программного обеспечения. Они проходят проверку по алгоритму Луна, но не привязаны к реальным банковским счетам, не имеют срока действия и CVV-кода. Попытка использования сгенерированных номеров для оплаты является противозаконной. Генератор создан для разработчиков и тестировщиков, которым нужны валидные тестовые данные.

Наберите *#06# на телефоне для отображения IMEI (15 цифр). Введите этот номер в калькулятор в режиме «IMEI устройства» или «Автоопределение». Калькулятор проверит контрольную цифру по алгоритму Луна. Валидный IMEI подтверждает, что номер формально корректен, но не гарантирует легальность устройства — для полной проверки используйте сервисы GSMA или производителя.

Пакетный режим позволяет проверить до 100 номеров одновременно. Введите номера по одному на строку в текстовое поле и нажмите «Проверить все». Для каждого номера будет показан статус валидности, определённая платёжная система (для карт) и ожидаемая контрольная цифра (для невалидных). Результаты можно скопировать в буфер обмена для дальнейшего использования.

ℹ️ Дополнительная информация

Калькулятор алгоритма Луна постоянно обновляется и дополняется новыми функциями. Последнее обновление:

Все расчёты выполняются локально в вашем браузере. Данные не передаются на сервер, не сохраняются и не обрабатываются сторонними сервисами. Инструмент соответствует стандарту ISO/IEC 7812 для валидации номеров банковских карт и использует каноническую реализацию алгоритма Луна (mod 10).

Если у вас есть предложения по улучшению калькулятора или вопросы по работе алгоритма Луна, обращайтесь через форму обратной связи.

Комментарии (1)

Был ли полезен этот инструмент?
💬

Загрузка комментариев...

Лучшие предложения 2026

Финансовые продукты
с максимальной выгодой

Подобрали лучшие условия от проверенных банков и финансовых компаний России

Смотреть предложения
30%
Кэшбэк
Дебетовые карты
0%
Первый займ
Для новых клиентов
24%
Годовых
Вклады
ИИС
Инвестиции
Брокерские счета