Реферат: Выпуская платежные карты, банки и торговые организации могут формировать номера карт, следуя определенным правилам


УДК 004.4(06) Технологии разработки программных систем


Г.Д. РАШИН, Б.А. ЩУКИН

Московский инженерно-физический институт (государственный университет)


МЕТАЯЗЫК ДЛЯ ОПИСАНИЯ АЛГОРИТМОВ ПРОВЕРКИ КОНТРОЛЬНЫХ ЗНАЧЕНИЙ


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


Банки и торговые организации, представленные в [1], используют для своих платежных карт различные способы проверки номера. Проверка номера требуется, как правило, для трех целей.

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

Вторая цель состоит в проверке правильности номера с точки зрения его формата и способа формирования.

Третья цель состоит в обеспечении некоторой защиты от ошибок передачи данных через сеть.

Существует множество разнообразных алгоритмов проверки номера, это вызвано тем, что никто не ограничивает фантазию работников банков и торговых организаций по созданию способов проверки номеров выпускаемых ими платежных карт. Тем не менее, существуют некоторые шаблоны, которых стараются придерживаться при создании таких алгоритмов. Эти шаблоны обеспечивают более или менее адекватный способ проверки.

Таким образом, существует возможность выделить наиболее общую структуру алгоритма проверки номера платежной карты. Эту структуру можно представить набором специальных операций над номером, которые выполняются, в общем случае, последовательно друг за другом. Каждая последующая операция во многих случаях использует результат предыдущей операции или результат ее действия на номер платежной карты.

Все операции можно разделить на две группы: проверочные и вычислительные. Вычислительные операции выполняют только вспомогательные вычисления. Проверочные операции тоже могут производить вычисления, но при этом могут дать заключение о том, что номер неверен.

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

Для того, чтобы единообразно описывать эти различные проверки, был создан метаязык, используя который специальный программный модуль может проверять номер карты, руководствуясь сделанным на метаязыке описанием алгоритма. Метаязык представляет собой некоторый набор операций, которые соответствуют текстовому описанию действий над номером карты.

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


Список литературы


1. Check digit algorithm. – BankNet Bill Payments Technical Specifications, 2003


ISBN 5-7262-0633-9. НАУЧНАЯ СЕССИЯ МИФИ-2006. Том 2
еще рефераты
Еще работы по разное