OpenSSL ciphers -v命令输出字段含义解析咨询
OpenSSL
ciphers -v 输出字段解读 你执行的openssl ciphers -v命令输出的每行对应一个符合筛选规则的TLS加密套件,完整解读规则如下:
字段含义说明
- 第一列:加密套件的IANA标准名称,命名规则通常为「密钥交换算法-认证算法-对称加密算法-摘要算法」
- 第二列:该加密套件支持的最低TLS协议版本,你输出里的
TLSv1.2表示仅支持TLS 1.2及以上版本 - Kx:全称Key Exchange,密钥交换算法,作用是定义客户端和服务端协商生成会话对称密钥的逻辑,常见取值包括RSA、DH、ECDH等,后缀带E的变种(如ECDHE、DHE)表示临时密钥交换,支持前向保密,即使长期私钥泄露也不会影响历史会话的解密
- Au:你已知的认证方式,用于验证服务端(可选客户端)身份的合法性,常见取值包括RSA、ECDSA、DSS等
- Enc:你已知的对称加密算法,用于加密实际传输的业务数据,括号内的数字表示密钥长度,GCM、CCM等后缀表示采用了AEAD加密模式
- Mac:全称Message Authentication Code,消息认证码算法,作用是校验传输数据的完整性、防止数据被篡改。如果加密算法本身是AEAD模式(如AES-GCM),则无需单独的MAC算法,该字段会显示为AEAD;其余场景显示的是用于生成MAC的哈希算法,比如SHA384、SHA256等
示例解读
以你输出的第一行为例:
ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD
解读结果为:
该加密套件使用ECDHE作为密钥交换算法、RSA作为身份认证算法、256位密钥的AES-GCM作为对称加密算法、SHA384作为伪随机函数的摘要算法;最低支持TLS 1.2版本;密钥交换逻辑采用ECDH、身份认证用RSA、AES-GCM属于AEAD加密模式自带完整性校验,无需额外MAC算法。
你执行的命令说明
你输入的openssl ciphers -v 'TLSv1.2:kRSA:!eNULL:!aNULL'筛选规则为:
- 仅列出支持TLS 1.2版本的加密套件
- 仅列出密钥交换使用RSA相关逻辑的套件
!eNULL排除无加密逻辑的不安全套件!aNULL排除无身份认证逻辑的不安全套件-v参数输出完整字段详情
内容的提问来源于stack exchange,提问作者atulya
相关产品推荐
相关产品推荐

