当我们使用FPGA进行文件、容器或全磁盘加密时,需要输入一个密码用于加密/解密过程。如何防止侧通道攻击窃取被盗FPGA的密码?
发布于 2014-02-12 15:01:39
"FPGA“在这里主要是一种红鲱鱼。
当系统使用上述元素时,侧信道攻击试图利用机密数据元素的泄漏。泄漏可以发生在各种物理方式,如能源消耗,处理时间,发射无线电波.
如果:
那么,即使设备受到攻击者的物理控制,侧通道攻击也不适用:攻击者将无法使设备泄漏秘密,因为设备只会拒绝运行可能泄漏的操作。
然而,这一切都与一些不一定属实的核心假设有关:
至于开放源码的FPGA实现,它们不像它们的软件实现那样广泛,但也有一个日益增长的趋势。例如,请参阅OpenCores,它试图聚合有关FPGA和ASIC可用开源设计的信息。
发布于 2014-02-12 18:48:45
我想知道密码到底是如何与加密本身起作用的。你(至少)在这里有两个选择。
这不会给攻击者带来任何好处。如果他偷了设备,解密密钥和密码一样未知。因此,根本不可能泄露解密密钥,因为它根本不在设备中。
这里,解密密钥存储在设备中。所以有办法提取它。首先,你可以用酸液或其他东西打开设备,然后读出钥匙。这显然不是太简单。
根据密码检查的实现,还可能恢复密码。如果您将Byte与Byte进行比较,则可能会发生定时攻击。
考虑到没有这样的“启动密码”,拥有物理访问权限的攻击者只需打开FPGA电源,并监听密码硬件操作就可以破解密钥?
这可能根本没有必要。根据实现的不同,让设备加密零来恢复用于加密的衬垫可能就足够了。
当设备“解锁”时,可以通过侧通道攻击恢复密钥。如果实现是在没有保护的情况下完成的,那么简单或差分的功率分析就可以逐位或逐字节地恢复密钥。
关于侧信道攻击,在FPGA中用于保护数据的对称算法和非对称算法之间是否存在偏好?
没有偏好。侧通道攻击可以恢复两种类型的密钥。
是否有开放源代码参考实现可供FPGA审查源代码?
据我所知不是。
您能否推荐一个关于FPGA密码实现的网站或社区,无论是对称算法还是非对称算法。
其实没有。防侧通道实现是您自己业务的良好起点。它们很有价值。
https://security.stackexchange.com/questions/51309
复制相似问题