首页> 中国专利> 一种具有加密解密功能的多应用智能卡

一种具有加密解密功能的多应用智能卡

摘要

本发明实施例提供的一种具有加密解密功能的多应用智能卡,所述智能卡包括:传输管理模块:所述传输管理模块用于按照预设传输协议传入指令或返回响应;命令解析模块:所述命令解析模块对接收到的命令进行解析;加密解密模块:所述加密解密模块对应用卡中的应用内容执行加密或解密操作;安全会话管理模块:所述安全会话管理模块用于基于会话信息对所述应用卡内的内容进行管理,并控制其状态转移。本发明的方案不但能很好的解决智能卡安全问题,而且具有开发周期短,系统维护与更新方便且成本更低等优点。

著录项

  • 公开/公告号CN104484628A

    专利类型发明专利

  • 公开/公告日2015-04-01

    原文格式PDF

  • 申请/专利权人 西安邮电大学;

    申请/专利号CN201410787328.2

  • 发明设计人 杨小宝;吴小峰;李晓伦;

    申请日2014-12-17

  • 分类号G06F21/78(20130101);G06F21/62(20130101);G06F21/77(20130101);

  • 代理机构11429 北京中济纬天专利代理有限公司;

  • 代理人张晓霞

  • 地址 710061 陕西省西安市雁塔区长安南路563号

  • 入库时间 2023-12-17 04:31:51

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-01-21

    专利权的转移 IPC(主分类):G06F21/78 专利号:ZL2014107873282 登记生效日:20220111 变更事项:专利权人 变更前权利人:西安邮电大学 变更后权利人:陕西埃菲克能源科技有限公司 变更事项:地址 变更前权利人:710061 陕西省西安市雁塔区长安南路563号 变更后权利人:710065 陕西省西安市高新区唐延南路8号泰维智链中心项目T1楼16层02号

    专利申请权、专利权的转移

  • 2018-04-13

    授权

    授权

  • 2018-03-16

    著录事项变更 IPC(主分类):G06F21/78 变更前: 变更后: 申请日:20141217

    著录事项变更

  • 2015-04-29

    实质审查的生效 IPC(主分类):G06F21/78 申请日:20141217

    实质审查的生效

  • 2015-04-01

    公开

    公开

说明书

技术领域

本发明涉及物联网技术领域,特别是涉及具有加密解密功能的多应用智能 卡。

背景技术

随着智能卡的多业务应用的快速发展,信息在不同的网络、系统和数据源 之间实现自动、快速、安全的交换。不同的应用系统可能属于不同的信任域, 而用户访问不同信息域的应用系统具有不同的身份。应用系统内的数据信息不 可被非法用户访问或篡改。针对此类信息数据安全,现有技术中主要的解决方 案是数据的完整性校验,包括奇偶校验和循环冗余校验。这2种校验虽然能够 达到保证数据完整性的目的但它并没有抗数据篡改的能力。它们一定程度上能 检测并纠正数据传输中的信道误码,但却不能防止外在对数据的恶意破坏。

因此,现在亟需一种更为安全可靠的智能卡。

发明内容

本发明实施例的目的在于提供一种更为行之有效的、能够进行数据完整性 校验、真正做到数据防篡改、切实保护数据安全的多应用数据卡。

为达到上述目的,本发明实施例公开了一种具有加密解密功能的多应用智 能卡,其特征在于,所述智能卡包括:

传输管理模块:所述传输管理模块用于按照预设传输协议传入指令或返回 响应;

命令解析模块:所述命令解析模块对接收到的命令进行解析;

加密解密模块:所述加密解密模块对应用卡中的应用内容执行加密或解密 操作;

安全会话管理模块:所述安全会话管理模块用于基于会话信息对所述应用 卡内的内容进行管理,并控制其状态转移。

可选的,外部智能卡读取设备读取所述智能卡内的内容时,需要经过解密 操作才能读取。

可选的,外部智能卡读取设备读取所述智能卡中的一个或多个文件时,其 余未使用的文件处于加密状态。

可选的,采用Hash算法校验所述智能卡内的数据完整性。

可选的,智能卡在创建应用目录和文件时,加密解密模块对文件进行加密, 产生密钥。

可选的,通过安全会话管理模块,将加密密钥、文件路径信息以及加密后 的文件通过映射表的方式一一对应。

