



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
智能卡安全问题及其对策分析智能卡安全问题及其对策分析 在信息化高速发展的今天 智能卡 这个词在我们的日常生活中已随处可 见 智能卡在中国的发展速度十分迅猛 目前在我国 IC 卡已在众多领域获得 广泛应用 并取得了初步的社会效益和经济效益 2000 年 全国 IC 卡发行量 约为 2 3 亿张 其中电信占据了大部分市场份额 公用电话 IC 卡 1 2 亿多张 移动电话 SIM 卡超过 4200 万张 其它各类 IC 卡约 6000 万张 2001 年 IC 卡总 出货量约 3 8 亿张 较上年增长 26 发行量约 3 2 亿张 较上年增长 40 从 应用领域来看 公用电话 IC 卡发行超过 1 7 亿张 SIM 卡发行 5500 万张 公 交 IC 卡为 320 万张 社保领域发卡为 1400 万张 其它发卡为 8000 万张 智能 卡市场呈现出以几何级数增长的态势 智能卡以其特有的安全可靠性 被广泛 应用于从单个器件到大型复杂系统的安全解决方案 然而随着智能卡的日益普 及 针对智能卡安全漏洞的专用攻击技术也在同步发展 分析智能卡面临的安 全攻击 研究相应的防御措施 对于保证整个智能卡应用系统的安全性有重大 的意义 本文首先分析了目前主要的智能卡攻击技术 并有针对性地提出相应 的安全设计策略 智能卡是将具有存储 加密及数据处理能力的集成电路芯片镶嵌于塑料基 片上制成的卡片 其硬件主要由微处理器和存储器两部分构成 加上固化于卡 中的智能卡操作系统 COS 及应用软件 一张智能卡即构成了一台便携和抗损 的微型计算机 智能卡的硬件构成包括 CPU 存储器 含 RAM ROM 和 EEPROM 等 卡与读写终端通讯的 I O 接口以及测试与安全逻辑 如图 1 所示 作为芯片核心的微处理器多采用 8 位字长的 CPU 更高位的 CPU 也正在开始应 用 负责完成所有运算和数据交换功能 卡内的存储器容量一般都不是很大 其中 ROM 中固化的是操作系统代码及自测程序 其容量取决于所采用的微处 理器 典型值为 32 KB RAM 用于存放临时数据或中间数据 例如短期密码 临时变量和堆栈数据等 容量通常不超过 1 KB EEPROM 中则存储了智能卡的 各种应用信息 如加密数据和应用文件等 有时还包括部分 COS 代码 容量通 常介于 2 KB 到 32 KB 之间 这部分存储资源可供用户开发利用 智能卡操作系统 COS 的主要功能是控制智能卡和外界的信息交换 管理智 能卡内的存储器并在卡内部完成各种命令的处理 卡中的数据以树型文件结构 的形式组织存放 卡与终端之间通过命令响应对的形式交换信息 CPU 与 COS 的存在使智能卡能够方便地采用 PIN 校验 加密技术及认证技术等来强化智能 卡的安全性 但这并不意味着智能卡是绝对安全的 在智能卡的设计阶段 生 产环境 生产流程及使用过程中会遇到各种潜在的威胁 攻击者可能采取各种 探测方法以获取硬件安全机制 访问控制机制 鉴别机制 数据保护系统 存 储体分区 密码模块程序的设计细节以及初始化数据 私有数据 口令或密码 密钥等敏感数据 并可能通过修改智能卡上重要安全数据的方法 非法获得对 智能卡的使用权 这些攻击对智能卡的安全构成很大威胁 对智能卡的攻击可分 3 种基本类型 逻辑攻击 物理攻击和边频攻击 下 面就这 3 种攻击技术的具体实施方式加以分析 逻辑攻击技术分析 逻辑攻 击的主要方法是对处理器的通信接口进行分析 以期发现智能卡协议 密码算 法及其实现过程中所潜藏的逻辑缺陷 包括潜藏未用的命令 不良参数与缓冲 器溢出 文件存取漏洞 恶意进程 通信协议和加密协议的设计与执行过程等 逻辑攻击者在软件的执行过程中插入窃听程序 利用这些缺陷诱骗卡泄露机密 数据或允许非期望的数据修改 从所需的设备来看 逻辑攻击的成本可以说是 相当低的 攻击者只需具备智能卡 读写器和 PC 机即可 其另一优点在于非 入侵式的攻击模式以及可轻松地复制 物理攻击技术分析 虽然智能卡的所有功能似乎都封闭在单个的芯片中 然而仍然有可能对其实施反向工程 用于实施物理攻击的主要方法包括 1 微探针技术 攻击者通常使用发烟硝酸去除包裹裸片的环氧树脂 用丙酮 去离子水 异丙醇完成清洗 氢氟酸超声浴进一步去除芯片的各层金属 在去 除芯片封装之后 通过金丝键合恢复芯片功能焊盘与外界的电气连接 最后可 以使用亚微米级微探针获取感兴趣的信号 从而分析出智能卡的有关设计信息 和存储结构 甚至直接读取出存储器的信息进行分析 2 版图重构 利用 高倍光学及射电显微镜研究电路的连接模式 跟踪金属连线穿越可见模块 如 ROM RAM EEPROM ALU 指令译码器等 的边界 可以迅速识别芯片上的一些 基本结构 如数据线和地址线 3 聚离子束 FIB 技术 采用镓粒子束攻击 芯片表面 在不破坏芯片表面电路结构的情况下 用含有不同气体的粒子束 可在芯片上沉积出导线 绝缘体甚至半导体 采用这种方法可重新连接测试电 路的熔断丝 或将多层芯片中深藏在内部的信号连到芯片的表面 或加粗加强 过于纤细脆弱无法置放探针的导线 从而形成一个新的 探针台 技术人员可 利用激光干涉仪工作台观察芯片单个晶体的微细结构以及其它的电路结构 物 理攻击是实现成功探测的强有力手段 但其缺点在于入侵式的攻击模式 同时 需要昂贵的高端实验室设备和专门的探测技术 边频攻击技术分析 边频攻击是通过观察电路中的某些物理量如能量消耗 电磁辐射 时间等的变化规律来分析智能卡的加密数据 或通过干扰电路中的 某些物理量如电压 电磁辐射 温度 光和 X 射线 频率等来操纵智能卡的行 为 边频攻击方法主要包括以下两种方式 1 差分能量分析 differential power analysis DPA 差分能量分析 DPA 攻击是通过用示 波镜检测电子器件的能量消耗来获知其行为 攻击者只需知道算法的明文 输 入 或密文 输出 通过分析和比较一系列的能量轨迹就可重现加密密钥 DPA 攻击的基础是假设被处理的数据与能量消耗之间存在某种联系 换句话说 假设处理 0 比 1 所用的能量要少 反之亦然 那么对两个不同数据执行同一 算法的两个能量轨迹会由于输入数据的不同而产生微小的差别 用计算机严格 按时钟计算两条轨迹的差得到差分轨迹 差分轨迹中出现峰值的时刻即是输入 数据产生差别的时钟周期 如此检查加密算法的所有输入以及每一对 0 和 1 产 生的差分轨迹 就可以识别出它们出现在程序代码中的确切时间 从而获取加 密密钥 2 能量短脉冲干扰 微处理器要求在稳定的电压下工作 能量供 应的中断就好像突然冲击程序运行或复位电路 然而 一个短而巧妙的脉冲可 以引起单步的程序错误而微处理器仍能继续执行程序 例如 CPU 读取存储单 元的内容 三极管用一个阈值来检测存储单元的值以确定所读的是逻辑 0 或 1 突然出现的能量短脉冲对存储值和逻辑值都会产生影响 如图 2 所示 与 逻辑 0 对应的低电平在正常的操作状态下可能低于阈值电平 然而由于短脉冲 的能量下压可能导致其高于阈值电平 许多加密算法都易受这一类故障注入的 影响 采用差分故障分析 differentialfault analysis DFA 技术将正确的 与错误的密码编码相比较从而析出秘藏的密钥 短脉冲干扰的第 2 种攻击方 式是将 PIN 校验失败转为成功以欺骗处理器 更为严格的一种方式是在处理器 正要将校验失败写入存储器时完全关闭电源 从而避免 PIN 校验失败计数器溢 出 短脉冲干扰的第 3 种应用是攻击发送限制计数器 从而导致整个存储器内 容输出到串行接口 智能卡的安全设计策略 某些信息安全系统采用了智能卡来提高系统的安 全性却无视其弱点 导致系统安全解决方案有着其自身的安全漏洞 甚至于更 不安全 以下是针对上述智能卡攻击技术提供相应的安全设计策略 逻辑攻击 的安全设计策略 系统对逻辑攻击的敏感性很大程度上取决于软件的复杂程度 然而窃听程序的数目也会随着程序代码的增加而增长 对付窃听程序以及软件 缺陷的安全策略包括 结构化设计 以小的功能模块构建软件 使程序易于 理解和校验 正规的校验 使用数学模型来检验功能 测试 对软件的运 行进行 在智能卡领域 接口与应用的标准化 应用 Java 卡操作系统以及评 估实验室的普及已成为几大趋势 即便如此 智能卡仍远未能对逻辑攻击免疫 软件复杂程度的提高总是会带来引入新漏洞的危险 物理攻击的安全设计策略 仅在数年前智能卡芯片是使用常规芯片制造中的 退役设备 来生产的 这是 因为芯片的功能要求低 相应价格也低 今天智能卡市场的巨大增长及功能复 杂程度的迅速提高使得厂商能够负担先进的设备和精细的设计 应对物理攻击 的关键在于提高芯片设计的复杂程度和芯片制造的精细程度 具体措施包括 减小形体尺寸 过去 5 年来芯片上的晶体管与导线已由 1 m 降至小于 200 nm 这么小的尺寸已无法使用光学显微镜来分析 也使放置探针变得极为困难 但高倍显微镜与 FIB 技术仍能得手 多层电路设计 不仅是增加电路的层数 而且将包含敏感数据线的层 掩埋层 隐藏在较不敏感的层之下 使微探针技 术的使用受到一定限制 顶层的传感器保护网 在芯片的表面加上一层格状的 带有保护信号的激活网络 当入侵行为发生时 该信号中断 使内存的内容清 零 这种技术能够有效地防止激光切割及探针类的探测技术 然而技术娴熟的 入侵高手仍可绕过传感器保护网探测被保护层 因此增强型的传感器保护网使 用大量表面上无关且频繁变化的信号 这将大大降低 FIB 技术探测内部电路层 的成功率 锁存电路 在智能卡的处理器中设置锁存位 当出现异常情况 如 温度 压力 电压 电流等出现不安全的情况并对芯片内的敏感数据产生威胁 时 它会发出解锁电平 同时立即清除芯片中的敏感数据 注意此项功能的设 置与用户所采用的安全策略有关 否则容易引起用户不满 随机多线程 设计 多线程处理器结构 由硬件控制处理器 在每一个指令组随机有 N 个或多个线 程在执行 这样的处理器由多组寄存器 程序计数器 指令寄存器等组成 组 合逻辑采取随机改变的方式 自毁技术 在芯片的最外层沉积一层薄薄的金属 膜 并在其上可加 5 V 的电压 然后在最外面用塑料封装起来 这样 芯片就 好像穿了一层导电的衣服 当攻击者用精密机械探针插入芯片内企图探测里面 的密码时 将会引起短路从而烧毁芯片 边频攻击的安全设计策略 近年来 新兴的边频攻击技术因其非入侵式的攻击模式及较高的收益成本比而大行其道 尽管智能卡业界对于边频攻击的解决方案已有了越来越多的认识 然而许多智 能卡对于这类攻击仍毫无免疫力 应对边频攻击的安全策略基本分为 3 个层面 硬件 软件和应用层面 硬件级的反措施 采用平衡电路降低信号能量以及 设置金属防护以抑制电磁发射 执行并行随机处理来加大幅值噪声水平 例如 内部编程电压产生电路可用作并行噪声发生器 随处理中断引入时间噪声和不 同的时钟频率 对差分轨迹进行计算机处理的基础是轨迹可排列 在加入轨迹 之前处理器的工作步骤应是同步的 时间噪声会防止或至少妨碍轨迹很好地排 列 严格的电压 频率和温度检测以防止能量短脉冲干扰改变智能卡的环境 然而使用精确的传感器也会影响可靠性 并在某些终端中导致潜在的故障 软件层面的反措施 采用随机处理顺序来减少相关的信号 例如 算法中的平 行置换 诸如 DES 中的 S 盒 可依随机的顺序来完成 置换的数目重新排序 则可将一次置换产生的信号分解 利用随机延时和改变路径来增加计时噪声 计时噪声会妨碍轨迹的排列 并降低差分轨迹的质量 消除密钥值及中间媒介 值的时间依存性 用随机值来隐蔽中间媒介值 能量的泄露取决于一个数据中 的位数 如果在实际数据上加上随机数据 处理完之后再减去 那么传递的路 径将不会泄露有用的信息 不过 这种隐蔽将会导致传递函数的非线性性并产 生错误的结果 因此 这些函数需要仔细地重新设计以补偿由随机数据引起的 背离 通过检查关键的程序流向以及加密运算结果来实现故障监测 求两次运 算结果并加以比较是检测结果有效性的方法之一 但若两次都注入同样的错误 的则无法检测出来 因此最佳的方法是由结果反向运算求出其输入 并与原来 的输入进行比较 应用级的反措施 重设计数器 用于限制攻击者试探的次 数 连续 3 次 PIN 校验失败后自锁是防范差分能量分析的有效方法 限制加密 算法中输入输出的控制和可见度 如果只能选择部分输入 或只有部分算法的 结果返回 攻击者就无法完
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年合肥市和平小学第二小学教师招聘考试笔试试题(含答案)
- 曲流地理试题及答案
- 探索死亡测试题及答案
- 费用结算面试题及答案
- 校医院药品安全知识培训课件
- 栓绳安全知识培训内容课件总结
- 2025年建店培训合同范文
- 工会知识竞赛题库含参考答案
- 2025年初级育婴师执业资格模拟考试题库及答案
- 2024年设备监理师考试题库附答案【培优b卷】
- 2023中国暴雨强度公式汇总
- 天文仪器商业计划书
- 2023年建筑工程施工现场安全管理资料全套样本方案模板
- 妊娠期合并症-心脏病的护理(妇产科学课件)
- 急救护理学高职PPT完整全套教学课件
- AutoCAD计算机辅助设计标准教程(中职)PPT完整全套教学课件
- 安全生产费用使用范围及计量办法
- 肾脏疾病常见症状和诊疗
- 安全环保职业卫生消防题库及答案
- 金X绅士无双攻略
- 第八章 立体几何初步(章末复习) 高一数学 课件(人教A版2019必修第二册)
评论
0/150
提交评论