Магнитные карты и ПК
Шрифт:
Дорожка ISO 3 часто считается «свободной», но ее также называют THRIFT или MUNTS, по имени некоторых американских фирм, советующих ее использовать. Она предлагает достаточно широкие возможности применения, но уступает пальму первенства чип-карте, которая занимает все большие позиции в банковской сфере.
Расположение
Магнитная полоса наносится в нижней части зоны, расположенной приблизительно на расстоянии 15,8 мм от верхней^ кромки карты на ее обратной стороне. Наиболее частый формат ширины магнитной полосы — половина дюйма (12,7 мм). Однако оба эти размера лишь приблизительны, поскольку роль играют расположение и ширина
Каждая дорожка имеет ширину в 0,11 дюйма (2,79 мм) и отделена от соседней защитным промежутком, помогающим избежать случайного захождения одной дорожки на другую, а также обеспечивающим допуск на расположение головок.
Расположение каждой дорожки определено по отношению к верхней кромке карты и составляет 0,223 дюйма — для ISO 1; 0,353 — для ISO 2; 0,493 — для ISO 3. Именно на эти величины и следует опирается для оптимального расположения головок при построении считывающих устройств.
Плотность записи
Объем информации, который может быть вмещен магнитной дорожкой, обычно выражается в битах на дюйм, или bpi (bits per inch). Дорожки стандартизованных карт имеют плотность записи 75 bpi (ISO 2) и 210 bpi (ISO 1 и ISO 3) — значения, которые, конечно, можно встретить и на нестандартных носителях.
Длина дорожки 3,375 дюйма (длина карты) соответствует теоретическому максимуму в 253 и 708 бит. Эти цифры можно сравнить, например, с объемом памяти чип-карты, который не превышает 256 бит при гораздо более высокой стоимости, но, необходимо это подчеркнуть, обеспечивающей безопасность, не идущую ни в какое сравнение с магнитными картами.
Длина, занимаемая битом на дорожке, составляет 034 мм при 75 bpi и 0,12 мм при 210 bpi. Зная, что при записи логическая 1 кодируется удвоенной частотой, нетрудно представить, какой должна быть ширина воздушного зазора магнитной головки. И наконец, можно оценить скорость считывания данных при соответствующей скорости прохождения карты, составляющей от 100 до 1500 мм/с.
Разброс цифр достаточно типичный в практике: приблизительно 300-4500 бит/с (bps — bits per second или бод) при 75 bpi, 800-12500 bps при 210 bpi.
Учитывая, что логическая 1 кодируется удвоенной частотой, демодулятор должен работать в диапазоне частот от 300 Гц до 25 кГц, что не всегда просто осуществить.
В зависимости от дорожки данные обычно кодируются в виде символов, содержащих 5 или 7 бит. На дорожках ISO 2 и ISO 3 размещаются исключительно цифровые символы (цифры), в то время как дорожка ISO 1 может вмещать и алфавитно-цифровые данные (цифры и буквы). С помощью 4 бит удается представить 16 различных символов, что достаточно для кодирования цифр от 0 до 9 и нескольких специальных символов. Пятый бит — для контроля по четности, и применение его будет рассмотрено ниже. Шесть бит позволяют закодировать 64 различных символа — все буквы алфавита (без разделения на прописные и строчные), 10 цифр и некоторое число специальных символов. Вместе с битом контроля четности получается, таким образом, семиразрядное кодирование.
Ниже представлена полная таблица истинности с шестнадцатеричным эквивалентом каждого символа пятибитного кода ANSI, использование которого рекомендовано стандартами ISO.
Пятиразрядный ANSI-код (цифровой):
Следует отметить, что у данного кода младшие значащие разряды стоят в начале, что соответствует порядку следования битов на магнитной дорожке, когда карта проходит в нормальном направлении считывания (слева направо лицом к головке).
Наибольшую важность представляют три особых символа: флажок начала (start), флажок конца (end) и разделитель поля данных (sep). Полезное содержимое дорожки (закодированные на ней данные) всегда заключено между start и end, разделитель sep может неоднократно использоваться внутри блока данных с тем, чтобы разграничить зоны, которые важно отличать друг от друга.
Символ start играет наиважнейшую роль, поскольку распознавание именно этого символа позволяет декодеру узнать, что он получает поток данных, закодированных на пяти битах, и точно определить его начало.
Мы знаем, что для синхронизации демодулятора запись всегда должна начинаться, по крайней мере, с десяти нулей, которые, естественно, требуется удалить при декодировании.
Блок «полезных» данных может начинаться с одного или нескольких битов в состоянии 0, но при этом флажок start позволяет избежать любого разночтения. В конце дорожки блок данных завершается флажком end, за ним сразу следует символ определения ошибки, так называемый LRC, речь о котором пойдет ниже.
Начало и конец дорожки заполняются нулями, что объясняет явное несоответствие между объявленными объемами: так, например, 40 символов На дорожке ISO 2 соответствует 200 бит, в то время как дорожка может вместить их до 253. Аналогичный расчет возможен и для дорожки ISO 3, которая в состоянии вместить 708 бит, а ограничена 107 символами, представляющими только 535 бит, так же, как и дорожка ISO 1, содержащая 79 полезных символов по 7 бит (то есть 553 бита).
Практический опыт подсказывает, что при кодировании следует примерно поровну распределить лишние нулевые биты, между началом и концом дорожки. Тогда полезные данные окажутся размещенными в зоне, наиболее благоприятной для считывания, а именно посередине дорожки.
Ниже представлена таблица истинности семибитного кода ANSI в той же форме, что и предыдущая.
Семиразрядный ANSI-код (алфавитно-цифровой):
Помимо значительно большего числа специальных символов, редко используемых на практике, вновь можно отметить наличие флажков start, end и разделителя полей sep. Роль, выполняемая этими тремя флажками, идентична той, что они играют в пятибитном цифровом коде. Однако обратим внимание, что кодирование было выбрано так, чтобы наверняка не спутать оба стартовых символа (11010 и 1010001).