Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
加密短消息(小于块大小)时使用 CTR 模式的 AES 是否安全?一个例子是加密 SSN 或信用卡号码。我看到了关于此的相互矛盾的信息,所以我想澄清一下。谢谢
消息的长度是否泄漏信息?如果您知道消息是“是”或“否”,那么未填充的密文的长度会泄露大量信息。如果它类似于 SSN,则未填充的密文不会泄漏任何信息,除非底层明文可能是 SSN。
使用 AES(一种块密码),即使您不使用所有密钥流,您也将始终生成至少一个块的密钥流。将短消息填充到一个块几乎没有处理开销。当然,存储开销会更大,因此您需要根据您的具体要求做出决定。
简而言之,未填充的 CTR 模式对于 SSN 来说是安全的,因为它们都是九位数长,所以密文长度不会泄露任何有用的信息。