ssl - 哪些 TLS/SSL 密码套件被认为是弱/强?
问题描述
我正在寻找有关 TLS/SSL 密码套件强度的信息。
例如,在 chrome 上按 F12 时,会出现一个包含密码协议和套件信息的安全概览选项卡。
Chrome 安全选项卡示例:
现在我对如何知道哪个密码套件认为强或弱很感兴趣。是关键力量吗?算法?我找不到清楚的东西。
谢谢是提前。
解决方案
算法和长度都需要考虑。某一时刻的强弱会随着时间的推移而改变,这也取决于所使用的软件,以及您需要支持的客户类型。
- https://wiki.mozilla.org/Security/Guidelines/OpenSSH
- https://stribika.github.io/2015/01/04/secure-secure-shell.html尽管名称中有日期,但它会保持最新并解释选择。
- https://weakdh.org/sysadmin.html
因此,例如,如今 AES-GCM 在 TLS 1.2 中受到青睐
即将成为 RFC 的 TLS 1.3 做了很多工作来改进允许的算法列表:支持的对称算法列表已被删除所有被认为是遗留的算法。剩下的都使用带有关联数据的认证加密 (AEAD) 算法。
新的默认(强制实施)算法是:
在没有另外指定的应用程序配置文件标准的情况下,符合 TLS 的应用程序必须实现 TLS_AES_128_GCM_SHA256 [GCM] 密码套件,并且应该实现 TLS_AES_256_GCM_SHA384 [GCM] 和 TLS_CHACHA20_POLY1305_SHA256 [RFC7539] 密码套件。(见附录 B.4)
符合 TLS 的应用程序必须支持带有 rsa_pkcs1_sha256(用于证书)、rsa_pss_rsae_sha256(用于 CertificateVerify 和证书)和 ecdsa_secp256r1_sha256 的数字签名。符合 TLS 的应用程序必须支持与 secp256r1 (NIST P-256) 的密钥交换,并且应该支持与 X25519 [RFC7748] 的密钥交换。
推荐阅读
- c - int 和 long 的大小等于 4 个字节
- javascript - 将输入数组的表单序列化为 JSON 并将其用作 PHP 中的数组
- python - Python,cvzone - 为什么我会得到这个 ValueError?
- php - 致命错误:未捕获的 PhpOffice\PhpSpreadsheet\Reader\Exception:找不到 zip 成员
- django - 无法在自定义工具栏配置中将“ckeditor_wiris”插件集成到 django-ckeditor
- android - 膨胀类 androidx.media2.widget.VideoView 时出错
- html - 如何使用 css-grid 将元素放置在现有容器的顶部
- reactjs - 自定义颜色主题在 Bootstrap、React、SCSS 项目中无法正常工作
- swiftui - 来自 View 的 UIImage 与 onAppear 逻辑
- binary-search - 为什么我的使用 while 循环 dosnt 的二进制搜索有效?