Skip to content

fix: 返回正确的证书 SHA-256 指纹 - #2310

Open
2gg-bit wants to merge 1 commit into
unclecode:developfrom
2gg-bit:codex/fix-certificate-sha256-fingerprint
Open

2gg-bit wants to merge 1 commit into
unclecode:developfrom
2gg-bit:codex/fix-certificate-sha256-fingerprint

Conversation

@2gg-bit

@2gg-bit 2gg-bit commented Sep 29, 2026

Copy link
Copy Markdown

Summary

修复 TLS 证书 SHA-256 指纹被重复转为十六进制的问题。OpenSSL 的 digest() 已返回带冒号的 ASCII 十六进制文本,再调用 .hex() 会得到 190 个字符,无法与证书的 SHA-256 值比较。现在返回文档约定的 64 位小写十六进制字符串。

List of files changed and why

  • crawl4ai/ssl_certificate.py:解码并规范化 OpenSSL 指纹。
  • tests/unit/test_ssl_fingerprint.py:使用本地生成的真实证书,对照 DER 的 SHA-256,并检查 JSON、PEM 和 DER 导出。

How Has This Been Tested?

  • 旧代码:新增 2 项测试均失败,复现错误指纹。
  • 修复后:python -m pytest tests/unit/test_ssl_fingerprint.py -q:2 passed。
  • 新测试通过 Black;git diff --check 通过。网络传输使用模拟对象,证书解析和哈希是真实实现。未运行真实网络或浏览器集成测试。

Checklist

  • 基于并提交到 develop
  • 添加复现问题的回归测试并执行差异检查
  • 输出与现有文档的指纹格式一致

AI 披露:问题分析、代码和上述验证由 OpenAI Codex 完成,尚未经人工审阅。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant