CN107798256B - 一种基于密码算法分离存储的智能卡及设计方法 - Google Patents
一种基于密码算法分离存储的智能卡及设计方法 Download PDFInfo
- Publication number
- CN107798256B CN107798256B CN201711162447.9A CN201711162447A CN107798256B CN 107798256 B CN107798256 B CN 107798256B CN 201711162447 A CN201711162447 A CN 201711162447A CN 107798256 B CN107798256 B CN 107798256B
- Authority
- CN
- China
- Prior art keywords
- cryptographic algorithm
- command
- processing
- application
- cos
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/77—Protecting 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 (8)
1.一种基于密码算法分离存储的智能卡设计方法,其特征在于包括:
步骤1:COS系统读取读卡设备的命令,当命令为安全处理指令时,若该密码算法已注册,则执行步骤2;否则,执行步骤3;
步骤2:COS系统将CPU指针的控制权交给密码算法系统,密码算法系统控制CPU的指针从密码算法系统的代码区读取指令、从密码算法系统的全局变量区及堆栈区存取数据,完成安全处理密码数据的处理;将处理结果通过共享变量区反馈给COS系统,然后密码算法系统将CPU指针的控制权交还COS系统;
步骤3:对密码算法系统的密码算法进行加注处理;
所述步骤2之后,判断所述命令为应用处理命令,且为涉及加密的应用处理命令时,定制应用系统将CPU指针的控制权交给密码算法系统,通过密码算法系统完成该应用处理命令对应数据的密码处理后,密码算法系统将CPU指针的控制权交还定制应用系统,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS系统,并归还CPU指针的控制权。
2.根据权利要求1所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述步骤2之后,判断所述命令为基础命令,即为非应用处理命令时,COS系统掌控CPU指针的控制权,从COS系统的代码区读取指令、从COS系统的全局变量区和堆栈区存取数据,完成命令处理,将处理结果通过共享变量区反馈给COS系统,并归还CPU指针的控制权。
3.根据权利要求1所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述步骤2之后,判断所述命令为应用处理命令,且是非加密的应用处理命令时,COS系统将CPU指针的控制权交给定制应用系统,定制应用系统控制CPU的指针从定制应用系统的代码区读取指令、从定制应用系统的全局变量区存取数据,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS系统,并归还CPU指针的控制权。
4.根据权利要求1、2或3所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于还包括密码算法系统的密码算法进行更新处理。
5.根据权利要求4所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述COS系统包括主控模块、硬件资源管理模块、通信管理模块、安全管理模块、文件系统管理模块;
安全管理模块包括安全应用模块、密码资源库接口模块、密码管理模块;
定制应用系统包括非密码应用功能模块及应用密码管理模块;
密码算法软件系统主要由密码处理模块、密码算法码模块和密码算法输出库模块。
6.根据权利要求1、2、3或5所述的一种基于密码算法分离存储的智能卡设计方法,其特征在于所述步骤1之前还包括:COS系统还包括应用及参数注入阶段、密码算法及密钥数据注入阶段。
7.一种基于密码算法分离存储的智能卡,其特征在于,基于权利要求1、2、3或5所述的基于密码算法分离存储的智能卡设计方法,包括:
COS系统:用于读取读卡设备的命令,当命令为安全处理指令时,则COS系统判断密码算法软件系统的密码算法是否注册,若该密码算法已注册,则COS系统将CPU指针的控制权交给密码算法系统;否则,密码算法系统的密码算法进行加注处理;
密码算法系统:用于控制CPU的指针从密码算法系统的代码区读取指令、从密码算法系统的全局变量区及堆栈区存取数据,完成密码数据的处理;然后密码算法系统将CPU指针的控制权归还COS系统;
判断所述命令为基础命令,即为非应用处理命令时,COS系统掌控CPU指针的控制权,从COS系统的代码区读取指令、从COS系统的全局变量区和堆栈区存取数据,完成命令处理,得到处理结果;
判断所述命令为应用处理命令,且为涉及加密的应用处理命令时,定制应用系统将CPU指针的控制权交给密码算法系统,通过密码算法系统完成该应用处理命令对应数据的密码处理后,密码算法系统将CPU指针的控制权交还定制应用系统,完成应用处理命令的处理,将处理结果通过共享变量区反馈给COS系统,并归还CPU指针的控制权。
8.根据权利要求7所述的一种基于密码算法分离存储的智能卡,其特征在于判断所述命令为应用处理命令,且是非加密的应用处理命令时,COS系统将CPU指针的控制权交给定制应用系统,定制应用系统控制CPU的指针从定制应用系统的代码区读取指令、从定制应用系统的全局变量区存取数据,完成应用功能的处理;然后定制应用系统将CPU指针的控制权归还COS系统。
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 CN107798256A (zh) | 2018-03-13 |
CN107798256B true 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) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109145654A (zh) * | 2018-08-15 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 防止破解算法模型的芯片及业务处理方法 |
CN110971443B (zh) * | 2018-09-28 | 2023-11-07 | 赛灵思公司 | 网络接口设备和方法 |
CN109672519B (zh) * | 2018-10-17 | 2022-06-24 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种密码装置及其数据加解密方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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系统应用剥离的智能卡及其工作方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2903508B1 (fr) * | 2006-07-10 | 2008-10-17 | Sagem Defense Securite | Protection d'un programme interprete par une machine virtuelle |
-
2017
- 2017-11-21 CN CN201711162447.9A patent/CN107798256B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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系统应用剥离的智能卡及其工作方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107798256A (zh) | 2018-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007226839A (ja) | データ構造を記憶するメモリ及び方法 | |
US20240273241A1 (en) | Processing unit, electronic device, and security control method | |
CN113826097A (zh) | 利用用户生物信息执行身份认证的电子装置及其操作方法 | |
US9563754B2 (en) | Method of generating a structure and corresponding structure | |
US7610488B2 (en) | Data processing device and method and program of same | |
CN107798256B (zh) | 一种基于密码算法分离存储的智能卡及设计方法 | |
JPH09508733A (ja) | ポータブルデータ処理ユニットを備えたデータ交換システム | |
JP4074620B2 (ja) | メモリ管理ユニット | |
CN101334827A (zh) | 磁盘加密方法及实现该方法的磁盘加密系统 | |
CN113569245A (zh) | 处理装置、嵌入式系统、片上系统以及安全控制方法 | |
EP3591517A1 (en) | Smart card | |
US20150227755A1 (en) | Encryption and decryption methods of a mobile storage on a file-by-file basis | |
CN101888627B (zh) | 一种移动终端及保护其系统数据的方法 | |
CN113508411A (zh) | 虚拟电子卡管理方法、系统及安全芯片、终端和存储介质 | |
US20160196170A1 (en) | Integrated-circuit radio | |
US8677137B2 (en) | Communication device, communication method, information processing device, information processing method, program, and communication system | |
JP4591163B2 (ja) | バスアクセス制御装置 | |
EP3751437A1 (en) | Information processing device, information processing method, and program | |
EP3320437B1 (en) | Integrated circuit card adapted to transfer first data from a first application for use by a second application | |
JP2019160191A (ja) | 携帯可能電子装置、及びicカード | |
CN115730341A (zh) | 访问控制方法、系统、存储介质、电子设备及系统级芯片 | |
CN1997961A (zh) | 用于引导计算机系统的方法和装置 | |
CN115859225A (zh) | 加固方法、注册方法、运行方法、电子设备和存储介质 | |
WO2020107025A2 (en) | A security-enabled microprocessor for a security-enabled computing system | |
CN104778053A (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 |