20179214 2017-2018-2 《密码与安全新技术》第四次作业

课程:《密码与安全新技术》
班级: 201792
姓名: 刘胜楠
学号:20179214
上课教师:谢四江
上课日期:2018年4月26日
必修/选修: 选修

分组密码的测信道分析

概念

美国科学家Paul Kocher 1996年提出的
目前测信道攻击的防御手段已经列入到各种安全准则里面
边信道攻击(side channel attack 简称SCA),又称侧信道攻击:针对加密电子设备在运行过程中的时间消耗、功率消耗或电磁辐射之类的侧信道信息泄露而对加密设备进行攻击的方法被称为边信道攻击。这类新型攻击的有效性远高于密码分析的数学方法,因此给密码设备带来了严重的威胁。

基本原理

通常,密码算法(或密码方案)在实际应用中都会实现在具体的硬件平台上,形成密码模块、密码芯片、密码系统等,从而完成所需的密码功能,用于满足特定的信息安全需求。这些具备密码功能的模块(芯片或系统)统称为密码实现,它们均实现在特定的数字电路中,而数字电路单个基本单元只有0和1两种状态。我们以装不同水量的玻璃杯发声不同为例说明如何利用数字电路的状态特征进行密码破解。如下左图中ABCD四个杯子中水量不同,仅通过区分敲击四个杯子所发出声音的不同即可轻易分辨出ABCD中的单个杯子。因此,可以用右图中“空杯”和“满杯”来分别模拟数字电路中的“0”和“1”,数字电路执行操作的过程可以看作杯子中水不断清空和装满的过程。因而显然,0à1和1à0两种状态变换需要花更多的“时间”和“能量”,也会产生其他潜在“影响”。换句话说,如果我们能够有效检测和测量这种“时间”和“能量”的变化,就能够推断出所执行的操作(或数据),即推断出密码实现运行过程中的操作(或数据),从而能够进行密码破解。这类通过密码实现运行过程中的“时间”、“能量”或其他类似信息进行密码分析的方法称为侧信道攻击。

数字电路状态特征与侧信息的对应关系

局限性

1.主要集中在智能卡为代表的资源受限的一类密码集成电路
2.许多攻击方法依赖算法实现
3.集成电路工艺水平的提高使得攻击的难度不断增大。如反向工程(reverse engineering)在深亚微米工艺条件下越来越困难。

测信道分析的半导体物理基础

常见的密码芯片的内部电路基于CMOS工艺的,逻辑门电路是其基础元件
密码芯片的所有运算都是通过门电路的状态变化来实现的,逻辑门电路状态的变化在物理上就体现为电流的变化,从而消耗功率

  1. 电流变化
  2. 算法处理中时间与密钥信息的相干性
  3. 密码芯片中各金属层和逻辑门电路在外界条件刺激下的响应构成错误诱导分析的物理基础。

数据于两方面有关: 汉明距离 汉明重量
汉明距离:电压
汉明重量是汉明距离初始状态全为0的特殊状态
汉明重量的不同为什么是在某些点上面
在算法的某些时间里面与数据是无关的。
芯片的功耗P与数据逻辑能的数学模型可表述为
P=f(data)+noise

测信道分析分类

对密码芯片的攻击分类

按照物理程度损坏程度
非侵入式
侵入式
半侵入式

按照干扰正常攻击
主动攻击
被动攻击

时间攻击
简单功耗分析
差分功耗分析
利用数理统计的方法将需要的某种功耗差异放大

相关系数
相关性功耗分析

模板攻击
特征化阶段:找到最相关的点并建立模板
分析阶段:把这些模板与给定的功耗曲线进行匹配,匹配度最大的模板表明得到正确密钥。
噪声分布分为多元正态分布。
建立模板的步骤:

  1. 对每个密钥建立一个模板,在使用这个密钥进行加密时测量边信道信息获取对应该密钥的数据。需要测试多次,使得结果更加精准。
    模板里面的内容:均值向量 噪声的协方差矩阵
  2. 至此可以为每一个密钥定义一个2元组T,该二元组由均值矩阵M和协方差矩阵COV 构成。

功耗分析分类

将能量模型分为四类:Nominal Ordinal Proportional,Direct

攻击中对噪声的处理
对齐
滤波
压缩

传统密码分析vs侧信道攻击

实际上,密码系统的安全性不仅取决于密码算法本身的数学安全性,更严重依赖于密码实现的物理安全性。传统密码分析主要用于分析密码算法的数学安全性,本质上是一类针对密码算法本身及各密码组件各种数学属性的理论分析方法,包括穷举攻击、差分分析、线性分析、代数分析等方法。与之相反,侧信道攻击主要面向密码实现的物理安全性,采用能量分析攻击、电磁分析攻击、计时攻击等一系列方法对其实现安全性进行分析。

从实际攻击效果上看,侧信道攻击的攻击能力远远强于传统密码分析方法,因而也对密码实现的实际安全性构成了巨大的威胁。以穷举攻击为例,如果1013次/s的速度进行解密运算,破解AES-128需要5.3x1017年(见下表),而针对无保护AES-128的智能卡实现,典型的差分能量攻击方法能够在30秒之内完全恢复其主密钥。

延伸阅读

不同的图像传感器
是组成数字摄像头的重要组成部分。根据元件的不同,可分为CCD(Charge Coupled Device,电荷耦合元件)和CMOS(Complementary Metal-Oxide Semiconductor,金属氧化物半导体元件)两大类。

区别

