2013-11-30 2 views
-2

Привет, я разработчик Android. Я уже строю Android-устройство для чтения и записи NFC, а также пучок. Поэтому, используя writer, я могу писать простые данные о тегах NFC, и с помощью читателя я могу читать данные из тега. Используя луч, я могу передавать данные между двумя устройствами с поддержкой NFC. Так что до сих пор все работает нормально. Теперь я хочу работать с NFC-платежами. Я работаю на платформе Android. Поэтому мой вопрос заключается в том, как работают читатели NFC, которые используются для платежей. Работают ли они на Beam или наше устройство действуют как тег nfc для считывателей NFC, и он просто считывает данные с устройства. Как на стороне устройства я согласен, что этот читатель предназначен для платежей или чего-то еще. Я читал о HCE андроида, он очень помогает в понимании концепции. Но я немного запутался в отношении понятий читателей и рабочих сценариев. Есть ли кто-нибудь, кто может помочь мне понять это, «Нужна помощь». Спасибо.Как работают считыватели NFC?

ответ

4

Когда вы говорите о платежах, я предполагаю, что вы ссылаетесь на платежи на основе известных схем кредитных карт, таких как AmEx, Discover, JCB, MasterCard, VISA и т. Д. Их платежные протоколы стандартизированы в EMVCo. Обратите внимание, что существуют другие (а не широко распространенные) схемы платежей, которые используют разные подходы.

Для бесконтактных protcols на EMV на основе платежных карт, они обычно следуют по следующей схеме:

  • ИСО/МЭК 14443 предотвращения столкновений и активации (либо типа A или типа B)
  • ИСО/IEC 14443-4 транспортного протокол
  • ISO/IEC 7816-4 ПБДПА
  • схема оплаты конкретная команда наборы (сторона для чтения для тех наборов команд стандартизирована в EMV бесконтактных Технических характеристик EMVCo для платежных систем, отделенны в 5 различных ядрах для разные кредиты/де схемы немного карт)

(В чтения/режиме автор NFC API терминологии Андроида, «ISO/IEC 14443 предотвращения столкновений и активации (либо типа A или типа B)» были бы NfcA или NfcB и сочетание " ISO/IEC 14443 «Анти-столкновение и активация (тип A или тип B)» и «Транспортный протокол ISO/IEC 14443-4» будет IsoDep.)

Таким образом, платежный терминал (например, POS) реализует сторону считывателя для вышеупомянутого стека протоколов. Пользовательское платежное устройство (например, пластиковая кредитная карта, мобильный телефон с виртуальной кредитной картой) реализует карточную сторону этих протоколов.

Так вопросы:

  • Beam (или режим НФК равный-равному) не участвует в этих схемах платежных карт.

  • Режим чтения/записи NFC (как реализовано на устройствах Android) в основном способно реализовать сторону платежных терминалов этих схем.

  • Мне не нравится термин «действовать как теги NFC» в этом контексте. Теги NFC (как определено NFC Forum) представляют собой чистые контейнеры данных с доступом для чтения (и дополнительной записи), где могут храниться сообщения NDEF. Платежные карты, однако, являются (бесконтактными) смарт-картами с возможностями обработки (т. Е. Они выполняют программный код), защищенным хранилищем данных и криптографическими возможностями. Помимо свободно читаемых статических данных, они, как правило, также содержат программную логику, которая обрабатывает запросы со стороны читателя, а также содержит секретные ключи (которые никогда не могут быть прочитаны с карты обычными способами), используемые для генерации подписей по транзакциям платежей и т. Д.

  • Установка HCE для Android позволяет разработчикам реализовать вышеупомянутый стек протоколов на устройстве Android. Таким образом, устройство HCE и Android может быть переведено в режим, когда он действует как бесконтактная смарт-карта и интерпретирует команды смарт-карты ISO/IEC 7816-4 (APDU).

 Смежные вопросы

  • Нет связанных вопросов^_^