NFC功能点介绍:
NFC英文全称Near Field Communication,近距离无线通信。
NFC采用主动和被动两种读取模式,NFC应用模式分为三种:
1、NFC卡模式(被读模式,手机终端可以模拟成为一张普通的非接触卡被pos机读取,相当于银行卡、门禁卡、公交卡等,又可以支持客户端对SE的访问,实现SE中存储的银行卡、公交卡的余额读取、空中充值等功能),
2、读写器模式(主读模式,手机终端可以读取一张非接触卡或者一个非接触标签中的内容,相当于将NFC手机当做POS机去读取银行卡、公交卡、或者将NFC手机读取NFC定义的标签中的标准数据,如名片、海报等)
3、点对点模式(是指两个手机终端在近距离内通过触碰直接传递数据)
具有SE功能的NFC硬件结构
手机终端NFC功能由NFC Controller、NFC协议栈、SE、SE访问API、SE访问控制及AP访问SE芯片构成,其主要功能如下:
1、NFC Controller:即NFC芯片,实现NFC卡模拟、读写器、点对点模式所定义的模拟、数字协议的处理
2、NFC协议栈:配置NFC芯片工作模式并实现NFC Forum定义的各项标准
3、SE:即安全芯片,所有涉及敏感数据,加密运算等业务(如银行卡、公交卡)均需要单独安全芯片处理
4、SE访问
API:向客户端开发访问SE的接口,以实现余额读取、空中充值等功能
5、SE访问控制:对SE访问进行控制和授权,保障SE安全
6、AP访问SE芯片:客户端通过应用处理器访问SE时的接口芯片,采用SE种类不同时该芯片也会有所不同,如SIM卡为SE时,此芯片即为modem
NFC终端不同模式下信息路由机制是不同的,在NFC终端工作在卡模拟模式时,外界POS机发送的信号会通NFC Controller转发到SIM卡中处理,而当NFC终端工作在读写器、点对点模式时,从外部卡片或手机读取的信息将通过NFC Controller转发到NFC协议栈解析,最终转交给操作系统或客户端应用程序处理。
安卓手机中NFC 点对点模式(P2P mode)使用方法详细说明
ORANGE API需求:
NFC Android API – Test Tools
PKCS 15 switcher----orange SIM STK菜单( 准备两张Gemalto_N9 和Oberthur N9 SIM卡)
PC/SC Tool------安装该文件sq13163-ab,工具界面如图1(电脑端插入NFC读卡器设备)
HID设备-----
测试用例中需要用到的APK如图2所示
NFC Android API – Test Tools
PKCS 15 switcher----orange SIM STK菜单( 准备两张Gemalto_N9 和Oberthur N9 SIM卡)
PC/SC Tool------安装该文件sq13163-ab,工具界面如图1(电脑端插入NFC读卡器设备)
HID设备-----
测试用例中需要用到的APK如图2所示
NFC Android API – Test Areas:
Seek4Android implementation
不同种类的APDU(应用协议数据单元)在Android应用程序和SIM卡之间交换
不同类型的状态字管理(90 00->确定,62 XX和63 XX警告状态,…)
错误操作(SIM errors, api error management,…)
Minimum Performance
Secure Elements—SIM开头
Nfc push Event
来自sim的不同类型的NFC事件被很好地路由到设备。
NFC事件包含适当的信息。.
HCI stress—
Access control(授权应用客户端访问SIM卡中对应的applet )—安装SEAccessControl.apk,使用PKCS#15 switcher来切换不同的Config来验证用例
访问保护 - 未经授权的应用程序无法选择cardlet)
NFC推送保护 - 不向没有授权接收它的APK提供推送
dynamic ACF
HCE testing主要包含以下测试:
Default route on SIM
NFC routing table 饱和时会自动切换路由通道—得到RTS值
在一些用例中会用到:Sim NFC协议(A,B,A&B),读取器NFC协议(A,B,A&B),默认路由(Sim,HCE),apk installed (Off Host, Host),屏幕打开/关闭
GSMA 菜单执行—路由溢出时会弹出GSMA菜单(超过RTS大小)
Bank NFC services用例测试
HCI stress tool
运行NFC-API\Orange NFC API_Tool Package V1.9.2\NfcEventsStressTest-v1.03 (with ACS ACR122 reader)文件中的run.bat文件,在电脑端显示的界面如图所示
PC/SC工具使用
PKCS15 switcher
用例中会用到切换SIM卡中的android和ERROR config时如图切换
SIM 卡 A、B、A&B协议通过cms 界面发送raw指令来更改,如图所示:
Type A only :
80E6400011000000000BEF09A0078605A00380010000;80E640000C0000000006EF04A002870000
Type B only :
80E6400011000000000BEF09A0078705A00380010000;80E640000C0000000006EF04A002860000
Type A&B :
80E6400011000000000BEF09A0078605A00380010000;80E6400011000000000BEF09A0078705A00380010000
通过HID OMNIKEY Workbench工具来更改HID读卡器类型,如图所示:
通过www.hidglobal.com网址,下载hid_omnikey_workbench_v1.4.0.14_x64_和hid_global_xchip_driver_ru_1.2.27.145两个驱动,安装成功后工具如图所示,如想将读卡器切换为TYPE A时,选中ISO1443A后点击左移图标,之后点击Apply菜单,读卡器类型就变为TYPE A。读卡器类型B对应的是Available cards中的ISO1443B
切换路由通道HCE、SIM:
切换路由通道为HCE卡,如下步骤:
- Install ‘Dynamic_Other_Host_vX.X.apk’
- Use ‘Dynamic_Other_Host’ to write RTS+2 AIDs
- Verify that default route is HCE:
- Unlock the Mobile screen then present it to the Omnikey reader, try to select SIM cardlet AID_30: 00A4040C0F4E4643546573746572455654312E30—如果 status word is: 6A82 (or 6999) ,路由通道就是HCE
切换路由通道为SIM,如下步骤:
- Uninstall ‘Dynamic_Other_Host’
- Install ‘Dynamic_Other_OffHost_vX.X.apk’
- Use ‘Dynamic_Other_OffHost’ to write (RTS+4) AIDs
- Verify that default route is SIM:
- Unlock the Mobile screen then present it to the Omnikey reader, try to select SIM cardlet AID_30: 00A4040C0F4E4643546573746572455654312E30---- 如果status word is: 9000,路由通道切换为HCE
BIP & CATTP:
BIP是SIM/USIM和移动设备之间的一种接口机制,能够为设备支持的数据载体提供入口
ONSM:
Orange NFC Service Management
http://c-onsm-ext.orange-labs.fr/
USER:WIKO
PASSWORD:!@wiko*
通过配置远程命令、空中下载的方式来管理SIM卡的应用下载、删除等。
Remote Commands configuration(远程命令配置):
ID:MSISDN(手机号)
ICCID(SIM卡卡号)
Type:命令类型,主要使用的有三个命令:
GET STATUS: 获取状态
DELETE: 删除应用
LOAD: 下载应用
Target:ISD(ISD)
Application to load:
主要使用:24K 、60K
States of executed commands
Test Cases of BIP: