[密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第39篇]侧信道攻击和故障攻击有什么区别

这是一系列博客文章中最新的一篇,该文章列举了“每个博士生在做密码学时应该知道的52件事”:一系列问题的汇编是为了让博士生们在第一年结束时知道些什么。

侧信道攻击(Side-channel attacks, SCA)是一类攻击者尝试通过观察侧信道泄露来推测目标计算的信息。(例如,时间,功率消耗,电磁辐射,噪声等。)

故障攻击(Fault attacks, FA)是一类攻击,在这种攻击中,攻击者尝试利用错误计算的结果。错误可能导致程序或者设计错误(例如 Intel著名的FDIV错误),或者被攻击者诱导的错误(例如,能量故障,时钟故障,温度变化,离子束注入等)。"The Sorcerer’s Apprentice Guide to Fault Attacks’,https://eprint.iacr.org/2004/100.pdf"给了一个更实用的故障注入技术的全貌。

概括的说,SCA利用泄露计算和FA利用故障计算的结果就是两种方式的主要区别。这不是一个很有见解的答案,也许我们要讨论的问题是‘讨论一些在侧信道和故障攻击中的相似方法’。

我将会讨论在SCA和FA三种不同的子类:非入侵,半入侵,入侵。

非入侵攻击

一个被分类成非入侵的攻击,是当攻击者没有对目标有物理上的接触。我在下面给出了例子,但是还有单独的例子。

SCA:时间攻击是有争议的,它既是最适用的也是最少入侵的SCA向量。这部分上是因为时间攻击可以远程攻击,因为它们能被很容易的引入。考虑一个例如OpenSSL支持海量平台和一个完整的密码学套件这样的库。确保每个敏感计算都被编程进常数时间会让各个平台十分繁琐。除此之外,代码编译器使得这件事更加的困难,代码优化变成了一个艰巨的战斗。

FA:非入侵故障攻击不太常见,因为它需要错误行为来触发故障。我们可以使用前面提到的Intel FDIV漏洞来构建一个攻击,它将在每90亿个随机输入中返回一个不正确的除法结果。我似乎找不到任何具体攻击的证据,所以我们相信这是可能的。

半入侵攻击

如果对手与目标的物理接触有限,则攻击被归为半侵入性攻击。我在下面给出了单独的例子,但是还有更多的例子。

SCA:在一个能量分析攻击中,攻击者监视目标机器在计算秘密数据的能量消耗。在这种攻击的理论就是动态功耗(在某种程度上)将与正在处理的数据相关。如果对手可以近似这种关系,那么他们也可以对正在处理的数据进行推断。这可以说是半侵入性的,因为对手需要对目标设备进行电源轻击,而这并不总是可用的,因此对手需要修改目标。

FA:时钟和电源故障攻击的目的是通过改变目标环境来诱导目标设备的错误行为。考虑芯片的时钟输入,该时钟控制目标设备的运行速度。器件的最大时钟速率受目标的“关键路径”的限制,这是组合电路达到稳定状态所需的最长时间。违反此界限将触发设备中的竞争条件,从而导致未定义的行为。这使得glitch攻击有些不可预测,有时很难复制,但非常有效!
http://www.eurasia.nu/wiki/index.php/Xbox_360_Reset_Glitch_Hack

入侵攻击

入侵攻击指的是攻击者又无限的资源同时能接触目标。

SCA:探测SCAs使用对目标设备的数据总线的直接轻击,允许对手(几乎直接)读出总线上的任何信息。为了精确地锁定秘密数据,必须对目标进行完全的封装和仔细检查。

FA:探测FAs允许对手完全改变目标设备的行为。再一次,目标必须被完全解码并被精确地绘制出来以影响行为,但是一旦这样做了,对手就有能力重新连接目标,从而改变其操作。

总结

SCA和FA都已在实际设备上进行了演示,效果非常好。当然,针对这些攻击,我们设计了几种应对措施,但这些措施将在我们的“52件事”系列文章的后面出现。

转载链接:https://www.cnblogs.com/zhuowangy2k/p/12242774.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/424476.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面向对象:包装类、对象处理、类成员

包装类 Java是面向对象编程语言,但也包含了八种基本的数据类型,这八种基本的数据类型不支持面向对象的编程机制,基本的数据类型也不具备对象的特性:没有成员变量、方法被调用。所有类型的变量都继承Object类,都可以当成…

mysql-安装报错计算机中丢失MSVCR100.dll文件丢失

https://blog.csdn.net/weirdo_world/article/details/82393330

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]40一般来说SPA和DPA的区别是什么

这是一系列博客文章中最新的一篇,该文章列举了“每个博士生在做密码学时应该知道的52件事”:一系列问题的汇编是为了让博士生们在第一年结束时知道些什么。 电磁(Electronmagnetic, EM)功率分析攻击被划分成两种类型的攻击,简单功率分析(SPA)或者差分功率…

LDAP入门

LDAP入门 首先要先理解什么是LDAP,当时我看了很多解释,也是云里雾里,弄不清楚。在这里给大家稍微捋一捋。首先LDAP是一种通讯协议,LDAP支持TCP/IP。协议就是标准,并且是抽象的。在这套标准下,AD&#xff08…

关于Java中的HashMap

