Я использую считыватель Mifare classic 1k, и он поставляется с ключами по умолчанию A и B, которые:
FFFFFFFFFFFF
Использование ключа А для чтения и записи работает. но я хочу поменять ключи.
Можно ли как-то получить правильные биты доступа для сектора и каков формат?
То, что я сделал сейчас, это то,
<newKey>+ access bits + <oldKEY>
212121212121078069FFFFFFFFFFFF
Биты доступа 078069 я получил при чтении блока 7 сектора 1, который выглядит так:
000000000000FF078069FFFFFFFFFFFF
Но есть ошибка.
Неверные биты доступа или неправильный формат?
Ответ 1 · рейтинг 4 · NFC guy
В зависимости от настроек контроля доступа трейлера сектора вам может потребоваться пройти аутентификацию с помощью ключа A или ключа B, чтобы иметь возможность записывать ключи. См. раздел 8.7 (и, в частности, 8.7.2) таблицы данных по адресу http://www.nxp.com/documents/data_sheet/MF1S70YYX.pdf о том, как кодировать/декодировать биты управления доступом в трейлере сектора.
Ответ 2 · Pedro Almeida
Что вам нужно сделать, так это, если биты доступа имеют разрешение (а у вас похоже, что они есть), это написать:
AAAAAAAAAAAA078069BBBBBBBBBBBB
где AAAAAAAAAAAA и BBBBBBBBBBBB - НОВЫЕ клавиши A и B соответственно. (Вы никогда не записываете старые ключи, вы сначала аутентифицируетесь с ними).
Когда вы читаете, используя ключ А, вы всегда будете получать
000000000000078069BBBBBBBBBBBB
Ключ A всегда будет замаскирован