Investor's wiki

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

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

Что такое алгоритм Луна?

Алгоритм Луна, также известный как «Алгоритм модуля 10», представляет собой формулу, которая используется для определения точности идентификационного номера, предоставленного пользователем. Эта формула широко используется для проверки номеров кредитных карт,. а также других числовых последовательностей, таких как государственные номера социального страхования (SSN).

Сегодня алгоритм Луна является важным компонентом системы электронных платежей и используется всеми основными кредитными картами.

Как работает алгоритм Луна

Алгоритм формулы LUHN был разработан немецким ученым-компьютерщиком Гансом Петером Луном в 1954 году, когда он работал исследователем в IBM. Точная работа алгоритма основана на модульной арифметике, математической технике, разработанной Карлом Фридрихом Гауссом в начале 19 века. Хотя его детальная работа довольно сложна, он наиболее известен тем, что позволяет компьютерам быстро оценивать, являются ли номера кредитных карт, предоставленные клиентами, точными.

Это делается путем применения серии вычислений к указанному номеру кредитной карты, суммирования результатов этих вычислений и проверки соответствия полученного числа ожидаемому результату. Если это так, то кредитный номер считается действительным. В противном случае алгоритм отклонит номер кредитной карты, указывая на то, что пользователь допустил ошибку при вводе номера.

С точки зрения клиента, мы постоянно используем алгоритм Луна, даже не осознавая этого. При размещении заказов в Интернете или с использованием торгового терминала (POS) компьютерные системы могут быстро определить, когда мы допустили ошибку при вводе нашей информации. Это связано с тем, что алгоритм Луна был включен в программирование этих систем. Без этого нам пришлось бы ждать, пока весь заказ на покупку не будет отправлен, прежде чем понять, была ли транзакция одобрена. Алгоритм Луна, другими словами, помогает нам быстро выявлять ошибки пользователя и тем самым ускорять скорость транзакций.

Реальный пример алгоритма Луна

Одной из центральных концепций алгоритма Луна является использование так называемых «контрольных цифр». Эти цифры состоят из чисел, которые вставляются в более широкую числовую последовательность, чтобы помочь проверить или «проверить», является ли весь номер подлинным.

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

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

Особенности

  • Алгоритм Луна — это математическая формула, разработанная в конце 1950-х годов.

  • В сфере финансов это помогло повысить эффективность обработки электронных платежей за счет быстрого выявления неверно введенных номеров кредитных карт.

  • Он широко используется для проверки подлинности идентификационных номеров.