🔰 智能卡基础概念
什么是智能卡
智能卡(Smart Card)是一种内嵌集成电路芯片的塑料卡片,尺寸通常遵循 ISO 7816-1 的 ID-1 标准(85.6 × 53.98 mm,即标准银行卡大小)。芯片包含 CPU、RAM、ROM、EEPROM/Flash 和 I/O 接口,具备独立的数据处理和安全计算能力。
与磁条卡不同,智能卡可以主动执行加密运算、访问控制、数据存储和程序逻辑,是现代信息安全体系的基础硬件载体。
接口类型
- 接触式(Contact):通过卡面金属触点(C1-C8)与读卡器建立物理电气连接。遵循 ISO 7816-2/3 标准。最常见的是银行卡和 SIM 卡。
- 非接触式(Contactless):通过 13.56 MHz 射频场(RFID)与读卡器通信。遵循 ISO 14443 标准。典型应用为公交卡、门禁卡、Apple Pay 等。
- 双界面(Dual Interface):同一芯片同时支持接触式和非接触式接口,是目前金融 IC 卡的主流形态。
- NFC:基于 ISO 18092 的近场通信标准,手机 NFC 可模拟非接触式卡片(卡模拟模式)。
芯片硬件架构
典型智能卡芯片包含以下组件:
- CPU:8/16/32 位处理器(ARM SC000/SecurCore 系列),运行频率通常 1-50 MHz
- ROM:掩膜只读存储器,存放芯片制造商固件和操作系统核心(不可更改)
- EEPROM/Flash:可擦写存储器,存放应用数据、密钥、文件系统(通常 2KB-1MB)
- RAM:运行内存,用于加解密运算的临时数据(通常 2-16 KB)
- 加密协处理器:硬件加速 AES/DES/RSA/ECC/SM2/SM3/SM4 运算
- 随机数发生器:真随机数(TRNG),用于密钥生成和挑战-应答认证
- 传感器:电压/频率/温度/光照检测,防侧信道攻击
COS(卡操作系统)
COS(Card Operating System)是运行在智能卡芯片上的嵌入式操作系统,负责:
- 传输管理:处理 APDU(应用协议数据单元)命令和响应
- 文件管理:维护 MF/DF/EF 树形文件系统(ISO 7816-4)
- 安全管理:访问权限控制、安全状态机、密钥管理、加密服务
- 应用管理:多应用支持、应用防火墙、GlobalPlatform 生命周期管理
主流 COS 平台包括:Java Card(Oracle)、MultOS、SmartCafe、以及各芯片厂商自研 COS。
文件系统
智能卡采用树形文件结构(ISO 7816-4):
- MF(Master File):根目录,每张卡唯一
- DF(Dedicated File):子目录,对应一个应用(如 USIM、EMV、身份证应用)
- ADF(Application DF):包含应用数据的 DF
- EF(Elementary File):实际存储数据的文件(透明 EF/线性定长 EF/循环 EF)
APDU 通信
终端与智能卡之间通过 APDU(应用协议数据单元)交换数据。命令 APDU 包含:CLA(指令类)、INS(指令码)、P1/P2(参数)、Lc(数据长度)、Data(命令数据)、Le(期望响应长度)。响应 APDU 包含 Response Data 和 SW1/SW2 状态字(如 0x9000 = 成功)。