CN107798256A - 一种基于密码算法分离存储的智能卡及设计方法 - Google Patents

一种基于密码算法分离存储的智能卡及设计方法 Download PDF

Info

Publication number
CN107798256A
CN107798256A CN201711162447.9A CN201711162447A CN107798256A CN 107798256 A CN107798256 A CN 107798256A CN 201711162447 A CN201711162447 A CN 201711162447A CN 107798256 A CN107798256 A CN 107798256A
Authority
CN
China
Prior art keywords
systems
cryptographic algorithm
cryptographic
cos
smart card
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201711162447.9A
Other languages
English (en)
Other versions
CN107798256B (zh
Inventor
曾雪琴
周道双
周留洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd
Original Assignee
CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd filed Critical CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd
Priority to CN201711162447.9A priority Critical patent/CN107798256B/zh
Publication of CN107798256A publication Critical patent/CN107798256A/zh
Application granted granted Critical
Publication of CN107798256B publication Critical patent/CN107798256B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及嵌入式SOC(System On Chip)领域,针对现有技术存在的问题,提供一种基于密码算法分离存储的智能卡及设计方法。所述智能卡包括芯片COS***、定制应用模块、密码算法模块。本发明将传统智能卡的COS***和定制应用中密码算法相关的部分剥离组合成为密码算法模块。按照本发明设计出的COS***和定制应用不涉及密码算法,这样的结构便于密码资源的单独开发和管理,防止密码资源的泄露,可显著增加密码算法的保密性,进而提高智能卡的安全可靠性;COS***支持密码算法的加注或更新,COS***的主控模块通过检测密码算法是否登记,若登记,则调用密码算法进行安全处理,如未检测到密码算法注册,就执行降低安全级别的安全处理,进行密码算法的加注或更新,等待来自终端读写设备的命令,完成智能卡与终端读写设备的数据通信。

Description

一种基于密码算法分离存储的智能卡及设计方法
技术领域
本发明涉及嵌入式SOC(System On Chip)领域,尤其是一种基于密码算法分离存储的智能卡及设计方法。
背景技术
智能卡是内嵌集成电路芯片的塑料卡的统称,可以完成数据存储、数据加解密处理及数据传输等功能。智能卡芯片通常由智能卡接口、CPU(Center Process Unit)处理器、可重构密码协处理器、随机数发生器、小容量RAM(Random-Access Memory)、非易失性存储器和固化其中的软件包括智能卡操作***COS(Card Operation System)、用户定制应用组成,如图1所示。
按照功能划分,传统智能卡COS体系结构主要包括***主控模块、硬件资源管理模块、通信管理模块、安全管理模块、文件***管理模块、应用管理模块、定制应用接口模块和定制应用管理模块几个部分,如图2所示。***主控模块是COS的核心,直接面向硬件资源,为上层应用提供调用硬件资源的接口,并统一协调各模块运转;硬件资源管理模块进行智能卡硬件资源的管理和调用,用以完成各项基本功能;通信管理模块执行智能卡传输协议,管理智能卡与终端读写设备数据的交互;安全管理模块对传输和存储的数据进行加解密、权限鉴别,确保智能卡的安全;文件***管理模块管理以文件形式存储的数据,负责完成对文件的查找、读写等操作,并对存储空间进行管理;应用管理模块对外部送入的各种指令进行判断、解析及处理,调度内部资源用以完成相应操作,返回相应的应答;定制应用接口向定制应用提供一些应用接口,便于定制应用调用智能卡内部资源;定制应用管理为定制应用配置软硬件环境,同时完成定制应用数据的传递。
为了确保智能卡的通信安全,需要保证智能卡与外部读写设备信息交换过程的完整性、真实性、有效性和机密性。而满足这四种特性的重点在于密文传输,即将信息在传输过程中通过某种规则转化为难以识别的密文形式,接收到信息后再以相同的规则将其恢复为可以识别的明文信息,这种规则就是密码算法。密码算法应用于图2所述的智能卡COS***和定制应用中,由于两者需求相异,所使用的密码算法也不尽相同,特别是在军用领域,密码算法属于涉密范畴,一般由专人开发,其知晓范围仅限于涉密人员。而图2所述的智能卡软件结构不支持该种模式下的密码算法的开发。
且近年来智能卡因其便于携带、低功耗、低成本和安全可靠等特点被广泛应用于从民用到军事的各个领域、从单机到大型复杂***的安全解决方案。然而,随着智能卡使用范围日趋增大,针对智能卡的攻击手段越来越多,密码算法生命周期越来越短,这就意味着需定期更换密码算法,传统的智能卡COS的密码算法及定制应用的密码算法在制卡初始,已经固化到非易失性存储器中,算法固定,不支持算法周期性在线更新,抗攻击能力弱,安全性相对较差。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种基于密码算法分离存储的智能卡及设计方法。该***将智能卡软件***从功能上进行分割,进而在结构上进行分离设计,分为剥离密码算法的COS***(以下简称COS***)、剥离密码算法的定制应用***(以下简称定制应用)和密码算法***(以下简称密码算法)三部分,该***结构将密码算法从COS***剥离、密码算法从定制应用剥离,COS***、定制应用、密码算法各自占有独立的存储空间,COS***可以通过访问地址指针达到访问密码算法的目的,同样,定制应用***也采用同样的方式调用密码资源,三者的调用关系如图3所示。这样的结构便于密码资源的单独开发和管理,防止密码资源的泄露,可显著增加密码算法的保密性,进而提高智能卡的安全可靠性。
本发明采用的技术方案如下:
一种基于密码算法分离存储的智能卡设计方法包括:
步骤1:COS***读取读卡设备的命令,当命令为安全处理指令时,则COS***判断密码算法软件***的密码算法是否注册(COS***读取存储于算法映射区的起始地址的算法登记标志位,若该标志位有效,表明密码算法已登记,COS***读取密码算法映射表,完成密码算法注册),若该密码算法已注册,则执行步骤2;否则,执行步骤3;
步骤2:COS***将CPU指针的控制权交给密码算法***,密码算法***控制CPU的指针从密码算法***的代码区读取指令、从密码算法***的全局变量区及堆栈区存取数据,完成安全处理密码数据的处理;将处理结果通过共享变量区反馈给COS***,然后密码算法***将CPU指针的控制权交还COS***;
步骤3:密码算法***的密码算法进行加注处理。
进一步的,所述步骤2之后,判断所述命令为基础命令,即为非应用处理命令时,COS***掌控CPU指针的控制权,从COS***的代码区读取指令、从COS***的全局变量区和堆栈区存取数据,完成命令处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
进一步的,所述步骤2之后,判断所述命令为应用处理命令,且为涉及加密的应用处理命令时,定制应用***将CPU指针的控制权交给密码算法***,通过密码算法***完成该应用处理命令对应数据的密码处理后,密码算法***将CPU指针的控制权交还定制应用***,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
进一步的,所述步骤2之后,判断所述命令为应用处理命令,且是非加密的应用处理命令时,COS***将CPU指针的控制权交给定制应用***,定制应用***控制CPU的指针从定制应用***的代码区读取指令、从定制应用***的全局变量区存取数据,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
进一步的,一种基于密码算法分离存储的智能卡设计方法还包括密码算法***的密码算法进行更新处理。
进一步的,所述COS***包括主控模块、硬件资源管理模块、通信管理模块、安全管理模块、文件***管理模块;安全管理模块包括安全应用模块、密码资源库接口模块、密码管理模块;定制应用***包括非密码应用功能模块及应用密码管理模块;密码算法软件***主要由密码处理模块、密码算法码模块和密码算法输出库模块。
进一步的,所述步骤1之前还包括:COS***还包括应用及参数注入阶段、密码算法及密钥数据注入阶段。
基于所述一种基于密码算法分离存储的智能卡设计方法的智能卡包括:
COS***:用于读取读卡设备的命令,当命令为安全处理指令时,则COS***判断密码算法软件***的密码算法是否注册,若该密码算法已注册,则COS***将CPU指针的控制权交给密码算法***;否则,密码算法***的密码算法进行加注处理。
密码算法***:用于控制CPU的指针从密码算法***的代码区读取指令、从密码算法***的全局变量区及堆栈区存取数据,完成密码数据的处理;然后密码算法***将CPU指针的控制权归还COS***。
进一步的,判断所述命令为基础命令,即为非应用处理命令时,COS***掌控CPU指针的控制权,从COS***的代码区读取指令、从COS***的全局变量区和堆栈区存取数据,完成命令处理,得到处理结果;
判断所述命令为应用处理命令,且为涉及加密的应用处理命令时,定制应用***将CPU指针的控制权交给密码算法***,通过密码算法***完成该应用处理命令对应数据的密码处理后,密码算法***将CPU指针的控制权交还定制应用***,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
进一步的,判断所述命令为应用处理命令,且是非加密的应用处理命令时,COS***将CPU指针的控制权交给定制应用***,定制应用***控制CPU的指针从定制应用***的代码区读取指令、从定制应用***的全局变量区存取数据,完成应用功能的处理;然后定制应用***将CPU指针的控制权归还COS***。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
采用本发明提出的基于密码算法分离存储的智能卡软件***结构,将智能卡软件***从功能上进行分割,进而在结构上进行分离设计,将密码算法从COS***和定制应用中剥离,分为COS***、定制应用***、密码算法***三部分,这样的结构便于密码资源的单独开发和管理,可支持密码算法周期性在线更新,可显著增加密码算法的保密性,进而提高智能卡的抗攻击能力和安全可靠性。
本发明涉及嵌入式SOC(System On Chip)领域,具体为一种密码算法分离存储的智能卡软件***结构,该软件***结构可以显著增强智能卡的安全可靠性,提高其抗攻击能力,对于保证智能卡应用***的安全性有着重要的意义,适用于民用、商用、金融及军事领域。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是本发明实施例一智能卡软件***结构的示意图。
图2是本发明实施例一智能卡软件***关系调用的示意图.
图3是本发明实施例一智能卡软件***工作状态示意图。
图4是本发明实施例一密码算法加注及更新的工作流程图。
图5是本发明实施例一流程图。
附图标记:
1-主控模块 2-硬件资源管理模块 3-通信管理模块
4-安全管理模块 5-文件***管理模块 6-应用密码管理模块
7-非密码应用功能模块 8-密码处理模块 9-密码算法码模块
10-密码算法输出库模块 11-终端读写设备 12-智能卡
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
一、本发明结构说明:
智能卡12包括COS***21、定制应用***22以及定制应用***23。如图1,COS***包括主控模块1、硬件资源管理模块2、通信管理模块3、安全管理模块4、文件***管理模块5;定制应用***包括应用密码管理模块6和非密码应用功能模块7;密码算法软件***主要由密码处理模块8、密码算法码模块9和密码算法输出库模块10;
1、COS***:
主控模块是COS的核心,直接面向硬件资源,为上层应用提供调用硬件资源的接口,并统一协调各模块运转;硬件资源管理模块进行智能卡硬件资源的管理和调用,用以完成各项基本功能;通信管理模块执行智能卡传输协议,管理智能卡与终端读写设备数据的交互;安全管理模块对传输和存储的数据进行加解密、权限鉴别,确保智能卡的安全;文件***管理模块管理以文件形式存储的数据,负责完成对文件的查找、读写等操作,并对存储空间进行管理;应用管理模块对外部送入的各种指令进行判断、解析及处理,调度内部资源用以完成相应操作,返回相应的应答;其中,COS***的安全管理模块向用户提供密码资源库接口,用户无需关心智能卡芯片的可重构密码协处理器的设计原理和操作步骤等底层驱动细节,只需通过密码资源库接口模块调用智能卡上的密码协处理器的物理资源,完成相应密码算法功能的开发。安全管理模块包括安全应用模块、密码资源库接口模块、密码管理模块;其中,
1.1密码资源库接口模块的密码资源库主要有以下几类功能函数:
密码协处理器注册函数实现密码协处理器的使能及中断注册功能,并配置中断优先级;密码协处理器注销函数实现密码协处理器的关闭及中断注销功能;主要密码算法加载函数进行密码算法二进制码的加载,将密码算法二进制码从密码资源物理存储区拷贝到密码协处理器内部的存储区;工作密钥加载函数将工作密钥从密码资源物理存储区拷贝到密码协处理器内部的工作密钥存储区;工作密钥扩展函数进行内部工作密钥的扩展操作,根据输入参数的算法编号、工作密钥编号完成对应的工作密钥扩展;结构密钥加载函数将结构密钥从密码资源物理存储区拷贝到密码协处理器内部的结构密钥存储区;一键毁钥函数进行密码协处理器内部存储的密码算法、密钥及敏感数据的擦除。
1. 2COS***安全管理模块的密码管理模块具有以下功能:
为密码算法提供加注、更新通道,进行密码算法下载后的完整性及合法性检测,防止非法密码算法写入;进行密码算法注册管理,检测密码算法是否进行登记,如检测到密码算法,执行密码算法的注册,对密码算法提供的密码资源函数接口如身份认证、完整性检验及数据加解密等进行入口地址赋值,为安全处理模块调用密码算法资源函数接口配置好应用环境;支持紧急情况下的密码资源销毁。
1. 3COS***安全管理模块的安全应用模块功能是:
完成智能卡安全应用处理功能,即上电时,完成上电自检;在密码算法注册后,调用各种密码算法完成COS***安全处理功能,包括传输数据的完整性校验、双向身份认证、敏感数据销毁等。
2、密码算法***:
密码算法***主要由密码算法码模块、密码处理模块和密码算法输出库模块构成,其中,密码算法码模块集中了密码算法的二进制码及敏感数据,一般以数组形式存储,密码算法码模块的二进制码是由C语言写成的密码算法通过密码协处理器的编译器编译而成的可执行码;密码处理模块通过调用COS***的密码资源库接口进行智能卡密码资源的配置,完成数据的加密或解密;密码算法输出库模块是密码处理函数接口的集合,定义了各种密码处理函数的接口参数及访问入口地址,将各种密码处理函数逻辑映射到存储区算法映射区,为COS***和定制应用提供密码算法访问接口,COS***和定制应用可通过接口设置参数及获取加解密数据。
本发明中,COS***、定制应用***和密码算法***在存储空间分离存储,通过共享变量区、***配置区和算法映射区进行信息交互,共同使用共享堆栈区存储函数的参数值、局部变量等。智能卡存储空间分为代码区和变量区,代码区分为COS***代码区、算法映射区、***配置区、应用代码区、密码算法代码区和文件***区。变量区分为共享变量区、COS全局变量区、应用全局变量区、密码算法全局变量区和共享堆栈区。其中,密码算法代码区为受保护区,与其他存储区物理隔离,存储包含敏感数据的密码算法程序,COS***和定制应用不能直接进行访问,即密码算法代码区对用户而言是不可见的,用户只能通过算法映射区进行密码处理函数的调用,这样的方式可以有效的保护密码算法区,避免敏感数据被恶意篡改及窃取。其工作原理为密码算法***需输出的密码处理接口函数入口地址,是根据卡生产商规定的存储规定格式被顺序链接到位于算法映射区的起始地址开始的连续存储空间里,每个密码处理接口函数对应一个固定的入口地址,密码处理函数访问可通过访问该入口地址进行间接寻址实现。
3、本发明的软件***明确定义了智能卡的工作状态分为四阶段:出厂阶段、应用及参数注入阶段、密码算法及密钥数据注入阶段和业务工作阶段,如图3所示。智能卡在出厂前应完成智能卡COS软件注入、卡片信息编写(***、生产日期、封装形式、生产厂商等);应用及参数注入阶段完成智能卡应用软件及相关参数的注入、文件***的创建;密码算法及密钥数据注入阶段完成智能卡密码算法软件、多种密码算法的二进制码及密钥参数的注入,该阶段需由开发主体单位或被信任的使用主体在安全有保障的环境下完成;业务工作阶段由发卡商完成智能卡个人化后,派发给用户,进入用户使用阶段,此时可支持智能卡业务功能调度,执行业务指令。业务阶段可进行毁卡,即永久擦除用户应用软件及参数、密码算法及密钥参数,智能卡状态回到出厂态;业务阶段可进行毁钥,即永久擦除密码算法及密钥参数,智能卡状态回到应用及参数注入阶段。智能卡四个阶段工作状态定义明晰,分别由不同的主体主导,每个主体按照接口规范定义开发或使用,这样的结构有利于智能卡安全性能的提高,且便于打破传统智能卡软件开发时在空间、时间上的局限性。
智能卡上电伊始,COS***查询密码算法程序是否已进行注册,如检测到密码算法已注册,就调用密码算法进行安全处理,如未检测到密码算法注册,就执行降低安全级别的安全处理。当终端读写设备需要进行密码算法的加注或更新时,需进行双向认证,主机发送特定命令,智能卡解析到该指令,进行身份认证,根据认证算法计算认证参数,主机读取该认证参数和主机计算出的认证参数比较,若一致,身份合法,进行密码算法更新,否则,终止密码算法更新;智能卡身份认证通过,完成配置物理环境,返回处理状态,告知主机智能卡准备接收密码算法。
采用本发明的智能卡软件***支持密码算法的在线加注及更新,如图4所示。具体步骤如下:COS***固化到非易失性存储区的COS代码区,智能卡正常工作;智能卡检测密码设备是否已登记,如登记,完成密码算法注册,如未登记,智能卡继续等待终端读写设备命令;智能卡收到终端读写设备加注及更新密码算法命令,进行终端读写设备和智能卡双向认证:智能卡根据从终端读写设备收到的数据,使用认证算法计算认证参数,终端读写设备读取该认证参数和终端读写设备计算出的认证参数比较;认证参数与标准值一致,身份认证通过,终端读写设备开始发送密码算法加注或更新数据,智能卡接收密码算法数据,存储在临时存储区,传送完毕,进行完整性检测,完整性检测通过,将密码算法数据更新到密码算法代码区,完成密码算法的加注或更新,否则,通知终端读写设备密码算法数据传输出错,准备重新发送。(加注或更新具体过程是:终端读写设备发送加注命令,COS***解析到该指令,根据认证算法计算认证参数,COS***读取该认证参数和COS***计算出的认证参数比较,若一致,身份合法;然后终端读写设备发送密码算法,智能卡通过COS***接受该密码算法进行密码算法更新,否则,只智能卡终止密码算法更新)。
二、本发明工作流程如图5所示。
智能卡上电,COS***等待读写设备的复位信号,检测到有效的复位信号,发送复位应答,完成智能卡上电复位;接着,COS***检测定制应用是否注册,若检测到应用已注册,COS***为应用配置运行环境;COS***检测定密码算法是否登记,若检测到密码算法已登记,COS***进行密码算法注册,为密码算法输出库接口配置访问地址;接下来,COS***处于待命状态,等待来自读卡设备的命令,命令分为基础指令处理、安全处理和应用处理。当命令为基础指令时,COS***掌控CPU指针的控制权,从COS***的代码区读取指令、从COS***的全局变量区和堆栈区存取数据,完成命令处理,得到处理结果。命令为安全处理命令时,若密码算法已注册,COS***将CPU指针的控制权交给密码算法***,密码算法***控制CPU的指针从密码算法的代码区读取指令、从密码算法***的全局变量区及堆栈区存取数据,完成当安全处理密码数据的处理,密码算法***将CPU指针的控制权交还COS***,COS***继续完成安全处理功能。而命令为应用处理时,COS***将CPU指针的控制权交给定制应用***,定制应用***控制CPU的指针从应用的代码区读取指令、从应用的全局变量区存取数据,当处理涉及加密的应用处理命令时,定制应用***将CPU指针的控制权交给密码算法***,通过密码算法***完成该应用处理命令对应数据的密码处理后,密码算法***将CPU指针的控制权交还定制应用***,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。

Claims (10)

1.一种基于密码算法分离存储的智能卡设计方法,其特征在于包括:
步骤1:COS***读取读卡设备的命令,当命令,若该密码算法已注册,则执行步骤2;否则,执行步骤3;
步骤2:COS***将CPU指针的控制权交给密码算法***,密码算法***控制CPU的指针从密码算法***的代码区读取指令、从密码算法***的全局变量区及堆栈区存取数据,完成安全处理密码数据的处理;将处理结果通过共享变量区反馈给COS***,然后密码算法***将CPU指针的控制权交还COS***;
步骤3:密码算法***的密码算法进行加注处理。
2.根据权利要求1所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述步骤2之后,判断所述命令为基础命令,即为非应用处理命令时,COS***掌控CPU指针的控制权,从COS***的代码区读取指令、从COS***的全局变量区和堆栈区存取数据,完成命令处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
3.根据权利要求1或2所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述步骤2之后,判断所述命令为应用处理命令,且为涉及加密的应用处理命令时,定制应用***将CPU指针的控制权交给密码算法***,通过密码算法***完成该应用处理命令对应数据的密码处理后,密码算法***将CPU指针的控制权交还定制应用***,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
4.根据权利要求3所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述步骤2之后,判断所述命令为应用处理命令,且是非加密的应用处理命令时,COS***将CPU指针的控制权交给定制应用***,定制应用***控制CPU的指针从定制应用***的代码区读取指令、从定制应用***的全局变量区存取数据,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
5.根据权利要求1、2或4所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于还包括密码算法***的密码算法进行更新处理。
6.根据权利要求5所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述COS***包括主控模块、硬件资源管理模块、通信管理模块、安全管理模块、文件***管理模块;安全管理模块包括安全应用模块、密码资源库接口模块、密码管理模块;定制应用***包括非密码应用功能模块及应用密码管理模块;密码算法软件***主要由密码处理模块、密码算法码模块和密码算法输出库模块。
7.根据权利要求1、2、3或6所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述步骤1之前还包括:COS***还包括应用及参数注入阶段、密码算法及密钥数据注入阶段。
8.基于权利要求1、2、3或6所述一种基于密码算法分离存储的智能卡设计方法的智能卡,其特征在于包括:
COS***:用于读取读卡设备的命令,当命令为安全处理指令时,则COS***判断密码算法软件***的密码算法是否注册,若该密码算法已注册,则COS***将CPU指针的控制权交给密码算法***;否则,密码算法***的密码算法进行加注处理;
密码算法***:用于控制CPU的指针从密码算法***的代码区读取指令、从密码算法***的全局变量区及堆栈区存取数据,完成密码数据的处理;然后密码算法***将CPU指针的控制权归还COS***。
9.根据权利要求8所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于判断所述命令为基础命令,即为非应用处理命令时,COS***掌控CPU指针的控制权,从COS***的代码区读取指令、从COS***的全局变量区和堆栈区存取数据,完成命令处理,得到处理结果;
判断所述命令为应用处理命令,且为涉及加密的应用处理命令时,定制应用***将CPU指针的控制权交给密码算法***,通过密码算法***完成该应用处理命令对应数据的密码处理后,密码算法***将CPU指针的控制权交还定制应用***,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS***,并归还CPU指针的控制权。
10.根据权利要求9所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于判断所述命令为应用处理命令,且是非加密的应用处理命令时,COS***将CPU指针的控制权交给定制应用***,定制应用***控制CPU的指针从定制应用***的代码区读取指令、从定制应用***的全局变量区存取数据,完成应用功能的处理;然后定制应用***将CPU指针的控制权归还COS***。
CN201711162447.9A 2017-11-21 2017-11-21 一种基于密码算法分离存储的智能卡及设计方法 Active CN107798256B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711162447.9A CN107798256B (zh) 2017-11-21 2017-11-21 一种基于密码算法分离存储的智能卡及设计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711162447.9A CN107798256B (zh) 2017-11-21 2017-11-21 一种基于密码算法分离存储的智能卡及设计方法

Publications (2)

Publication Number Publication Date
CN107798256A true CN107798256A (zh) 2018-03-13
CN107798256B CN107798256B (zh) 2020-02-21

Family

ID=61535502

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711162447.9A Active CN107798256B (zh) 2017-11-21 2017-11-21 一种基于密码算法分离存储的智能卡及设计方法

Country Status (1)

Country Link
CN (1) CN107798256B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109145654A (zh) * 2018-08-15 2019-01-04 阿里巴巴集团控股有限公司 防止破解算法模型的芯片及业务处理方法
CN109672519A (zh) * 2018-10-17 2019-04-23 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 一种密码装置及其数据加解密方法
CN110971443A (zh) * 2018-09-28 2020-04-07 赛灵思公司 网络接口设备和方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090300754A1 (en) * 2006-07-10 2009-12-03 Segem Securite Protecting a Program Interpreted by a Virtual Machine
CN102752104A (zh) * 2012-06-07 2012-10-24 中国电子科技集团公司第三十研究所 一种基于智能卡cos的对称密码服务实现方法
CN105468408A (zh) * 2015-11-19 2016-04-06 中国航天科工集团第二研究院七〇六所 智能卡下载密码算法的方法
CN106127092A (zh) * 2016-06-17 2016-11-16 成都三零嘉微电子有限公司 一种cos***应用剥离的智能卡及其工作方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090300754A1 (en) * 2006-07-10 2009-12-03 Segem Securite Protecting a Program Interpreted by a Virtual Machine
CN102752104A (zh) * 2012-06-07 2012-10-24 中国电子科技集团公司第三十研究所 一种基于智能卡cos的对称密码服务实现方法
CN105468408A (zh) * 2015-11-19 2016-04-06 中国航天科工集团第二研究院七〇六所 智能卡下载密码算法的方法
CN106127092A (zh) * 2016-06-17 2016-11-16 成都三零嘉微电子有限公司 一种cos***应用剥离的智能卡及其工作方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109145654A (zh) * 2018-08-15 2019-01-04 阿里巴巴集团控股有限公司 防止破解算法模型的芯片及业务处理方法
CN110971443A (zh) * 2018-09-28 2020-04-07 赛灵思公司 网络接口设备和方法
CN110971443B (zh) * 2018-09-28 2023-11-07 赛灵思公司 网络接口设备和方法
CN109672519A (zh) * 2018-10-17 2019-04-23 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 一种密码装置及其数据加解密方法
CN109672519B (zh) * 2018-10-17 2022-06-24 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 一种密码装置及其数据加解密方法

Also Published As

Publication number Publication date
CN107798256B (zh) 2020-02-21

Similar Documents

Publication Publication Date Title
US20210240637A1 (en) Methods, apparatus, and systems for secure demand paging and paging operations for processor devices
CN104318182B (zh) 一种基于处理器安全扩展的智能终端隔离***及方法
CN102222049B (zh) 自加密存储设备的可扩展管理
CN101470783B (zh) 一种基于可信平台模块的身份识别方法及装置
CN106415506B (zh) 用于调用安全区域的面向对象的编组方案
US7366916B2 (en) Method and apparatus for an encrypting keyboard
US20160232105A1 (en) Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices
CN108351937A (zh) 计算设备
CN100481107C (zh) 一种基于可信平台模块和指纹识别的身份控制方法
CN101506815A (zh) 用于安全***的双处理器结构
CN106605233A (zh) 使用处理器提供可信执行环境
US11977663B2 (en) Processing unit, electronic device, and security control method
CN105391840A (zh) 自动创建目标应用程序
CN107038369A (zh) 一种资源访问控制的方法及终端
CN105900104A (zh) 安全元件中的小应用程序迁移
CN210691384U (zh) 基于安全单元和可信执行环境的人脸识别支付终端平台
JP2017510909A (ja) 指紋認証方法、装置、インテリジェント端末及びコンピュータ記憶媒体
JP2003067700A (ja) データ構造を記憶するメモリ及び方法
US9563754B2 (en) Method of generating a structure and corresponding structure
CN100507797C (zh) 采用文本屏障在小型注脚设备上实施安全的技术
CN107798256A (zh) 一种基于密码算法分离存储的智能卡及设计方法
CN1316360C (zh) 注脚设备及运行注脚设备的方法
US20210334361A1 (en) Processing apparatus, embedded system, system-on-chip, and security control method
CN100353324C (zh) 使用共享对象接口在小型注脚设备中允许越过文本屏障进行访问的技术
CN101888627B (zh) 一种移动终端及保护其***数据的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant