Можно узнать другие идентификаторы NFC TAG, когда мы использовали APK и TAG для каждого телефона. Например, телефон A и B пытаются пометить. Затем телефон A может узнать идентификатор NFC TAG телефона B (4 байта - HEX). Но я хочу знать, как узнать свой идентификатор NFC TAG на моем телефоне. Другие телефоны не использовал. Если вы знаете какую-либо другую информацию, пожалуйста, дайте мне свой совет по этому поводу.
Как проверить мой идентификатор NFC TAG (UID)?
Ответы (1)
Телефон не обязательно имеет фиксированный идентификатор предотвращения столкновений («идентификатор тега NFC», как вы его называете). Например, он может иметь идентификатор предотвращения столкновений, который назначается случайным образом при каждой активации (например, включается внешнее ВЧ-поле, включается телефон и т. д.). Он также может иметь один или даже несколько неизменяемых идентификаторов предотвращения столкновений ( например, от одного или нескольких элементов безопасности).
Это зависит от нескольких факторов:
- Подключен ли элемент безопасности к контроллеру NFC в этом телефоне?
- Контроллер NFC настроен на доступ внешнего мира к подключенному защищенному элементу?
- Находится ли телефон в режиме эмуляции карты или в пассивном одноранговом режиме (или в комбинированной фазе предотвращения столкновений для обоих режимов)?
- Предоставляет ли контроллер NFC ровно один объект, эмулирующий карту (например, элемент безопасности или хост-контроллер), напрямую для внешнего мира, или он объединяет один или несколько объектов-эмуляторов с помощью маршрутизации NFCEE?
- И т.п.
Когда вы упоминаете «APK», я предполагаю, что вы имеете в виду платформу Android (хотя вы отказались отвечать на мой вопрос об этом). На более новых устройствах Android (особенно тех, которые поддерживают эмуляцию карт на основе хоста) и на устройствах Android, которые вообще не используют эмуляцию карт, идентификатор предотвращения столкновений (UID), видимый внешнему миру, обычно не статичен и меняется каждый раз. активации или при каждой перезагрузке устройства (похоже, существуют некоторые исключения). В частности, в одноранговом режиме NFC стандарт предписывает использование случайного идентификатора для каждого сеанса. Таким образом, в этих типичных случаях UID не очень полезен.
Как правило, Android не предоставляет никакого API для извлечения используемого в настоящее время идентификатора предотвращения столкновений внутри устройства. Обычно случайный идентификатор создается внутри контроллера NFC, поэтому система Android даже не узнает об этом.
Что касается неизменяемых идентификаторов чипов защищенных элементов, ванильный Android не содержит общедоступного API для доступа к защищенным элементам, поэтому то же самое относится к любой информации, позволяющей идентифицировать такие защищенные элементы.