fix(tls): correct pinned cert SHA-256 hint to hex, not base64

xray-core hex-decodes pinnedPeerCertSha256 and the panel forwards the value as-is into share links and the JSON subscription, so clients hex-decode it too. The tooltip/placeholder wrongly said base64 (copied from the retired pinnedPeerCertificateChainSha256 field), and the "generate random hash" button emitted base64 via btoa, producing an unusable pin. Tooltip/placeholder now say hex across all locales and the generator emits hex.

Closes #4793
This commit is contained in:
MHSanaei
2026-06-02 15:14:17 +02:00
parent 13d02f01fc
commit c9abda7ab8
14 changed files with 27 additions and 29 deletions
+2 -2
View File
@@ -555,8 +555,8 @@
"echKey": "ECH key",
"echConfig": "ECH config",
"pinnedPeerCertSha256": "Pinned Peer Cert SHA-256",
"pinnedPeerCertSha256Tip": "Base64-encoded SHA-256 hashes of the peer certificate. Panel-only — not written to the server's xray config, but included in share links so clients can pin the certificate.",
"pinnedPeerCertSha256Placeholder": "base64 hash(es), comma-separated",
"pinnedPeerCertSha256Tip": "SHA-256 hash(es) of the peer certificate as a hex string (e.g. e8e2d3…), comma-separated. Panel-only — not written to the server's xray config, but included in share links so clients can pin the certificate.",
"pinnedPeerCertSha256Placeholder": "hex hash(es), comma-separated",
"generateRandomPin": "Generate random hash",
"getNewEchCert": "Get New ECH Cert",
"show": "Show",