对称密钥密码学
对称密钥加密(Symmetric-key cryptography)是指使用相同的密钥进行加密和解密的密码算法。该密钥通常被称为“对称密钥”或“秘密密钥”。
这通常与公钥加密(public-key cryptography)相对应,公钥加密使用成对生成的密钥,其中一个密钥进行的变换只能由另一个密钥来逆转。
对称密钥算法在正确使用时应该是安全的,并且效率很高,因此它们可以用于加密大量数据,而不会对性能产生负面影响。
目前使用的大多数对称密钥算法是块密码(block ciphers):这意味着它们一次加密一个数据块。每个数据块的大小是固定的,由算法决定:例如,AES 使用 16 字节的数据块。块密码总是与模式(mode)一起使用,该模式指定了如何安全地加密比数据块大小更长的消息。例如,AES 是一种密码,而 CTR、CBC 和 GCM 都是模式。使用不合适的模式或错误地使用模式,可能会完全破坏底层密码提供的安全性。
另见
- Web Crypto API
- SubtleCrypto 支持的算法
- 相关词汇表术语