我对使用AES-GCM很感兴趣,在网上阅读了几个小时之后,我还有几个问题:
什么才能保证ICV的存在,它是否仅仅是完整的?如果我不需要它作为我的目的,我可以省去它,并仍然有安全加密的数据在我的频道?(如果完整性未得到验证,我的数据包将被丢弃)
我们的目的只是对数据进行加密,这样就没有人能得到信息了。
谢谢
发布于 2017-03-31 14:44:21
ICV是完整性检查值(请注意,它也可能意味着初始链接值)。对于GCM模式,您不能离开。
我不知道你的意思是什么:“如果完整性没有被验证,我的包无论如何都会被丢弃”。GCM使用提供加密完整性的身份验证标记。除非您有另一种添加加密完整性的方法,否则不能跳过验证标记。
如果您确实有另一个身份验证标记,比如密文上的HMAC,那么您不需要GCM。你可以用AES-CTR模式代替。除了初始化过程中的一些变化外,在GCM中使用了AES-CTR模式来提供机密性。
请注意,GCM和CTR模式会直接泄漏明文大小和可能的时间信息。这是要解决的问题--或者不解决--在协议层面。
https://crypto.stackexchange.com/questions/45182
复制相似问题