中国联通PKCS15

中国联通基于UICC平台的Java卡互操作技术规范 v3.0 第二部分:SWP卡

附录D 卡片安全访问控制机制

SIM卡访问控制机制涉及以下实体:
1) SIM卡:存储访问控制主文件,访问控制规则文件及访问控制条件文件,文件结构定义需遵循PKCS#15规范
2) 手机终端:需提供终端专有访问控制模块,以实现手机客户端对SIM卡的访问控制功能。
3) 手机钱包客户端:提供应用下载和规则管理的管理界面。
4) 手机钱包平台:对卡片内手机钱包相关应用、安全域以及访问控制规则进行管理操作。
5) 终端专有访问控制模块:是集成在手机终端操作系统I中的一个模块,此模块能够从PKCS#15应用的规则文件中读取访问规则文件,并且依据这些客户端的证书判断客户端程序是否可以访问SIM卡。如果支持APDU过滤列表功能,客户端与SIM卡applet程序之间通讯的APDU指令会被检查。终端专有访问控制模块本身不存储规则,所有的规则储存在SIM卡的PKCS#15规则文件中。
6) PKCS#15应用:此应用下属的文件系统用于存储访问控制数据,这些数据包含了一个被授权的客户端应用发布者证书的SHA1算法的HASH值,及其对应的SIM卡程序的AID。

当手机客户端访问SIM卡端程序时,终端专有访问控制模块从PKCS#15应用下属文件系统中读取访问控制记录,此记录的标识为客户端程序所访问的SIM卡applet的AID值。如果所读取的访问控制条件文件中的客户端应用发布者证书的HASH值与当前客户端的证书HASH值匹配,客户端对此Applet的访问被允许,否则被拒绝。
若支持APDU过滤列表功能,如果客户端发往Applet的APDU命令与APDU过滤列表中的指令匹配,则允许客户端程序与此Applet之间的通讯。

PKCS#15应用AID
PKCS#15应用的AID为:A0 00 00 00 63 50 4B 43 53 2D 31 35。
开机后,读取EF DIR内容,解析出PKCS#15应用AID和对应的文件路径。
举例(EF DIR的第二条记录内容):
61 1C 4F 0C A0 00 00 00 63 50 4B 43 53 2D 31 35 50 06 50 4B 43 53 31 35 51 04 3F 007F 50 FF FF
其中:
• A0 00 00 00 63 50 4B 43 53 2D 31 35为PKCS#15应用的AID
• 3F 00 7F 50为对应的路径

PKCS#15 DF的文件ID为7F50。

ODF文件
此文件ID为5031,文件结构参照PKCS#15中PKCS#15Objects对象的定义,采用dataObjects属性。指向DODF文件。

DODF文件
此文件ID为5207,文件结构参见PKCS#15规范。指向ACMF文件。

DODF文件为访问控制数据读写入口,此入口采用GP定义的OID规则生成的

CMF文件
此文件为访问控制主文件(Access Control Main File),文件ID定义为4200。指向ACRF文件。

ACMF文件包含着刷新的tag以及指向ACRF文件的路径(支持访问安全规则)。
二进制内容举例:0x301004080000000000000001300404024300
• 排序编码 0x3010
0x30 = tag “sequence”
0x10 接下来数据的长度
• 刷新的tag在ASN.1 中以0x04080000000000000001格式编码.
0x04 = tag
0X08 = 数据长度
0x0000000000000001 = 刷新的tag值 (示例数据,可以为任何值)

• ACRF文件路径 0x300404024300
0x30 = tag “排序” (ASN.1路径是一种排序)
0x04 = 数据长度
0x04 = tag “路径”
0x02 = 长度
0x4300 = 文件标识符 (示例标识符)

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注