
USIM卡文件系统详解.docx
53页1应用及文件结构本章描述了UICC的应用和逻辑结构1.1 UICCS用结构UICC中应用的组织结构如图8.1所示图8.1:应用结构示例本文档并未对应用的位置施加任何限制所有应用都由EFDIR中取得的应用标识符唯一地进行标识这些应用标识符被用来选择应用EFDIR,EFPL^EFiccid都是必需的,直接放置在主目录(MasterFile)下详细内容见本文档13章DFTELEC0M可选的当它存在时,存放在主目录中并使用保留的FID'7F10'DFTELEC0M包括了应用的独立信息1.2 文件类型本章定义了适用于本文档内的应用的文件类型1.2.1 专用目录文件专用目录文件(DF)允许文件进行功能性分组它可以是专用目录文件和/或基本文件的上一级目录专用目录文件是通过文件标识符被引用的应用专用目录文件(ADF)是特殊的专用目录文件,包括应用所有专用目录文件和基本文件1.2.2 基本文件1.2.2.1 二进制EF由一系列字符串组成的,具有二进制结构的EF文件通过相对地址(偏移量),对特定的字节序列进行读写操作,地址由以字节为单位的启始地址及需要读写的字节个数组成二进制EF的第一字节的相对地址为‘0000'。
EF文件的数据长度在EF的SELEC即向应中指明1.2.2.2 线性定长EF具有线性定长结构的EF是由一些长度固定且相等的一系列记录组成第一条记录的记录号是1记录的长度和其与记录数的乘积在EF的SELECTI向应中指明图8.2:线性定长文件的结构访问此类型EF中的记录的方法有若干种 记录号的绝对引用;- 当记录指针未被设定时,可以使用NEX或PREVIOUS1式作用于第一或最后一条记录 当记录指针被设定时,可以对本记录、下一条记录(本记录指针置于最后一条记录处除外)或前一条记录(本记录指针置于第一条记录处除外)进行处理 使用模式查询识别某一条记录如果选定一条记录后的操作中途失败(如:由于执行某命令不成功),该记录指针应保持在操作执行前设定的位置目前,本类文件中包含最多254条记录,并且,每条记录不能超过255个字节1.2.2.3 循环记录EF循环记录文件用来存储按时间序列排列的记录当所有的记录都已经被用于存储时,下一次数据的存储将覆盖最早的信息n时,下一条记录为记录no包含最新数据循环结构的EF由长度固定且相等的规定数量的记录组成在本记录结构中,最后一条记录(n)链接至第一条记录当记录指针被设置到最后一条记录1。
与之相类似,当记录指针被设置到第一条记录时,前一条记录为记录的最后更新的记录的记录号为 1,n图8.3:循环记录文件的结构对于更新操作,仅有PREVIOUS^录可以被使用对于读取操作,寻址的方法可以是Next、Previous、Current和RecordNumber如果选定一条记录后的操作中途失败(如:由于执行某命令不成功),则该记录指针应保持在操作执行前设定的位置目前,本类文件中包含最多254条记录,并且,每条记录不能超过254个字节1.3 文件引用FID由两个字节组成,应以十六文件标识符(FID)用于定位或标识一个特定的文件进制表示FID应遵从于以下条件:- 在有关文件建立时,应设定其FID;- 同一上级目录之下的两个文件的ID不相同;- 当前目录的子文件及当前目录的父文件及直接子目录不能具有相同的FID值FID的串连接就是路径路径以MF或当前DF开始,以文件本身的标识符为结束如果当前DF的标识符未知,在路径开始处应使用保留值‘3FFF'FID的顺序总是从上级目录到子目录短文件标识符(SFI)占5个比特,范围是1到30同一上级目录下的任意两个文件的SFI不相同DF名称占1至16个字节。
DF的名称是AID,在同一张卡上,应是唯一的1.4选择文件的方法在UICC激活(定义见6.1)并且返回复位应答(ATR后,根目录被默认为当前目录利用“SELECT功能,通过本章中定义的3个文件引用方法中的一种可选择每一个文件1.2.1 通过标识符引用选择一个DRADF和MF设置为当前目录,在这次选择之后,不存在当前EF选择EF设置当前EF,当前目录仍为DF、ADF或MF,这是EF的上级目录当前EF总是当前目录的一个子文件只有当前应用的ADF可以通过FID选择任何应用的专用命令都应仅在该应用是当前目录时才可操作下列文件可以从最后选中的文件通过文件ID标识符(FID)引用被选中 任何当前目录的直接子文件;- 任何当前DFI勺父目录的直接子目录;- 当前目录的父目录;- 当前DF^ADF;- MF图8.4是遵循当前文档的应用的逻辑结构实例图8.4:逻辑结构实例表8.1给出了使用FID引用时,遵循图8.4中所示逻辑结构的本文档定义的应用有效选择方式最后选定的文件的重新选择也是允许的,但并不显示表8.1:文件选择最后选定的文件有效选择MFDF1,EF1,EF-DIRDF1MF,EF2,ADF1MF,DF3,DF4,EF3DF3MF,ADF1,DF4,DF5,EF4DF4MF,ADF1,DF3,EF5,EF6DF5MF,DF3,EF7EF1MF,DF1,EF-DIREF2MF,DF1EF3MF,ADF1,DF3,DF4EF4MF,ADF1,DF3,DF5,EF5MF,DF4,ADF1,EF6EF6MF,DF4,ADF1,EF5EF7MF,DF3,DF51.2.2通过路径引用一个文件,DF或EF,可以象8.3节中定义的那样通过路径引用进行选择。
表8.2中包括图8.4通过路径选择的实例本例中还考虑了当前应用(ADFD此前已经通过DF名被选中的情况下表中的ADF1的FID为‘7FFF'(见8.5)表8.2:通过路径选择文件的实例最后选中的DF路径的开始选择实例任意MF'EF1','EF-DIR','DF1','DF1||EF2'任意MF'7FFF||DF3','7FFF||DF3||EF4','7FFF||DF3||DF5','7FFF||DF3||DF5||EF7''7FFF||DF4','7FFF||DF4||EF5','7FFF||DF4||EF6,'7FFF||EF3'DF1CurrentDF'EF2'DF3CurrentDF'DF5','DF5||EF7','EF4'DF4CurrentDF'EF5','EF6'DF5CurrentDF'EF7'在“从MF通过路径选择”中,终端不应在路径起始位置使用MF的文件标识(如:‘3F00')在«从MF通过路径选择”中,终端可以在路径开始处使用特定的FID'7FFF'(见8.5节)既在该逻辑通道中,路径开始于当前被激活应用的ADF在“从当前DF通过路径选择”中,终端不应在路径开始处使用特定文件ID'7FFF'在“从MF通过路径选择”或“从当前DF通过路径选择”中,终端不应使用当前DF(如:'3FFF')的标识。
在“从MF通过路径选择”或“从当前DF通过路径选择”中,终端不应使用空数据字段1.2.3短文件标识符DF中的任何EF可在DF或ADF级别通过以下命令并将短文件标识符(SFI)作为命令的一部分默认地实现对文件的选择,而无需使用SELEC怖令 READBINARY- UPDATEBINARY- READRECORD- UPDATERECORD- INCREASE- SEARCHRECORD当文件的FCP包括带标识’88'的TLVDOSFI对特定文件的支持如果长度字节的值为0,表示该文件不支持短文件标识符如果文件的FCP中没有TLVDO字段,则表示该文件的FID的低5位数据为文件的SFI当READRECORD令包含一个有效的SFI时,本文件被设为当前EF,且复位当前指针后续的记录通过READRECORD令读入,且无需SFI当UPDATERECORD令包括一个有效的SFI时,本文件被设为当前EF,且复位当前指针后续的记录通过updateRECORD命令更新,无需SFI当INCREAS却令包括一个有效的SFI时,本文件被设为当前EF,且复位当前指针后续的记录通过INCREASE^令增加,无需SFI。
当SEARCHRECORD令包括一个有效的SFI时,本文件被设为当前EF,且复位当前指针后续的记录通过SEARCHRECORDS搜索,无需SFI1.5 应用的特性应用既可以被显式引用,也可隐式引用应用可通过带AID的显式选择激活这会将应用的ADF设为当前ADE当前ADF可通过带隐式引用值‘7FFF'白FFID引用1.6 .4显式应用选择1.2.4.1 用DF名选择一个通过AID在UICC中被描述的可选应用,应通过一个以1到16字节方式编码的DF名称来引用每个名称在一个UICC中都应是唯一的DF名称可被用在SELEC怖令中,选择一个可选应用1.2.4.2 用局部DF名称选择一个可选应用也可通过局部DF名称的方式进行选择:P1='04',P2参数必选符合ISO/IEC7816-4中的定义first、next、previous或last方式在这种情况下,DF的名称被右截短若在卡上存在几个AID中起始字节内容相同的应用,选中的应用则取决于P2中指定的值即使卡片正处于"previous”对话中,如果P2中指定为“last”选项,则选中的应用就是与局部DF名称相匹配的最后被激活的应用利用局部DF名称选择应用对于单一应用卡片为可选项,对于多应用卡为必选项。
卡片应在由ISO/IEC7816-4中规定之ATR历史字节的压缩一TLV对象定义的“卡片服务参数”以及“卡片性能”中指明对这一性能的支持对next、previous和first的解释应在应用中指明用这些参数选中的应用与SELECT命令中提供的局部DF名次相匹配如果UICC不支持局部DF名称的选择,UICC应作出适当的响应(如:命令参数不支持‘6A86')1.2.5 应用对话的激活当终端发送一个带应用AID且在命令参数中指明应用应被激活的SELEC饰令时,应用对话被初始化在激活后,应用可能会需要一个初始化进程该过程不在文档范围内,但应在应用规范中描述本进程用来为终端和UICC中的应用提供一个定义良好的状态在选中应用后,UICC评估应用的安全环境SE依应用的校验需求(见表9.1)设定应用PIN的校验状态依应用指定的应用对话激活进程更新终端会向UICC发送一个特定的STATU瑜令指出应用的初始化进程已被成功执行在一个假定的逻辑通道上,仅允许存在一个活动的可选应用对话因此,为激活一个新的可选应用对话与原有的对话并行,必须打开一个新的逻辑通道可选的应用对话可以在几个通道对话中发生1.2.6 应用对话的终止在应用终止之前,应用可以执行一个对话终止进程。
本进程应在应用规范中描述在进程执行之前,终端应向UICC发送一个特定的STATU阶令指明应用的终止进程将启动在终止进程执行后,终端及应用将处于一个定义良好的状态如果下列状况在任何一个应用对话被激活的逻辑通道上发生,应用对话将被终止:- 隐含地;一个的带有不同于当前活动应用AID的的SELEC命令(通过DFNamE被。












