Компьютерра, 2008 № 38 (754) | страница 49
Однако при использовании билетов информация о них заносится в память турникетов (это нужно хотя бы для того, чтобы вести статистику) и в определенное время (возможно, по расписанию) сливается в центральную базу данных и уже там обрабатывается. Каждый раз при покупке билета его данные заносятся в локальную БД, а оттуда отправляются в ЦОД. Это подтверждают метрополитеновские программы: они могут функционировать как в режиме накопления данных, так и в онлайн-режиме, сразу отправляя информацию в центральную базу. Если несколько раз засвечивается номер, который не зафиксирован в БД, это быстро выявляется и билет попадает в стоп-лист, который закачивается в турникеты при следующем обновлении (их память, конечно, не резиновая, но даже за вычетом объема памяти, используемой микропрограммой турникета в служебных целях, ее должно хватить, чтобы занести достаточное количество записей). Так что все сгенерированные мною Mifare Ultralight в течение нескольких дней попадали в стоп-лист.
А можно ли многократно перезаписывать карточку?
- В билете есть перезаписываемая область данных (48 байт), зона однократной записи (4 байта) и зона записи блокировок. С помощью установки управляющих битов можно заблокировать запись в определенные страницы или даже запретить блокирование записи. Смысл в том, что перезаписать можно все данные, кроме зоны однократной записи (one-time programmable, OTP) и битов блокировок: в подземке зона OTP используется для постепенного "выжигания" битов в зависимости от количества использованных поездок (в процентном соотношении). И эта зона, естественно, проверяется при валидации билета турникетом. Когда количество поездок полностью исчерпано, на запись блокируются все страницы памяти и билет остается только выкинуть. Так что "вечный" Ultralight сделать не получится. С клонированным Mifare Classic (отсутствие их жесткой привязки к аппаратному серийному номеру позволяет изготовить "клон") в этом смысле проще: теоретически им можно пользоваться, пока не истечет срок действия карточки, которая была взята в качестве "донора", а потом можно просто пойти и выудить свежий дамп. На практике, правда, многие клонированные "классики" тоже попадают в стоп-лист. На данный момент я как раз пытаюсь понять, по какому принципу идет отсев "левых" карт и какую роль в этом играет аппаратный серийный номер, который собственно для защиты данных не используется.