标签: encryption cryptography aes
我有一些密码学的背景,如果这是一个愚蠢的问题,请原谅我。有没有一种使用AES加密文本的安全方法,它使用相同的输入产生相同的输出?
我想要的是使用AES256或HMAC 256在外部分析提供商中存储电子邮件(这是公司要求)。但我需要能够最近破译它们并区分相同的电子邮件而不解密它们。我知道我可以用两个条目做到这一点,一个用AES,另一个用HMAC。但是我可以单独用AES做这个并且仍然安全吗?
答案 0 :(得分:0)
是和否。有一种称为ECB,"电子代码簿"的模式,它将始终为给定的输入(纯文本)块产生相同的输出(密文)。
但是,除非您只发送一次纯文本块,否则ECB不安全。起初,拦截加密邮件的对手无法破译它。但是,就像旧的时间码书一样,当他们继续监视加密的消息并将其与发送它们的上下文的知识相结合时,它们最终会破坏你的大部分代码。
一般不鼓励使用ECB。对于大多数消息传递应用程序,建议使用类似GCM的AEAD mode。