改进的智能卡系统的制作方法

文档序号:6671830阅读:207来源:国知局
专利名称:改进的智能卡系统的制作方法
改进的智能卡系统
本发明涉及对国际专利申请No WO03/049056中描述的智能卡系统的 改进,具体涉及改进这种系统中安全结构的可能性。该智能卡系统包括可 编程智能卡设备,其带有文件系统和操作软件,使设备上的文件系统可以 和至少一个设备外的文件和/或应用交互,还包括脚本引擎,其可以运行一 个或多个应用协议数据单元(APDU)以修改文件系统的结构和/或内容, 或用于访问文件系统或者与之相关的任何安全条件的命令。
这样的系统中,可编程智能卡设备包括存储在设备上的存储器内的一 个或多个应用和/或数据文件。例如,文件可能包括卡携带者的银行结余的 详细内容,或者进行过或待进行的财务交易的详细内容。为了保证这些数 据的完整性,保存这些文件和文件所包括的数据的存储器只能由卡上的处 理器访问。该处理器包括脚本引擎,其可以运行从接口设备上载的脚本(卡 可以插入到接口设备或者与之连接),以修改卡上的文件系统的结构或内 容,或者用于访问文件系统或者与之相关的任何安全条件的命令。
在国际专利申请No WO03/049056的系统中,将脚本写成自描述性消 息的网络(因特网)标准语言格式的文件,并将脚本从中央"密室"通过 因特网安全传输到一个或多个接口设备,在接口设备,可将脚本加载到一 个或多个用户的智能卡设备上。因而,因为可以用如可扩展置标语言(XML)
的网络标准语言通过因特网安全传输文件,所以可以快速便捷地利用因特 网分发智能卡设备上的应用软件的更新或者修改或重新格式化系统中使用 的卡上的数据,同时保持高级别的安全性。
然而,虽然国际专利申请No WO03/049056中的基本系统是安全的, 但是我们理解,仍然期望进一步提高系统的安全性。对于如处理财务交易 的安全性至关重要的智能卡应用来说,命令序列和发送至智能卡设备的应 答及智能卡设备发出的应答必需符合特定的流。虽然可以开发特定应用软 件在卡上运行,但是只有在接收到期望的下一条命令时才能正常应答,相反,如果命令不是所期望的那条,就给出错误。该方法在管理方面有所有 通常存在的缺陷,特别是更新和修改。
根据本发明,智能卡设备的特征在于,其包括比较器装置,其可由脚
本引擎运行的安全APDU配置,并且比较器用于将一个或多个参考命令与 如下命令进行比较实现访问和/或修改设备上数据或文件系统的应用所运
行的命令,或者用于访问系统或者与之相关的任何安全条件的命令,并且 根据比较器装置进行的比较的结果,限制或者防止对这些数据、文件系统、 命令或者安全条件的进一步访问或者修改。
因而,在国际专利申请No WO03/049056中描述的智能卡系统中,用 脚本引擎来设置卡。可以通过设置卡提高安全,这样,通过仅比较命令代 码或者比较代码和操作数,卡期望并从而监控某些命令序列的出现。
本发明还提供配置上述智能卡设备的方法。
下面以示例方式参考附图
详细描述本发明的实施例,附图是根据本发 明的智能卡设备的示意图。
图中简要示出上述系统中使用的智能卡设备10。
设备10包括设备上存储器20,其上存储有文件22和24,还包括处理 器30,其包括脚本引擎32和可配置比较器34。如前所述,设备上存储器 20只可以由处理器30访问,不能从智能卡10以外直接访问。设备10还包 括接口装置40,其使得设备10与外部接口设备(未示出)交互。
对于所述示例,假定存储的文件22和24包括分别代表智能卡设备用 户持有的某种财务账户的当前账户结余和上次账户结余的数据。当用卡来 授权从用户账户转帐时,设备10与接口设备交互,以上载包括一个或多个 应用协议数据单元(APDU)的文件,应用协议数据单元由脚本引擎32在 设备10上运行,以修改设备存储器20中保存的各个文件的内容。交易可 能很复杂,涉及多个命令,这些命令修改多个文件的内容,但是,简单起 见,这里只考虑一个修改。
当卡用户使用设备IO对向第三方进行的支付授权时,文件22内保存的当前账户结余被复制到文件24,文件24存储上次账户结余,然后,修改 文件22中的当前账户结余,以示出新的更小的结余。
这样的交易中,在为了实现交易而由脚本引擎32运行的APDU中的一 系列命令中,有下面的一对命令-
COPY value in file 22 to file 24 (复制文件22中的值至文件24)
WRITE new current balance to file 22 (写入新的当前结余至文件22)
上述系统中,智能卡设备10插入或者连接到接口设备,在要开始交易 时,接口设备将一个或多个APDU上载至设备处理器32,然后,该一个或 多个APDU由脚本引擎32运行,以修改文件22和24中的数据。根据本发 明,APDU包括安全APDU即"监察"APDU,其用于以适用于要进行的 交易的方式配置比较器34。实践中,安全APDU提供参考命令或代码,由 脚本引擎32运行的命令与这些命令或代码进行比较。
在上述例子中,由脚本引擎32运行安全APDU时,安全APDU可以 配置比较器34,这样比较器34可以进行比较以检测期望的一对命令"COPY value in file 22 to file 24"禾口 "WRITE new current balance to file 22"。除非比 较器做出肯定性匹配,交易就中止。
所给出的例子非常简单,但是要理解,比较器32可配置用于以同样方 式监控很长的命令序列。
此外,比较器32可被配置为仅将命令的一部分与安全APDU提供的参
考进行比较。例如,比较器可以确定"复制"命令是否包括文件名或文件
标识符,在要进行特定交易时,要从该文件复制数据。或者,只监控命令
内的操作数或者命令出现的序列,例如,检査"复制"命令后是否总跟着 "写入"命令。
某些情况下,检测到匹配的情况下,可能也需要配置比较器32使交易 中止。在上述交易中,例如,脚本引擎32无合适理由而从文件24到文件 22进行复制,茵而,如果检测到这样的命令,可能意味着正在进行诈骗。 因而,比较器34可被配置为检测命令"COPY form file 22 to file 24"的存 在,将其作为限制或防止对智能卡设备IO上的文件或数据进行进一步修改 的基础。
类似的,为了鉴别交易而寻求得到肯定匹配时,"否定匹配"可以基于部分比较。例如,如果特定命令序列中根本不应该出现某个文件时,比较
器34可简单地被配置为寻找如特定设备上文件的文件名的特定代码,例如 "文件24"。
或者,比较器34可被配置为检测命令和操作数的组合。上述例子中, 比较器34可被配置为检测要从文件24进行复制的任何命令,因为这样的 命令对于要进行的交易是不适当的。
复杂情况下,脚本引擎32和安全APDU就参考集合的肯定或否定匹配 都是期望的,比较器34可被配置为检测特定的命令序列而不是一个命令。 如果期望的命令集合不是简单的线性序列而是包括如国际专利申请 WO2005/064555中描述的逻辑或者算数驱动分支,那么可用脚本引擎能力 通过比较器34映射这些命令路径。
适当的话,比较器34还可以被配置为将命令与预定的一组或多个可能 期望值进行比较,而不是仅与一个比较。
因而,APDU的"期望命令"脚本和比较器一起工作,类似于状态机, 脚本中的命令代表期望的命令序列,检测应该出现的命令或者检测不应该 出现的命令,并且在特定比较产生特殊预定结果时,将状态设成"错误"。
应该理解,因为智能卡设备10上的比较器34由脚本引擎32根据安全 APDU配置(在交易要开始时为每个交易上载作为命令序列一部分的安全 APDU),比较器34可以对要进行的特定交易类型进行适当的检查。
智能卡领域之外的在先技术设备利用进行这些比较的检查或者监控设 备,但是这些设备硬连线到所处理的设备,而且,因为需要提供不同类型 的交易,在先技术还要求更大的处理器能力和/或存储空间,这是在智能卡 设备上不能提供的。利用在每次交易发生时为其配置的可配置比较器34意 味着可以在智能卡设备上可用的相对小的处理器和存储器限制下,提供之 前智能卡系统中不能使用的安全检査级别。
此外,如果发现对安全的新型诈骗攻击,或者需要处理新型交易,可 以容易地根据需要修改脚本引擎32用来配置比较器34的用于每个类型交 易的安全APDU。
权利要求
1、一种可编程智能卡设备(10),带有文件系统(22、24)和使设备上文件系统与至少一个设备外文件和/或应用接口的操作软件,而且包括脚本引擎(32),其可运行一个或多个应用协议数据单元(APDU)以修改所述文件系统的结构和/或内容,或者用于访问所述文件系统或者与之相关的任何安全条件的命令;所述可编程智能卡设备(10)的特征在于其包括比较器装置(34),其可由所述脚本引擎(32)运行的安全APDU配置,并且所述比较器装置(34)用于将一个或多个参考命令与如下命令进行比较实现访问和/或修改设备上数据或文件系统的应用所执行的命令,或者用于访问所述系统或者与之相关的任何安全条件的命令,并且根据所述比较器装置(34)进行的所述比较的结果,限制或者防止对这些数据、文件系统、命令或者安全条件的进一步访问或者修改。
2、 根据权利要求1的设备,其中所述比较器装置(34)用于将所述脚 本引擎(32)运行的用于修改设备上数据、文件、命令或者安全条件的APDU 代码与参考代码进行比较。
3、 根据权利要求2的设备,其中所述比较器装置(34)还用于将所述 脚本引擎运行的所述APDU的至少一个操作数与参考操作数进行比较。
4、 根据权利要求2或3的设备,其中所述比较器装置(34)用于将所 述脚本引擎运行的所述APDU的所述代码和/或操作数与代表多个参考值的 参考代码或操作数进行比较。
5、 根据前述任意一项权利要求的设备,其中所述比较器装置(34)用 于将实现应用所执行的命令序列与参考序列进行比较。
6、 根据前述任意一项权利要求的设备,其中所述比较器装置(34)用 于在它未检测到与代表期望的命令、期望的多个命令或命令序列的参考命令或多个参考命令的匹配时,限制或者防止对数据、文件系统、命令或者 安全条件的进一步访问或修改。
7、 根据权利要求1_5任意一项的设备,其中所述脚本引擎(32)用 于在它检测到与参考命令或多个参考命令的匹配时,限制或者防止对数据、 文件系统、命令或者安全条件的进一步访问或修改。
8、 根据前述任意一项权利要求的设备,其中所述比较器装置(34)用 于运行从至少一个采用自描述消息的网络(因特网)标准语言格式的文件 得到的一个或多个APDU。
9、 一种用于配置根据权利要求l一8任意一项的所述可编程智能卡设 备的方法,所述方法包括提供读卡接口设备,用于将所述可编程智能卡设备的读卡器与所述可 编程智能卡设备接口,以及向所述可编程智能卡设备加载包括至少一个APDU的应用脚本,所述 至少一个APDU用于修改所述设备上文件的结构和内容,或者用于访问所 述文件系统或者与之相关的任何安全条件的命令;所述方法的特征在于上载至所述可编程智能卡设备的所述脚本还包 括由所述智能卡设备上的脚本引擎运行以配置比较器装置的安全APDU, 所述比较器装置用于将一个或多个参考命令与如下命令进行比较实现访 问和/或修改设备上数据或文件系统的应用所执行的命令,或者用于访问所 述系统或者与之相关的任何安全条件的命令;根据所述比较器装置执行的所述比较的结果,限制或者防止对这些数 据、文件系统、命令或者安全条件的进一步访问或者修改。
10、 根据权利要求9的方法,其中可以向所述可编程智能卡设备加载 多个不同应用脚本,每个所述应用脚本具有与之相关的安全APDU;每当 加载应用脚本时将所述相关的安全APDU加载至所述设备,这样,每次由 所述脚本引擎运行不同的应用脚本时,所述比较器装置被重新配置。
11、根据权利要求9或10的方法,其中所述应用脚本和安全APDU从至少一个采用自描述消息的网络(因特网)标准语言格式的文件得到。
全文摘要
一种可编程智能卡设备(10),带有文件系统(22、24)和使设备上文件系统与至少一个设备外文件和/或应用接口的操作软件。还包括脚本引擎(32),其可运行一个或多个与特定形式的应用相关的应用协议数据单元(APDU)以修改所述文件系统结构和/或内容,或者用于访问所述文件系统或者与之相关的任何安全条件的命令。所述可编程智能卡设备(10)具有比较器装置(34),其可由所述脚本引擎(32)运行的安全APDU配置,从而所述比较器装置(34)用于将一个或多个参考命令与实现交易所运行的命令进行比较,并且根据所述比较器装置(34)进行的所述比较的结果,限制或者防止对这些数据、文件系统、命令或者安全条件的进一步访问或者修改。因而,由于比较器(34)为每个要进行的不同类交易进行配置,所所以智能卡设备可以在智能卡设备自身可用的存储器和处理能力的限制下提供改进的安全性。
文档编号G07F7/10GK101297110SQ200680036149
公开日2008年10月29日 申请日期2006年8月29日 优先权日2005年8月30日
发明者B·S·霍赫菲尔德 申请人:埃塞博斯有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1