一种面向智能卡的软硬件协同保护机制的制作方法

文档序号:6560967阅读:221来源:国知局
专利名称:一种面向智能卡的软硬件协同保护机制的制作方法
技术领域
本发明主要应用于智能卡芯片。
背景技术
智能卡已经得到越来越广泛的应用,人们除了对智能卡芯片内存储器的容量、CPL'性能 的要求提高外,对智能卡芯片安全性的要求也不断增加。

发明内容
本发明为了解决智能卡芯片的安全问题提出了软硬件协同保护的方法。 本发明涉及到的智能卡芯片,有64K统一编址的非挥发性存储器作为程序区使用。发明 中的软硬件协同保护是通过使COS程序、应用程序在不同模式下运行,保证COS具有最高权 限,而应用程序的运行完全掌控在COS程序之下,最终保证了芯片的安全性。 软件配置各个分区的地址偏移量寄存器,硬件完成地址映射。
软件设定分区属性寄存器的内容,硬件监控CPU指令寄存器,根据特定指令所指向的分 区及其属性寄存器的内容,决定是否产生中断。
系统态和应用态两种模式的切换通过软件中断完成,中断服务程序被认为是运行在系统 态下的COS程序的一部分,决定本次操作是否可以切换模式。
本发明实现的安全保护,具有以下特点
1. 系统的运行模式可配置为系统态或者用户态。
2. 两种模式的具有不同的权限。系统态具有最高权限,可以对芯片的一切资源进行调用;
用户态的权限被限制在一定范围内。通常情况下COS程序在系统态下运行,具有最高 权限;而应用程序在用户态下运行,受C0S程序控制。芯片中所有程序的运行都处在
一种可控的状态,使得非法程序无机可乘。
3. 把非挥发性存储器在逻辑上划分成几个分区,通过软件设定每个分区的属性。硬件根
据分区属性寄存器的内容进行安全保护。
4. 两种模式的切换只能通过唤起软件中断来切换。中断服务程序被认为是系统态下的程 序,这种机制可以保证用户程序不能直接切换到系统态下运行,而必须通过进入中断 程序,由COS程序判断其用途,最终决定应用程序是否可以切换到系统态下运行。 通过智能卡内软硬件的协同保护可以大大提升智能卡的安全。


图1逻辑分区及其映射 图2系统态与应用态的关系 图3权限控制的硬件框图 图4软硬件任务划分
具体实施例方式
实现分区及其映射如图1所示,硬件电路把整个程序存储器分成8个大小为8K的逻辑 分区,分别为P0 P7。每个分区都有一个16位的地址偏移量寄存器,用来控制逻辑地址到 物理地址的映射。硬件电路选中PC指向的逻辑分区,通过逻辑地址加上地址偏移量寄存器的 内容构成存储器的物理地址,完成映射。
实现系统态与应用态系统态和应用态是根据一个特殊功能寄存器Mode来实现的。当 Mode=0,则为系统态;Mode=l,则为应用态。图2示意了系统态与应用态的关系,COS运行 在系统态下,对硬件有绝对的控制权;应用程序是在系统态的基础上建立起来的,对硬件没 有直接的控制权,必须通过系统态的COS程序才能实现间接的访问。
系统态与应用态的切换芯片的实际应用中,应用态下的程序经常需要进行其权限之外 的操作,这就需要切换到系统态下运行。当然并不是所有应用程序都被允许切换到系统态下, 比如对一些有破坏性的应用程序就不能让其切换到系统态下。判断应用程序是否有破性的任 务就交给了软件处理。
两种模式的切换,实际上就是对Mode位的修改。硬件设计Mode位只能在软件中断服务 程序中进行修改,由于中断服务程序被认为是COS程序的一部分,所以两种模式的切换也完 全掌握在了COS手中,对安全性有了进一步保障。
分区属性管理每个分区都有一个5位的特殊功能寄存器(叫做分区属区管理寄存器), 用来定义该分区的属性。用软件来设定权限远比硬件电路固定权限的方法要灵活,适合于不 同应用。这5个寄存器位分别为Execute (可执行)、ReadBySys (系统态可读)、WriteBySys (系统态可写)、ReadByApp (应用态可读)、WriteByApp (应用态可写)。这5位寄存器只有 系统态下才可以进行修改,保证了其安全性。而这些可执行、可读、可写特性的实现是通过 图3所示的安全监控模块实现的该模块监控CPU当前执行的指令、当前的运行态、当前指
令指向的分区以及COS分配给该分区的属性寄存器的内容,如果超出权限范围则向CPU发出 中断请求,中断服务程序对越权的指令结果进行干涉。
软硬件的协同保护过程图4对软硬件的任务进行了划分,下面对软硬件的任务进行简 述。硬件电路使芯片上电后Mode=0,即COS在系统态下引导程序运行,C()S配置地址偏移量
寄存器,硬件根据地址偏移量完成地址映射。软件设定分区属性管理寄存器,硬件根据寄存 器内容实现权限控制。卡片COS在系统态下运行,如果此时出现越权操作,则会引发中断, 中断服务程序会修改特定指令的结果,给非法操作返回0。当运行应用程序时,C0S通过发出 软件中断,修改Mode位转到应用态下运行;当此应用程序需要调用系统函数访问某些资源时, 需要转到系统态下运行,也是通过发软件中断进行的,中断服务程序通过应用程序要访问的 目的分区以及当前分区的属性寄存器内容,决定是否切换模式。
权利要求
1.一种面向智能卡的软硬件协同保护机制,它利用硬件电路和软件的配合实现了对智能卡芯片的保护,其特征在于系统的模式分为系统态和应用态。
2. 如权利要求l所述的机制,其特征在于软件配置存储器的逻辑地址与物理地址的偏移量,硬件完成逻辑地址到物理地址的映射。
3. 如权利要求1所述的机制,其特征在于智能卡芯片上的非挥发性存储器在逻辑上被划分成 不同的分区,软件可以根据需要设定分区的属性寄存器。
4. 如权利要求l所述的软硬件协同保护机制,其特征在于硬件监控CPU指令寄存器,根据特 定指令所指向的分区及其属性寄存器的内容,决定是否产生中断,而中断服务程序会屏蔽 掉应用程序所带来的危害。
5. 如权利要求1所述的机制,其特征在于只有通过软件中断的方式才能进行模式的转化。
全文摘要
随着智能卡被人们越来越广泛地使用,人们对智能卡安全性的要求也越来越高。智能卡的安全防火墙可以依靠软件实现,也可以依靠硬件实现,而更多的是依靠软硬件协同保护来实现。本发明是通过软/硬件协同进行的。硬件把非挥发性存储器在逻辑上分为几个分区,软件设定每一分区的地址偏移量寄存器,硬件完成逻辑地址到物理地址的映射;硬件电路给每个分区分配一套属性寄存器,软件设定其值,硬件电路根据属性寄存器的内容进行相应的控制;硬件电路把芯片系统分为系统态和应用态两种模式,系统态具有最高权限,应用态的权限受限制,两种模式的切换通过软件中断完成。
文档编号G06F12/14GK101169762SQ20061011409
公开日2008年4月30日 申请日期2006年10月27日 优先权日2006年10月27日
发明者宋长竹, 赵贵勇 申请人:北京中电华大电子设计有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1