我知道,针对Padding Oracle攻击的最佳解决方案是将HMAC包裹并附加到完整的加密消息上。但是还有哪些其他解决方案?如果我的数据如此之大,以至于我需要流式传输呢?我可以在最后检查HMAC,但是我无法负担两次加载整个文件并首先检查HMAC,然后将其流式传输并解密给用户?

有不同的方式吗?

如果我使用AES_CBC(ZLIB(数据)),攻击者还可以填充甲骨文攻击吗?如果压缩数据最终被弄乱,则Zlib会发出错误。攻击者也可以使用Zlib的错误来获取一点点信息吗?

有帮助吗?

解决方案

填充甲骨文攻击的建议修复程序是加密然后加密MAC。这意味着您可以将密码分解为方便的块(例如4096字节)和每个单独的Mac。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top