可选的,所述加密解密模块执行加密步骤具体包括:智能卡调用加密解密 模块,加密应用数据文件,计算密文Hash值并用该应用系统的私有密钥对此 Hash值加密,形成不可仿造的数字签名HashCode,且附于密文文件之后;以及 安全管理器用应用安全域的密钥,对映射表文件做最后的加密。

可选的,所述安全会话管理模块对所述应用卡内的内容进行管理,包括: 命令解析器成功解析命令后,通过安全会话管理模块,在缓存中的密钥映射表 中查找FID对应的KEY。

可选的,所述安全会话管理模块对所述应用卡内的内容进行管理,还包括: 安全会话管理模块使用应用安全域密钥加密映射记录表文件、更新、替换原有 映射记录表密文文件。

可选的,所述智能卡还包括:CPU、RAM、EEPROM。

本发明实施例提供的智能卡内构建了一个文件加密与访问控制模块,保障 各应用系统的独立性,实现数据的访问控制和密钥的安全存储。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付 出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术中多应用智能卡文件系统结构图;

图2为本发明实施例提供的使用Hash算计进行数据完整性校验的流程图;

图3为本发明实施例提供的一种含有安全管理器文件密钥映射表的多应用 智能卡示意图;

图4为本发明实施例提供的一种文件加密与访问控制模块结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

常见的多应用文件结构如图1所示,在每张智能卡中文件系统只存在一个 根文件MF,其他的所有文件都是该文件的子(孙)文件。我们知道任何一个DF (Dedicated File)在物理上和逻辑上都保持独立,都有自己的安全机制和应用数 据。为了标识不同的DF,每个DF具有一个同级DF下唯一的文件标识符FID (File Identifier)和一个卡内全局唯一的应用标识符AID(Application Identifier)。 从图1可以看出每个行业分别对应卡中的一个独立的应用系统,例如行业1对 应智能卡内DDF01的应用系统。

在一张代表用户身份的智能卡中会有多个不同的应用系统或者目录,其相 关数据信息均以密文形式保存在智能卡内对应的文件中,由于存在不同行业之 间的串读以及伪终端恶意伪造合法身份窃取卡内敏感数据信息,这里需要使用 与应用系统对应的加密算法对文件进行加密,读卡端在访问不同信息域的应用 系统时候,就需要用与之对应的解密算法对密文文件解密,获取明文信息,从 而对信息执行相应的操作,如插入,修改,删除等。而对不使用此算法的其它 文件进行保护,禁止没有通过认证的非法用户的恶意访问以及卡内其他行业系 统读卡端的误读、串读,以防止智能卡的其它的文件信息遭到窃取、篡改以及 破坏。为此,特别需要一种智能卡内部数据的保护方法,在外部读写器访问智 能卡中的某个文件时,只有通过解密才能使用,不使用的时候文件处于加密状 态,同时,在某个文件使用的时候,而其它未使用的文件依然处于加密状态。 这就涉及到了智能卡的安全认证与密钥管理。

不论是实现多应用的Native卡或是可以动态加载应用的Java card与 Mutlos卡,凡实现了多应用,其安全性都在本发明的解决范围之内。对此本发 明结合多应用智能卡的文件系统结构,提出了一种数据以密文存储的完整性校 验解决方法。以保证卡内数据信息在生成、存储、传输以及应用的途中不被恶 意的篡改、破坏等等。分析智能卡存在的各类安全问题,给出解决方案,分析 方法的由来以及适用性,结合本发明的特征。

数据完整性校验的方法有很多种,本发明采用Hash校验算法,这种转换 是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入 可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。简单地说 就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。HASH主 要用于信息安全领域中加密算法,通过函数将不同长度的信息转化成杂乱的 128位的编码哈希值。从而找到一种数据内容和数据存放地址之间的映射关系。 一个哈希算法R=H(S)是一个多对一映射,给定目标文本S,H可以将其唯一映 射为R,并且对于所有S,R具有相同的长度。由于是多对一映射,所以H不 存在逆映射S=H-1(R),使得R转换为唯一的S。本发明保护数据仅仅用作比较 验证,在以后不需要还原成明文形式,而且好的哈希算法应该对于输入的改变 极其敏感,即使输入有很小的改动,如一亿个字符变了一个字符,那么结果应 该截然不同。故哈希算法用在多应用智能卡中就能很好的检测卡内数据信息的 完整性。

