首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javax.crypto库中AAD的GCM模式

javax.crypto库中AAD的GCM模式
EN

Stack Overflow用户
提问于 2021-01-27 05:23:10
回答 2查看 72关注 0票数 0

对这个库和一般的GCM有一个问题。

我知道GCM模式可以加密和验证数据,或者只是验证它。使用javax库,如果我只想验证一条消息,我可以这样做:

cipher.updateAAD(AAD)

我的问题是,当我计算

cipher.doFinal(buffer)

buffer变成了什么?仅仅是密文块+ GCM身份验证标记吗?或者AAD本身现在实际上已经包含在buffer中了?

从文档中我真的不清楚:https://docs.oracle.com/javase/7/docs/api/javax/crypto/Cipher.html

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-01-27 05:35:51

如果要使用AES/GCM/NoPadding,则doFinal方法会在加密时生成ciphertext + tag。在解密AES/GCM模式时,预期也是如此。

如果你使用updateAAD,MAC (标签)会被更新,但是AAD本身的值并不包括在内(这甚至会破坏额外AAD的用途)。

票数 1
EN

Stack Overflow用户

发布于 2021-01-30 08:53:05

您是否有尝试使用AAD值的特定原因?

不确定你的经验水平或特定的用例,但如果你有任何问题,这里是我写的一篇关于AE的blog文章。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65909470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档