本文主要介绍动态多应用智能卡文件系统的研究与设计,由深圳耐斯迪科技PCB抄板、芯片解密反向研究技术中心提供转载须注明
  0 引言   智能卡或称 IC 卡,英文名称为Smart Card 或Integrated CircuitCard。它是由一个集成电路芯片嵌 于塑料基片中封装而成。卡中的集成电路包括中央处理器(CPU) ,闪存( 中。

  3)DELETE FILE(删除文件):是把指定的智能卡的文件从存储器中删除,其释放的存储空间由 操作系统收回。文件系统的文件是存储在应用数据区,因此该命令的操作对象是数据区的文件,并不 涉及其他存储区域的数据。MF 为文件系统的根目录,是不可被删除的。

  KEF 为DF 中的密钥文件, 仅删除KEF 会对其上层DF 造成极大的安全隐患,因此不提供单纯的删除KEF 操作,把该操作是嵌 入在删除DF。该命令分为两类:删除DF 和删除EF。删除DF 函数仅删除没有子DF 文件的DF 文件, 如果所删除的DF 具有直接子DF 文件(可以有EF 文件),则DF 不能直接删除,需要首先删除子DF文件,然后再使用本函数删除。该操作会影响其父亲节点或兄弟节点以及子EF 节点,所以删除之前 需要查看文件打开表,检查这些文件是否可以访问,如果有不可以访问的节点,则退出返回相应的错 误信息。

  当然执行该操作之前,必须达到一定的要求安全状态。删除EF 时,操作对象是CMB 块中 的当前工作文件EF,因此要删除某EF 之前需要先选择该文件。如果当前工作文件地址无效,则返回 相应的错误信息。当然执行该操作之前,必须达到一定的要求安全状态并且该EF 具有可删除属性。

  4)VERIFY 命令用来把传送给智能卡的秘密对象和所存储的基准值相比较,根据比较结果,改 变CMB 块中的安全状态。该操作系统的密钥存储在密钥文件KEF 中,位于MF 的KEF 被用来作为 智能卡中所有应用通用的密钥,如果是DF 的KEF,则它仅可用于在DF 内的有关应用,即应用的专 用密钥。

  该命令的操作对象默认为CMB块中指向的当前所使用密钥文件。一般的密钥文件含有四个密钥, 分别是:(1)浏览密钥:满足该密钥后,可以读该目录下的所有EF 文件和子DF 头标。(2)更新密 钥:满足该密钥后,可以在该目录下的所有EF 文件中执行更新操作。(3)删除密钥:满足该密钥后, 可以在该目录下执行删除操作。(4)创建操作:满足该密钥后,可以在该目录下执行删除操作。因此, verify 函数就是判断其满足相应的密钥,然后改变CMB 块中的安全状态,使其可以执行后需操作。

  对于每一个密钥都有一个重试计数器。对于肯定的比较结果,它被赋予零,对于否定的比较结果, 它增量1。如果重试计数器达到对大值,则绝对没有任何可能再进行对密钥的进一步比较。为了保证 安全,先对计数器字段加一并写入到记录中。然后比较读出密钥和输入密钥是否匹配。匹配则将0 写 入到记录的计数器字段中,并将安全状态设置为OK 结果状态。否则将安全状态设置为NOK 结果状 态,并返回允许尝试的剩余次数或记录被锁。

  3 结论   本文研究并设计动态多应用智能卡文件系统。利用文件分配表为每个文件建立映像,利用 CMB 块进行文件管理,设置文件访问机制保证了每个应用的读写安全,最后详细设计文件操作命令,使得 应用可以对文件进行建立,删除等操作。

  本文作者创新点:本文借鉴了DOS 系统的文件系统,设计了符合动态多应用智能卡要求的文件系统。