Нужно ли мне знать, что такое AID карты для эмуляции карты с Android HCE?
Да, безусловно! AID — это имя вашего приложения. Считыватель будет спрашивать карты (эмулированные или нет), содержат ли они приложение с определенным именем, и будет связываться только с теми картами, которые содержат приложение, поддерживаемое считывателем.
Как найти AID (или AID) приложений на определенной карте?
Самый очевидный способ: Спросите владельца или производителя системы. Если они не говорят вам, вам, скорее всего, не стоит возиться с эмуляцией карты.
Есть, конечно, и другие способы узнать, как работает карта. Многие карты соответствуют определенным стандартам. Платежные карты, например, обычно реализуют протоколы EMV. Для транспортных карт также существует несколько стандартов, например. ВДВ-КА, ИТСО и т. д. Вы можете попытаться выяснить, использует ли карта какое-либо стандартное/известное приложение, выполнив дактилоскопирование (например, проанализировать карту, чтобы узнать тип карты, тип чипа, производителя чипа и т. д.). .) и выполняя грубое сканирование (например, попытайтесь выбрать известные AID приложений, попытайтесь перечислить файлы на карте и т. д.) Вы сможете найти пару бесплатных инструментов, которые могут помочь вам в этом.
Достаточно ли знаний AID для эмуляции (например, с использованием HCE) определенной карты?
Нет, конечно нет.
Прежде всего, вам также необходимо знать и реализовать протокол, по которому ридер общается с приложением. Хотя многие приложения для смарт-карт используют общие конструкции команда/ответ (см. межотраслевые команды ИСО/МЭК 7816-4), каждое приложение обычно использует их немного по-своему. Если приложение соответствует какому-то стандарту, вы можете просто реализовать этот стандарт. Если приложение использует какой-то проприетарный протокол, вам придется обращаться к владельцу/производителю системы или к тяжелым методам проб и ошибок.
Во-вторых, даже AID и протокола обычно недостаточно для дублирования и эмуляции конкретной карты. Смарт-карты обычно предназначены для хранения некоторого секрета, позволяющего однозначно идентифицировать и аутентифицировать карту. Эти секреты обычно не могут быть извлечены из карты. Следовательно, вы не можете просто передать эти секретные данные в свое приложение HCE.
person
Michael Roland
schedule
15.12.2015