加密与解密共享秘密
对称加密中,同一秘密密钥用于加密和解密;这与公开公钥、保密私钥的分工不同。共享可以发生在不同通信参与者之间,也可由同一主体在存储和读取时使用,并不要求一定有两个人同时在线。
密钥必须只交给获准使用相关数据或服务的参与者。算法公开并不妨碍这种分工,但把密钥连同密文放在同样可读的位置,会破坏需要依靠秘密密钥获得的保护;隐藏算法名称不能代替保管密钥。
参考:[1]
不只有加密这一种服务
对称算法还可生成消息认证码、派生其他密钥或保护被封装的密钥。各类任务的输入、输出和安全目标不同:认证码不隐藏正文,纯加密方案也不能仅因用了秘密密钥就自动视为具备消息完整性。
认证加密把保密与完整性放入明确的组合。实际使用还需遵守相应模式的nonce、输入长度与用量要求;仅选择一个分组密码名称,而不规定如何处理多块消息和验证结果,尚不是完整通信方案。
与公钥机制配合并分离用途
混合系统常用非对称机制建立或传递密钥材料,再用对称机制处理较多应用数据。优势来自职责配合,不能概括成对称算法过时,也不能把公钥分发的方便误当成后续共享秘密不必保护。
不同方向、阶段或用途通常需要按协议分离密钥。NIST密钥管理指南一般要求密钥限定用途,以减少跨机制相互影响及泄露扩散;认证加密等经过专门定义的组合另有自己的使用约定,不应随意拆装或复用。