← Package directory
Available on winget

Install JA3Proxy

Customizing TLS (JA3) Fingerprints through HTTP Proxy

Install with winget
winget install --id LyleMi.JA3Proxy
Upgrade
winget upgrade --id LyleMi.JA3Proxy
Uninstall
winget uninstall --id LyleMi.JA3Proxy

About JA3Proxy

Customizing TLS (JA3) Fingerprints through HTTP Proxy

What's new in 0.5.1

What's Changed Features - Added hot-reloadable TLS fingerprint configuration via -fingerprint-config. - Supports loading client and version from a JSON file. - New HTTPS CONNECT connections use the latest loaded fingerprint. - Existing tunnels continue using the fingerprint they were opened with. - Fixed CONNECT response handling for clients such as ffprobe. - Aligned ALPN behavior between client-side and upstream TLS connections. - Avoided mutating Go's default HTTP transport. - Passed HTTP transport traffic through the configured upstream dialer. Improvements - Added SOCKS5 upstream proxy handling improvements. - Moved CLI source into cmd/ja3proxy. - Changed default generated CA paths to: - credentials/cert.pem - credentials/key.pem - Updated Docker runtime paths and Docker context ignores. - Updated Makefile output paths so release binaries are written under bin/. - Expanded README with usage, Docker, certificate, fingerprint, and development docs. Testing - Added end-to-end proxy tests. - Added JA3 fingerprint verification coverage. - Added unit tests for proxy handlers, MITM CONNECT flow, upstream dialer construction, custom TLS wrapping, certificate handling, debug writer behavior, and edge cases. Dependencies and CI - Updated github.com/refraction-networking/utls from v1.6.7 to v1.8.2. - Updated github.com/cloudflare/cfssl from v1.6.4 to v1.6.5. - Updated golang.org/x/net from v0.23.0 to v0.38.0. - Updated GitHub Actions dependencies: - actions/checkout to v6 - actions/setup-go to v6 - docker-build-push action to v7 - Added Dependabot configuration for Go modules and...

Read release notes

Version history

Version Updated Notes
0.5.1 Unknown What's Changed Features - Added hot-reloadable TLS fingerprint configuration via -fingerprint-config. - Supports loading client and version from a JSON file. - New HTTPS CONNECT connections use the latest loaded fingerpr...
0.4 Unknown What's Changed - Added newer version of dependencies (e.g. utls) for new browsers compatibility by @antoniolch in https://github.com/LyleMi/ja3proxy/pull/17 New Contributors - @antoniolch made their first contribution in...
0.3 Unknown What's Changed - Load certificate at startup by @rosahaj in #9 - fix: reply with sni-specific certs by @rosahaj in #11 - fix: stop goroutine leaks by ensuring both goroutines exit properly by @huboh in #14 New Contributo...