一、前言
以前,小灵通(PHS)终端与用户相关身份信息属于机卡一体的体系,用户如果要购买小灵通终端,必须到电信营业厅进行烧号的工作,由电信运营商将网络参数、鉴权信息等烧入到小灵通终端内,从某种程度上限制了终端销售渠道的多样化和用户对终端的选择度,造成用户换机、换号手续复杂,不利于运营商开展增值业务,而且该种方式安全性差,不法分子很容易即可利用烧号器从终端内读出用户网络参数、鉴权信息等内容,并码机使用以逃避话费。
2004年12月13日,由中国电信集团公司、中国网通集团公司、华为技术有限公司、中兴通讯股份有限公司、UT斯达康(中国)有限公司五家公司牵头在北京成立了"中国固网和无线终端联盟"(简称CFWTA)。
联盟组织制定了"中国PHS机卡分离手机统一标准",正式出台了小灵通PIM卡技术规范,主要内容包括:小灵通PIM卡的逻辑结构、编码和文件结构;安全特性(鉴权、算法);机卡接口功能及其响应;EF文件内容格式;PIM卡应用工具箱(PTK)功能等。
小灵通机卡分离中的一个重要技术创新就是:小灵通PIM卡。它是小灵通机卡分离中的灵魂,它存储着用户相关身份信息、网络参数、鉴权信息等核心内容。下面,我就简单介绍其技术原理。
二、小灵通PIM卡技术特性
小灵通PIM卡属于IC卡中的一种,IC卡是集成电路卡(IntegratedCircuitCard)的简称,是镶嵌集成电路芯片的塑料卡片,其外形和尺寸都遵循国际标准(ISO)。芯片一般采用不易挥发性的存储器(ROM、EEPROM)、保护逻辑电路、甚至带微处理器CPU。IC卡分为:非加密存储器卡、逻辑加密存储器卡、智能卡。小灵通PIM卡属于智能卡,目前,智能卡应用最多的是GSM移动通讯中的SIM卡和CDMA移动通讯中的UIM卡,未来将要开展的3G移动通讯中的USIM卡也属于智能卡。小灵通PIM卡与SIM卡技术特性极为相似,下面我就简单介绍PIM卡。
(一)PIM卡定义
SIM卡是(Subscriber Identity Module)的英文简称,PIM卡是(PHS Subscriber Identity Module)的英文简称。
(二)PIM卡的结构和类型
PIM卡是带有微处理器的智能芯片卡,它的构成是以下几个硬件模块:
*CPU
*程序存储器(ROM)
*工作存储器(RAM)
*数据存储器(EPROM或E2PROM)
*串行通信单元
这五个模块必须集成在一块集成电路中,否则其安全性会受到威胁。因为,芯片间的连线可能成为非法存取和盗用PIM卡的重要线索。
*植入了COS(CardOperatingSystem)芯片操作系统
*以文件模型进行信息管理
*文件标志符作为唯一标志信息
*存储着PSNM、KI、国家代码、运营商代码、CCH、PIN、UCHV、ADM等网络参数、鉴权信息等内容。
PIM卡逻辑结构如下:

