当读者使用HCE
启动使用NFC模拟支付应用程序的交易时,我几乎没有问题读卡器是否像常规非接触式卡基础设施一样发送PPSE命令?
主控制器是否使用路由表中列出的已注册AID的AID列表响应PPSE命令?
因此,在读者选择AID后,主机控制器会指向正确的HCE服务吗?
请纠正我对上述概念的理解。
答案 0 :(得分:2)
EMV支付卡终端不区分塑料卡,基于安全元件的卡或HCE仿真卡。在所有情况下,它都会使用相同的协议。实际上"协议 s "因为EMV有几种不同的内核变体,它们与卡应用程序(稍微)说明不同的协议。但这种区别是基于应用程序变体和品牌(例如MasterCard EMV,MasterCard MagStripe,Visa等)而不是外形/"智能卡"硬件
因此,非接触式EMV阅读器将为任何类型的卡(塑料,SE,HCE等)选择PPSE,以检测实际的支付应用程序。
Android不解释PPSE选择命令,因此,它不生成或发送可用支付应用程序列表。请注意,用户通过设置UI选择HCE支付应用程序,并且一次只能激活/访问一个支付应用程序。
由应用程序处理PPSE。因此,通常,基于EMV标准的HCE支付应用程序将同时注册支付应用程序AID和PPSE DF名称。请注意,从协议的角度来看,DF名称和AID之间没有区别,因此您可以在主机APDU服务XML文件中使用DF名称的AID过滤器注册它(" 2PAY.SYS.DDF01&# 34;)在其ASCII十六进制表示325041592E5359532E4444463031
:
<aid-filter android:name="325041592E5359532E4444463031" />
因此,您的主机APDU服务将需要处理PPSE选择命令,并在其自由选择的数据模板中对包含EMV支付应用程序列表的FCI做出响应。