Side Channel,中文称为“边信道”,是指通过加密软件或硬件运行时产生的各种泄漏信息来获取密文信息的攻击方式。在狭义上,边信道攻击特指针对密码算法的非侵入式攻击,通过分析加密电子设备在运行过程中的边信道信息泄露来破解密码算法。常见的边信道攻击包括计时攻击、能量分析攻击、电磁分析攻击等12。
边信道攻击的类型
- 计时攻击:通过分析加密设备运行时的时序信息来获取密文信息。
- 能量分析攻击:包括简单功耗分析(SPA)和差分功耗分析(DPA),通过分析加密设备运行时的功耗信息来获取密文信息。
- 电磁分析攻击:通过分析设备运行时产生的电磁辐射来获取密文信息。
- 错误攻击:通过制造运行错误来获取密文信息2。
边信道攻击的背景和历史
边信道攻击的研究始于1996-1999年,传统的分组密码分析技术局限于算法的数学结构,而边信道攻击通过利用加密设备在运行过程中的额外信息(如功耗、电磁泄漏等),其攻击效果显著,给密码设备带来了严重的威胁1。
实际应用中的例子
例如,在英特尔的SGX(Software Guard Extensions)技术中,边信道攻击被用来执行缓存计时攻击和AsyncShock攻击。缓存计时攻击通过固定两个内核线程到共享相同物理内核和L1缓存的逻辑内核,利用RDPMC指令完成对高速缓存行的探测。AsyncShock攻击则利用SGX Enclave中的同步漏洞,通过中断线程和删除页面的读取和执行权限来进行攻击3。
参考内容:Introduction to Modern Cryptography --3rd edition by Jonathan Katz et al., Chapter 7, Section 7.2.6 Differential and Linear Cryptanalysis
对于分组密码(SPN->Feistel Network->DES->3DES->AES),相对复杂的结构会使得分析更加复杂。但是我们要避免一个误区:并不是将分组密码设计得越复杂,其就越难被攻破。与期望的相反,构建一个安全的分组密码往往很难,但攻破一个分组密码(无论它有多难),往往是相对容易的多的。所以这提醒我们,非专业人士不要轻易尝试构造一个新的分组密码,而是利用现有的,被经过时间证明的分组密码来构建加密策略或是新的分组密码(3DES就是一个利用DES构造分组密码的很好例子)。
本文将介绍两种密码分析工具——差分密码分析和线性密码分析,来浅略地接触一下高级密码分析,同时再次提醒:“在设计新的、安全的分组密码时,需要谨慎选择构造其的组件”。
差分密码分析
这种技术是在上世纪80年度末由Biham和Shamir等人提出,并在1993年用于攻击DES。这种分析/攻击方式的思想在于:将特定的输入差异和对应的输出差异列成表格,寻找其中期望概率大于基于随机置换发生的概率的输入输出差异。
简单来说,如果有一个随机置换
标签:攻击,差分,密码,分组,Delta,mixing,side,channel From: https://www.cnblogs.com/Janly/p/18668162