JA4 指纹由三部分组成,例如一个 Chrome TCP 连接的指纹为 t13d1517h2_8daaf6152771_cb7bf5808d99:可读前缀(t 表示 TCP,q 表示 QUIC;TLS 版本;SNI 为域名时为 d;密码套件和扩展的数量;第一个 ALPN)、排序后密码套件的截断 SHA-256,以及对排序后的扩展(不含 SNI 和 ALPN)加上按原顺序排列的签名算法计算的截断 SHA-256。GREASE 值会被忽略。
它取代了 JA3(Salesforce,2017年):JA3 按报文中的原始顺序对扩展做哈希,Chrome 在2023年初开始打乱扩展顺序后就不再稳定。JA4 用于机器人检测、恶意软件追踪和流量分析;它识别的是软件而不是用户,任何人都可以借助 uTLS 等库模仿某个指纹。JA4 本身采用 BSD 3-Clause 许可证;其他 JA4+ 方法(JA4S、JA4H、JA4X 等)使用 FoxIO License 1.1,该许可证限制商业使用。