物理安全基础:智能卡物理结构、芯片封装、安全模块与协处理器

做侧信道攻击这么多年,我经常被问到同一个问题:
「攻击智能卡,是不是只要拿到卡就能破解?」
嗯,答案没那么简单。你得先搞清楚——你面对的这个黑盒子,里面到底长什么样

这一章,我们就来拆开智能卡,看看它的物理底牌。

智能卡的物理结构:从塑料片到芯片

你手里那张银行卡,看着就是块塑料片。
但里面其实藏着一整套微型计算机系统。

智能卡的核心结构,我习惯分成三层来看:

  • 基片(Substrate):就是那张PVC或PET材质的塑料卡。厚度约0.76mm,国际标准ISO 7810规定的。
  • 芯片模块(Chip Module):嵌入在基片上的微型集成电路。通常用环氧树脂封装。
  • 接触/非接触接口:接触式有6或8个触点,非接触式靠天线线圈供电通信。

我记得第一次拆卡时,用显微镜一看,
触点下面那层金线细得跟头发丝似的。
当时我就想:这玩意儿,稍微刮一下可能就废了。

核心要点:智能卡本质上是一台防篡改的微型计算机。它的物理结构决定了攻击者能接触到什么、不能接触到什么。

芯片封装:保护层还是攻击入口?

芯片封装,说白了就是把裸片(Die)包起来。
但智能卡的封装,跟普通芯片不太一样。

常见的封装方式有:

封装类型 特点 安全等级
COB(板上芯片) 裸片直接粘在基板上,金线键合 中等
MCM(多芯片模块) 多个裸片封装在一起 较高
层压封装 芯片嵌入多层塑料中

你想想看,封装层越多,攻击者想探到芯片内部就越难。
但反过来,封装层也带来了新的攻击面——
比如,我曾经遇到过一种攻击手法:
用激光从封装侧面打进去,干扰内部总线信号。

注意:封装不是万能的。很多所谓的「安全封装」,在聚焦离子束(FIB)面前就是个摆设。FIB可以精确切割封装层,露出内部走线。

安全模块:智能卡的「保险柜」

智能卡里最值钱的东西,都藏在安全模块里。
比如密钥、证书、生物特征模板。

安全模块通常包含:

  • 安全存储器:存放敏感数据,外部无法直接读取
  • 访问控制逻辑:谁可以读、谁可以写,都由硬件控制
  • 防篡改检测:温度、电压、频率异常时,自动擦除密钥

我建议你记住一个原则:
安全模块的「安全」,不是靠软件实现的,而是靠硬件物理隔离。

举个例子:
普通CPU里,所有程序共享内存。
但智能卡的安全模块,有自己的专用RAM和ROM。
外部程序根本访问不到这些区域。

为什么会这样?
因为设计者早就料到——软件漏洞防不胜防,不如从物理上切断路径。

实战技巧:做侧信道攻击时,我们最关心的就是安全模块的功耗特征。因为密钥运算通常在这里完成,功耗曲线会留下明显「指纹」。

协处理器:加速器也是泄密者

智能卡里除了主CPU,通常还有几个协处理器。
它们专门干一件事:加速密码运算

常见的协处理器有:

  • DES/AES协处理器:对称加密专用
  • RSA/ECC协处理器:非对称加密专用
  • 真随机数发生器(TRNG):生成随机密钥

嗯,这里要注意:
协处理器虽然快,但它的功耗特征非常明显。
因为密码运算通常是「固定模式」的——
比如AES的10轮迭代,每一轮的功耗波形都差不多。

我做过一个项目,目标卡用的是硬件AES协处理器。
第一次采集功耗曲线时,我一眼就认出了那10轮波形。
说白了,协处理器就像个「广播员」,把密钥信息通过功耗泄露了出来。

知识体系总览

下面这张图,是我自己整理的智能卡物理安全知识框架:

智能卡物理安全 物理结构 芯片封装 安全模块 基片(塑料卡) 芯片模块 接触/非接触接口 COB封装 MCM封装 层压封装 安全存储器 访问控制逻辑 防篡改检测 协处理器(密码加速) AES/DES协处理器 RSA/ECC协处理器 真随机数发生器

这张图把智能卡物理安全拆成了四个维度:
物理结构、芯片封装、安全模块、协处理器。
每个维度下,都有对应的攻击面和防护手段。

小结

这一章我们聊了智能卡的物理底牌:

  • 它不是什么魔法,就是一台微型计算机
  • 封装层数越多,物理攻击越难,但并非不可能
  • 安全模块靠物理隔离保护密钥,不是靠软件
  • 协处理器虽然快,但功耗泄露也更明显

我个人习惯,每次拿到一张新卡,
第一件事就是拆开看封装、找安全模块位置、摸清协处理器型号。
这些信息,直接决定了后续攻击方案怎么选。

下一章,我们会深入功耗分析的基础——
不过在那之前,建议你先找张废卡,用显微镜看看触点下面的世界。


公众号:蓝海资料掘金营,微信deep3321