原创 IC卡文件描述块的设计示例(1)(图)

2008-12-7 22:44 2907 5 5 分类: 软件与OS
1、设计原则

    文件描述块的设计原则如下。

    * 格式尽量整齐,减少系统解释和用户认识的复杂度。
    * 相同的字段保留,和类型相关的字段复用同一段空间。
    * 考虑将来的扩展性,要预留充分的保留字段和保留位。
    * 在充分预留的基础上要昼节约空间的使用。

  2、设计示例

    如下图1所示给出一个DF和EF一起的文件属性描述例子,一共使用了16Byte。

       07110901dev95.gif
                  图1:文件属性描述块设计示例

    DF和EF文件对前8个字段(11Byte)的含义基本相同,称为公共字段;对于后5个字段DF和不同的EF都有不同的含义,称为私有字段。

  3、共同字段解释

   (1)文件标识符FID

    文件标识符,DF和EF文件共有,共2Byte。其含义分别为:

    * 对DF来说,在同一父DF下唯一,通常定义为0xXX00格式;
    * 对EF来说,在同一父DF下唯一,通常定义为0xXXYY格式,其中XX和父DF的FID高字节相同,YY表示EF的SFI,YY的低5字节表示EF的eSFI。

    系统保留一些FID作为特殊用途。例如0x3F00用于MF的FID,小于0x3F00的值作为系统文件区等等,可以根据COS实际实现的情况定义。另外对于一些由系统维护和建立的EF文件,可以保留一些SFI。

    实现提示:FID的值由应用建立文件时指定,如果是建立MF,需要检查FID是否为0x3F00,如果建立的是一般文件,需要检查给定的FID是否满足预定的规则。

   (2)文件类型描述符FDB

    文件类型描述符,DF和EF共有,1Byte,定义了对应文件的类型和结构。

    将FDB从高位到低位分别用b8-b1表示,如下所示,给定一个编码格式的例子。

    FDB编码格式示例1:(b8、b7位)
     b8        b7         含义
      0           0          其它值保留

    FDB编码格式示例2:(b6、b5、b4位)-文件类型
     b6      b5      b4      含义
      0        0         0        应用EF
      0        0         1        COS系统EF
      0        1         0        PIN文件
      0        1         1        对称密钥文件
      1        0         0        非对称密钥文件
      1        0         1        电子钱包文件
      1        1         0        电子存折文件
      1        1         1        DF文件


    FDB编码格式示例3:(b3、b2、b1位)-文件类型
     b3      b2      b1      含义
      0        0         0        不确定的EF结构
      0        0         1        透明二进制文件
      0        1         0        定长记录文件
      1        0         0        变长记录文件
      1        1         1        环形记录文件
     其它值                       保留

    对于b3到b1位,只对应用EF文件有效,其他类型文件为0。
    所以,对应不同的类型文件的FDB如下所示:

    不同类型文件的FDB:

      文件类型                     FDB(十六进制表示)
         DF                               38
        应用透明二进制文件                01
        应用定长记录文件                  02
        应用变长记录文件                  04
        应用环形记录文件                  06
        PIN文件                           10
        对称密钥文件                      18
        非对称密钥文件                    20
        电子钱包文件                      28
        电子存折文件                      30
  
   (3)文件状态符STAT

    文件状态符,DF和EF共有,1Byte,表示当前文件的生命周期状态。

    一般的,由于应用和DF文件相关,所以这个字节也只对DF文件有效,对EF文件可以作为保留字节。如果卡片对文件生命周期定义比较简单,甚至没有的话,这个字节可以省略。

   (4)文件长度标识符FSize

    文件长度标识符,DF和EF共有,2Byte,表示文件的字节长度。

    通过文件头的地址指针、文件头的长度加上文件长度,可以检索到物理上下一个文件的起始指针。

   (5)文件自由区长度FFree

    文件自由区长度,DF和EF共有,2Byte,在不同类型的文件中解释为不同的含义。

    * 对DF文件来说,表示当前文件体中自由区的长度,也就是剩余空间的大小。
    * 对于变长记录文件来说,表示当前文件体的剩余记录空间。
    * 对于其他文件来说,这个字节可以保留作为其他用途。

   (6)安全控制字节SCI

    文件操作安全控制标识符1,DF和EF共有,1Byte。其含义为:

    * 对DF文件来说,表示的是在DF文件下创建新的子文件的安全控制。
    * 对普通EF文件来说,表示的是对EF文件读取数据的安全控制。
    * 对电子钱包和电子存折文件来说,表示进行圈存交易的安全控制。

   (7)安全控制字节SC2

    文件操作安全控制标识符2,DF和EF共有,1Byte。其含义为:

    * 对DF文件来说,表示的是在DF文件下删除子文件的安全控制。
    * 对EF文件来说,表示的是对EF文件写数据的安全控制。
    * 对电子钱包和电子存折文件来说,表示进行圈提交易的安全控制。

   (8)安全控制托管标识符ScInd

    文件安全控制托管标识符,DF和EF共有,1Byte。


文章评论0条评论)

登录后参与讨论
我要评论
0
5
关闭 站长推荐上一条 /2 下一条