1 容量总是2次幂 /*** Returns a power of two size for the given target capacity.*/static final int tableSizeFor(int cap) {int n cap - 1;n | n >>> 1;n | n >>> 2;n | n >>> 4;n | n >>> 8;n | n >>> 16;return (n <…

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]41所有的侧信道分析都是能量分析吗

这是一系列博客文章中最新的一篇&#xff0c;该文章列举了“每个博士生在做密码学时应该知道的52件事”:一系列问题的汇编是为了让博士生们在第一年结束时知道些什么。 侧信道攻击(SCA)利用在密码算法的物理实现上下文中获得的信息&#xff0c;而不是针对理论弱点的经典密码分析…

spring学习(22):分层架构

pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 …

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]42蒙哥马利乘法,哪里泄漏侧信道路吗?

这是一系列博客文章中最新的一篇&#xff0c;该文章列举了“每个博士生在做密码学时应该知道的52件事”:一系列问题的汇编是为了让博士生们在第一年结束时知道些什么。 看看你的C代码为蒙哥马利乘法&#xff0c;你能确定它可能在哪里泄漏侧信道路吗? 几个月前(回到3月份)&…

spring学习(23):基础组件

Spring中的Component是一个通用注解&#xff0c;可用于任何bean对象&#xff0c;还可以细分为&#xff1a;Repository、Service、Controller&#xff0c;分别对应于DAO类&#xff08;持久层&#xff09;、Service类&#xff08;服务层&#xff09;、Controller&#xff08;控制…

Golang tcp转发 remoteAddr错误

Golang tcp 转发 第一版本 accept获取的Conn里的localAddr做为源地址&#xff0c;remoteAddr来做为目的地址 // tcpForward package mainimport ("fmt""net""os" )func TcpForward(port int) {lisPort : fmt.Sprint(":", port)listen,…

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]43 为AES 对抗侧信道攻击的防御

这是一系列博客文章中最新的一篇&#xff0c;该文章列举了“每个博士生在做密码学时应该知道的52件事”:一系列问题的汇编是为了让博士生们在第一年结束时知道些什么。 为AES描述一些基础的&#xff08;可能无效&#xff09;的对抗侧信道攻击的防御 侧信道防御&#xff1a;为什…

深度学习02——Softmax、DNN、WideDeep Model

说明&#xff1a;本系列是七月算法深度学习课程的学习笔记 1 背景介绍 深度学习在图片上的应用&#xff1a;功能上讲&#xff1a;图像分类和物体识别&#xff1b;应用上&#xff1a;可以用来分类图片&#xff1a;白菜形状的玉器摆件、白菜、大白菜&#xff1b;图片搜索&#…

扩展 KMP(模板) 洛谷P5410

题目&#xff1a;https://www.luogu.org/problemnew/show/P5410 博客 #include<bits/stdc.h>using namespace std;#define ll long long #define mem(a,b) memset(a,b,sizeof(a)) #define inf 0x3f3f3f3fconst int maxn1e510;int nxt[maxn],extend[maxn];int q;string s,…

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]44在ECC密码学方案中基本的防御方法

这是一系列博客文章中最新的一篇&#xff0c;该文章列举了“每个博士生在做密码学时应该知道的52件事”:一系列问题的汇编是为了让博士生们在第一年结束时知道些什么。 在ECC密码学方案中&#xff0c;描述一些基本的防御方法 在上篇文章中我们提到了在ECC中对抗侧信道攻击的一…

第六十五期:央行万字工作论文:区块链能做什么、不能做什么?

本文从经济学角度研究了区块链的功能。首先&#xff0c;在给出区块链技术的经济学解释的基础上&#xff0c;归纳出目前主流区块链系统采取的“Token 范式”&#xff0c;厘清与区块链有关的共识和信任这两个基础概念&#xff0c;并梳理智能合约的功能。 作者&#xff1a;徐忠 邹…

[dp]leetcode 198. House Robber

输入&#xff1a;一个数组nums&#xff0c;每一个元素nums[i]表示第i个房间的价值。 输出&#xff1a;一个抢劫犯能抢到又不会被警察发现的最大价值。 规则&#xff1a;如果抢劫犯抢了相邻房间&#xff0c;那么报警装置就会触发&#xff0c;警察会得到通知。 分析&#xff1a;我…

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]45.描述一些对抗RSA侧信道攻击的防御方法

这是一系列博客文章中最新的一篇&#xff0c;该文章列举了“每个博士生在做密码学时应该知道的52件事”:一系列问题的汇编是为了让博士生们在第一年结束时知道些什么。 为了让这篇文章保持简单&#xff0c;我们将会我们将讨论所谓的“香草”RSA(在加密中不使用随机性)&#xff…

第六十六期:运维专家写给运维工程师的6条人生忠告

最近由于新公司需要招聘运维人员&#xff0c;所以接触了大量应聘者&#xff0c;基本都是85后的年轻人。在他们身上看到年轻的活力&#xff0c;也看到浮躁社会留下的烙印。作为一个奔5的老IT运维人员&#xff0c;真心希望他们少走自己的弯路&#xff0c;能够成就自己的一番事业&…

深度学习03——CNN

说明&#xff1a;本系列是七月算法深度学习课程的学习笔记 文章目录1神经网络与卷积神经网络1.1 深度神经网络适合计算机视觉处理吗1.2CNN的结构1.2.1 数据输入层1.2.2 卷积层1.2.3 激励层1.2.3 池化层1.2.4 全连接层1.3CNN的训练算法1.4CNN的优缺点2正则化与Droupout3典型结构…

第六十八期:做中台找死,不做中台等死?

今年参加了云栖大会&#xff0c;作为中台的践行者&#xff0c;我也更关注中台架构实施的行业状况&#xff0c;学习了其他公司中台的思想和经验。 作者&#xff1a;谭明智 今年参加了云栖大会&#xff0c;作为中台的践行者&#xff0c;我也更关注中台架构实施的行业状况&#…