在实际使用中有两种功能相同而形式不同的PIM卡:
(a)卡片式(俗称大卡)PIM卡,这种形式的PIM卡符合有关IC卡的ISO…7816标准,类似IC卡。
(b)嵌入式(俗称小卡)PIM卡,其大小只有25mm×15mm,是半永久性地装入到移动台设备中的卡。
两种卡外装都有防水、耐磨、抗静电、接触可靠和精度高的特点。
(三)PIM卡的电气特性
我们从卡片上看到的金属部分是封装在模块上的载带的触点,有些人把它错误地叫做芯片。其实真正的半导体芯片被封装在模块的里面。PIM卡是按照IC卡的协议规范生产的,IC卡的协议规范中最基础最重要的一套规范是ISO/IEC7816协议。这套协议不仅规定了IC卡的机械电气特性,而且还规定了IC卡(特别是智能卡)的应用方法(包括COS中很多数据结构)。
PIM卡芯片有八个触点,与移动台设备相互接通是在卡插入设备中接通电源后完成。此时,操作系统和指令设置可以为SIM提供智能特性。如图所示。
(四)PIM卡的存储内容
PIM卡采用新的单片机及存储器管理结构,因此处理功能大大增强。PIM卡中存有三类数据信息:
(1)与持卡者相关的信息以及PIM卡将来准备提供的所有业务信息,这种类型的数据存储在根目录下。
(2)PHS应用中特有的信息,这种类型的数据存储在PHS目录下。
(3)PHS应用所使用的信息,此信息可与其它电信应用或业务共享,位于电信目录下。
(五)PIM卡存储结构
PIM卡的主要完成两种功能:存储数据(控制存取各种数据)和在安全条件下(个人身份号码PIN、鉴权钥Ki正确)完成客户身份鉴权和客户信息加密算法的全过程。
与桌面系统不同的是智能卡中DF级数(相当于目录层数的概念)通常是固定的,一般为1级(MF-DF),也有的为两级(MF- DF - SubDF)结构,但7816协议本身并不严格规定DF的级数。另外,7816协议对EF文件的类型有基本的定义,所以卡上的文件很多都是有一定格式的(如"定长记录"文件),并不是像桌面系统中的文件那样给出偏移量和长度就能操作的"透明"结构。对于更高层的协议(如EMV、PBOC),对EF文件的类型有更具体的规定,这种规定往往为了适应本领域的应用。比如PBOC协议规定的"钱包文件",就是为让智能卡适用于金融领域。
PIM卡智能特性的逻辑结构是树型结构。全部特性参数信息都是用数据字段方式表达,如图所示。即在根目录下有三个应用目录,一个属于行政主管部门应用目录,两个属于技术管理的应用目录,分别是PHS应用目录和电信应用目录。所有的目录下均为数据字段,有二进制的和格式化的数据字段。数据字段中的信息有的是永存性的即不能更新的,有的是暂存的,需要更新的。每个数据字段都要表达出它的用途、更新程度、数据字段的特性(如识别符)、类型是二进制的还是格式化的等。

(六)PIM卡中的保密算法及密钥
PIM卡中最敏感的数据是保密算法A3、A8算法、密约Ki、PIN、PUK和Kc。A3、A8算法是在生产PIM卡的同时写入的,一般人都无法读A3、A8算法;PIN码可由客户在手机上自己设定;PUK码由运营者持有;Kc是在加密过程中由Ki导出;Ki需要根据客户的IMSI和写卡时用的母钥(Kki),由运营部门提供的一种高级算法DES,即Ki=DES(IMSI,Kki),经写卡机产生并写入PIM卡中,同时要将IMSI、Ki这一对数据送入PHS网路单元AUC鉴权中心。
一般流行的做法是用一高级方程DES对Ki进行加密,DES方程需要一把密钥Kdes,加密和解密都用同一把密钥。由运营部门提供DES方程给HLR/AUC设备供应商,运营部门制定严格的保密制度,管理好密钥Kdes就能保证Ki传递的安全性,此过程见图所示。
(七)数据和参数
PIM卡中存有数据:存储着PSNM、KI、国家代码、运营商代码、CCH、PIN、UCHV、ADM等网络参数、鉴权信息和ICCID(PIM卡号码)。
ICCID号码一共20位,采用条形码和数字号码印刷,颜色为黑色,印在PIM卡的反面,即不带芯片的那面。大卡、小卡均印20位,大卡将条形码、数字号码印在左上方,条形码在上,数字号码在下。小卡只在芯片反面印制数字号码,数字号码分四行,每行五位。ICCID的条形码采用交叉二五码。
(八)PIM卡的寿命
PIM卡的使用是有一定年限的。一般来说,它的物理寿命是取决于客户的插拔次数,约在1万次左右;而集成电路芯片的寿命取决于数据存储器的写入次数,不同厂家其指标有所不同,就Motorola经试验室试验约5万次左右。PIM卡的平均寿命约为4年左右。