CMOS与CCD的区别:
1)成像过程,CCD与CMOS图像传感器光电转换的原理相同,他们最主要的差别在于信号的读出过程不同;由于CCD仅有一个(或少数几个)输出节点统一读出,其信号输出的一致性非常好;而CMOS芯片中,每个像素都有各自的信号放大器,各自进行电荷-电压的转换,其信号输出的一致性较差。但是CCD为了读出整幅图像信号,要求输出放大器的信号带宽较宽,而在CMOS 芯片中,每个像元中的放大器的带宽要求较低,大大降低了芯片的功耗,这就是CMOS芯片功耗比CCD要低的主要原因。尽管降低了功耗,但是数以百万的放大器的不一致性却带来了更高的固定噪声,这又是CMOS相对CCD的固有劣势。
2)集成性,从制造工艺的角度看,CCD中电路和器件是集成在半导体单晶材料上,工艺较复杂,世界上只有少数几家厂商能够生产CCD晶元,如DALSA、SONY、松下等。CCD仅能输出模拟电信号,需要后续的地址译码器、模拟转换器、图像信号处理器处理,并且还需要提供三组不同电压的电源同步时钟控制电路,集成度非常低。而CMOS是集成在被称作金属氧化物的半导体材料上,这种工艺与生产数以万计的计算机芯片和存储设备等半导体集成电路的工艺相同,因此生产CMOS的成本相对CCD低很多。同时CMOS芯片能将图像信号放大器、信号读取电路、A/D转换电路、图像信号处理器及控制器等集成到一块芯片上,只需一块芯片就可以实现相机的的所有基本功能,集成度很高,芯片级相机概念就是从这产生的。随着CMOS成像技术的不断发展,有越来越多的公司可以提供高品质的CMOS成像芯片,包括:Micron、 CMOSIS、Cypress等。
3)速度,CD采用逐个光敏输出,只能按照规定的程序输出,速度较慢。CMOS有多个电荷—电压转换器和行列开关控制,读出速度快很多,大部分500fps以上的高速相机都是CMOS相机。此外CMOS 的地址选通开关可以随机采样,实现子窗口输出,在仅输出子窗口图像时可以获得更高的速度。
4)噪声,CCD技术发展较早,比较成熟,采用PN结或二氧化硅(SiO2)隔离层隔离噪声,成像质量相对CMOS光电传感器有一定优势。由于CMOS图像传感器集成度高,各元件、电路之间距离很近,干扰比较严重,噪声对图像质量影响很大。随着CMOS电路消噪技术的不断发展,为生产高密度优质的CMOS图像传感器提供了良好的条件。

CCD,英文全称:Charge-coupled Device,中文全称:电荷耦合元件。可以称为CCD图像传感器,也叫图像控制器。CCD是一种半导体器件,能够把光学影像转化为数字信号。 CCD上植入的微小光敏物质称作像素(Pixel)。一块CCD上包含的像素数越多,其提供的画面分辨率也就越高。CCD的作用就像胶片一样,但它是把光信号转换成电荷信号。CCD上有许多排列整齐的光电二极管,能感应光线,并将光信号转变成电信号,经外部采样放大及模数转换电路转换成数字图像信号。
CMOS制造工艺也被应用于制作数码影像器材的感光元件,尤其是片幅规格较大的单反数码相机。在数字影像领域,CMOS作为一种低成本的感光元件技术被发展出来,市面上常见的数码产品,其感光元件主要就是CCD或者CMOS,尤其是低端摄像头产品,而通常高端摄像头都是CCD感光元件。

学习感悟

关于现在网络攻击,我认为可以分为对软件的攻击和对硬件的攻击,对于软件的攻击,像是渗透之类的的方式,对于硬件的攻击,今天说到的测信道攻击算是一种,很多情况下,一个事情的完成依赖与硬件的要求,所以对于硬件的安保护是非常重要的。
1.通过CPU缓存来监视用户在浏览器中进行的快捷键及鼠标操作
对最新型号的英特尔CPU有效,如Core i7;还需运行在支持HTML5的浏览器上。带有恶意JS的网页在受害者电脑上执行后,会收集与之并行的其它进程的信息,有了这个信息,攻击者可以绘制内存对按下按键和鼠标移动的反应情况,进而重塑用户使用情景。
2.“听译”电子邮件密钥
通过智能手机从运行PGP程序的计算机中“听译”密钥。这项最新的密钥提取攻击技术,能够准确地捕捉计算机CPU解码加密信息时的高频声音,并提取密钥。
3.非智能手机+恶意软件+目标PC
从采购供应链下手,将特制小体量难以检测的恶意软件植入电脑,该软件会强制计算机的内存总线成为天线,通过蜂窝频率将数据无线传输到手机上。攻击者将接受和处理信号的软件嵌入在手机的固件基带中,这种软件可以通过社会工程攻击、恶意App或者直接物理接触目标电话来安装。
4.用手触碰电脑即可破解密码
电脑CPU运算时造成“地”电势的波动,用手触碰笔记本电脑的外壳,接着再测量释放到皮肤上的电势,然后用复杂的软件进行分析,最终得到计算机正在处理的数据。例如:当加密软件使用密钥解密时,监测这种波动就可得到密钥。
5.智能手机上的FM无线电功能来拾取电脑显卡发出的无线电波
6.利用KVM入侵物理隔离设备
使用连接到互联网的设备下载恶意软件,然后将其传递给设备的内存。之后透过KVM漏洞传播给使用KVM操控的其它多台设备,实现入侵物理隔离的系统,并感染更敏感的设备。最后恶意程序再经KVM反向将窃取到的数据传递到互联网。
7.利用一个面包(皮塔饼)偷取计算机密钥
无屏蔽铜线圈、电容
8.通过热量窃取电脑信息
9.其它方法
分析设备在解密过程中的内存利用率或放射的无线电信号,窃取密钥。

posted on 2018-05-08 20:06  zero_to_one  阅读(365)  评论(0编辑  收藏  举报