PBOC 3.0 文件结构

来源:互联网 发布:泰国电影 知乎 编辑:程序博客网 时间:2024/04/29 00:43

第一、文件类别

PBOC规范支持两种文件:专用文件(DF),基本文件EF。

---DF 用于支持应用、文件夹和数据对象存储。一个应用DF对应一种应用。DF可以作为其它文件的父文件。这些文件成为该DF的直属文件。

---EF 用于存放数据。EF文件不能作为其它文件的父文件。EF可分为两类:

 --内部EF:用于存储该卡所解释的数据,即为了管理和控制目的由卡所分析和使用的数据。

 --工作EF:用于存储不由卡所解释的数据,即仅由外界待使用的数据。

见图1所示:

 

 图 1

图1显示了一个带有安全结构的DF层次结构,这种结构中,处于根部的DF称为主文件MF。所有DF既可以是应用DF也可以是其它DF结构。
 在实际的应用中,为了便于理解,我们往往将根部的DF直接命名为MF,这样卡片相当于有三种文件类型:MF,DF,EF。

第二、具体的应用实例

在PBOC应用中,有如下几种文件:

MF:

每个卡片中只能有一个MF,在PBOC规范中,这个MF的文件名称为"1PAYS.SYS.DDF01"称为支付环境PSE

DF:

又分为

ADF(Application Definition File):应用定义文件

DDF(Directory Definition File):目录定义文件

ADF与DDF的区别在于,DDF为一个目录定义文件,其目录下仍然有下一级的目录,例如有多个ADF或者DDF.而ADF下面不能再有文件目录了,ADF下面就只能是AEF,可以说ADF是下一级没有文件目录结构的DDF,一般情况下,一个ADF定义一个实际应用。而MF可以看做一个DDF因为下面有多个ADF应用。需要注意的是,PBOC3.0里强制要求,DDF下面不能再有DDF了。

AEF((Application Elementary File):

 应用基本文件,当前的金融卡中存在两种基本文件,一种是安全基本文件,例如秘钥文件、PIN,这种文件不能读出,需要通过权限认证才能修改;第二种是工作基本文件,例如二级制文件,记录文件等。只要经过相应的权限认证即可进行读写等操作。

 在卡片结构中,这三种文件以树形结构存在:以下图2为例:



 图2

 上图是一个项目中的金融IC卡文件结构图,省去了另外一个应用下的EF文件,但是仍能够从该图中了解到MF,ADF,AEF的结构。

 金融IC卡的MF是一个AID位1PAY.SYS.DDF01的目录,SFI为3F00,我们在进行交易时,总会发送一条命令:

00 A4 00 00 02 3F 00 其实选的就是这个1PAY.SYS.DDF01这个文件。而下面的主控秘钥,传输秘钥,应用维护秘钥等秘钥是管理MF下各文件的操作权限。这些秘钥各自可以不是一组,应用时使用秘钥索引进行引用。

 在MF下面有2个ADF,第一个ADF完整自定义了一个实际应用。这个ADF下面的SFI分别为01、02、03、04、05的文件以及秘钥文件等就是AEF即应用基本文件。其中ADF下的秘钥文件定义了一组秘钥,用于管理该ADF目录下各文件的访问权限。

 一般情况下,MF和ADF都有各自的管理秘钥,这组秘钥规定了各自管辖范围内文件的读,写,擦除的权限。

用用程序要访问这些文件需要先通过内部认证命令。因而对秘钥文件进行更改时仍然需要通过外部认证。

第二、文件的引用

选择了一个结构,就可以访问其数据,如果选择了一个DF结构就可以访问其子结构。结构的选择有四种方法:

1、通过DF名引用,任何DF都可以通过按照1-16个字节编码的DF名称来引用。任何应用标识符AID都可作为DF名称。为了无二义的通过DF名称选择一个DF,PBOC规定在同一目录下,DF的名称应该是唯一的。例如在金融IC卡中都存在一个名为"1PAY.SYS.DDF01"的文件,可通过文件名对其访问,

 例如使用命令

 00A40400+sizeof(1PAY.SYS.DDF01)+"1PAY.SYS.DDF01"就可以选择该文件。

2、通过文件标识符引用,任何文件都可以通过按照2字节编码的文件标示符来引用。如果MF通过文件标示符来引用,应使用3F00。例如使用命令00A40000023F00.值FFFF被保留供将来使用。值3FFF和0000被保留。为了通过文件标示符来无二义的引用任何文件,PBOC规范要求在给定的DF下的所有DF和直接EF都应具有独一无二的文件标示符。例如,访问0015文件时使用的命令为00b0950000,具体的操作方式与COS命令手册以及文件的类型有关。也可是使用00A40000020015来进行访问

3、通过EF标示符选择,任何EF都可以通过值从1-30范围内的5为编码的短EF标示符来引用,用作短EF标示符的值0引用了当前选择的EF.在MF级30被保留。短EF标示符不能用在路径中也不能作为文件标示符例如在SELECT命令中使用。在图2中SFI为01、02、03、04、05的文件就可以使用这种方式进行访问 。

来源:YinFeeling的博客

0 0
原创粉丝点击