完整性校验流程的简单描述:当读卡器向智能卡发出一条 APDU(Application Protocol Data Unit)命令时,卡片可根据APDU命令中的 CLA(Class Byte of Command Message)字段的值判断该命令属于哪一个行业的 应用请求,例如,当CLA=80时为金融行业。命令被允许访问该行业的文件, INS(Instruction Byte of Command Message)字段表示需要执行命令的指令代 码,数据段可以是应用标识符(Application Identifier简写为AID也可以是需要 写入的数据(二进制文件等)。其根据AID或FID找到卡内的存储地址,并将 APDU命令中携带的数据放置在此处,下面就需要对此APDU命令中的数据信 息做完整性校验,如图2所示。首先,要调用卡内存储的安全算法(如3DES 算法),对写入的数据M使用3DES算法对数据进行加密,密钥K直接由智能 卡生成并保存在基本发明件EF中,做到密钥不出卡的安全原则,得到密文文 件数据E(K,M),并对其进行Hash运算得到H(E(K,M)),即散列值。再用智能 卡的私钥PRa加密散列值来生成签名,数字签名保证了数据的来源和完整性。 最后将得到的数字签名E(PRa,H(E(K,M)))附加到密文文件E(K,M)之后一起保 存在专有文件DDF中。

在本发明的智能卡多应用设计中,智能卡在创建应用目录和文件时,加解 密模块对文件进行加密,产生密钥,通过安全管理器,将加密密钥K、文件路 径信息FID、加密后的文件一一对应起来,以变长记录的方式保存在一个映射 表中,如图3所示。

此表由安全管理器来保存,并用应用安全域的密钥进行加密,以密文方式 存在。文件加密与访问控制模型如图4所示,其中文件具体的加密步骤如下:

(1)读写器业务终端与智能卡建立安全连接;

(2)读写器终端向智能卡发送APDU命令;

(3)根据要求是否创建业务应用区,若需要则创建业务应用区,否则,直接 下载电子业务,创建目录DF和相关文件,包括KEY文件;

(4)根据命令要求,智能卡决定是否对文件调用加密模块,加密应用数据文 件,计算密文HashHash值并用该应用系统的私有密钥对此HashHash值加密, 形成不可仿造的数字签名Hash Code,且附于密文文件之后,做完整性校验之 用;

(5)把加密后的文件路径信息FID、密钥K,Hash Code交给安全管理器,做 一一对应映射,保存记录;

(6)安全管理器用应用安全域的密钥,对映射表文件做最后的加密。

为提高卡内数据的访问速率,加密算法采用3DES对称加密算法。文件的 加密密钥和解密密钥是同一个密钥,不同的文件拥有不同的密钥。

在遵循智能卡的安全通信机制的前提下,按照本发明要求,智能卡内的文 件在给用户发卡时就已经写好,卡内数据以密文文件方式存在,用户访问时很 少创建,对文件的数据大多是读和修改操作。

对卡内密文访问,步骤如下:

(1)读写器业务终端与智能卡建立安全通道后,智能卡安全管理器根据应用 安全域密钥解密加密映射表文件到缓存中,供文件访问命令查询操作;

(2)读写器业务终端向智能卡发送文件访问APDU命令,该命令包含文件 路径信息FID;

(3)命令解析器成功解析命令后,通过安全管理器,在缓存中的密钥映射表 中查找FID对应的KEY、Hash Code;

(4)智能卡根据FID选择目标密文文件,通过Hash Code校验密文文件的完 整性,并使用对应的KEY,解密密文文件到新开辟的缓冲区域;

(5)读写器业务终端通过智能卡,对解密文件进行后续文件命令操作(如查 询,修改、删除等)数据记录;

(6)文件访问结束,重新生成随机数,作为密钥k,对缓存文件加密,生成 密文件,替换原有密文,并进行HashHash计算;

(7)将密文文件路径信息FID,KEY,Hash Code交给安全管理器,修改原有 FID对应的密钥、Hash Code映射记录;

(8)安全管理器使用应用安全域密钥加密映射记录表文件、更新、替换原有 映射记录表密文文件。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范 围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包 含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号