(mozilla-projects-nss-nss-3-128-release-notes)= # NSS 3.128 release notes ## Introduction :::{container} Network Security Services (NSS) 3.128 was released on *26 August 2026*. ::: ## Distribution Information :::{container} The HG tag is NSS_3_128_RTM. NSS 3.128 requires NSPR 4.39 or newer. NSS 3.128 source distributions are available on ftp.mozilla.org for secure HTTPS download: - Source tarballs: Other releases are available {ref}`mozilla-projects-nss-releases`. ::: (changes-in-nss-3-128)= ## Changes in NSS 3.128 :::{container} - Bug 2063360 - Rejoin the table cells the conversion wrapped mid-construct. - Bug 2063360 - Generate heading anchors and stop the headings linking to themselves. - Bug 2063360 - Unlink the self-linking headings in the release notes. - Bug 2063360 - Point documentation cross-references at the dashed anchors. - Bug 2063360 - Fix doc-lint in the release process. - Bug 2066375 - Make fuzz tasks selectable with try syntax. - Bug 2066375 - Build Cryptofuzz in its own CI task. - Bug 2066604 - fix EC public key encoding in sftk_PutPubKey. - Bug 2066183 - set CKA_ID on imported private keys. - Bug 2017925 - Hash prfs need to be evaluated for indicators. - Bug 2066327 - rename libcrux gyp target. - Bug 2066415 - Update BoGo tests to disable ML_DSA Default test. - Bug 2065354 - unify the two clang-format docker images. - Bug 2056265 - -trust-cert for TLS BoGo tests. - Bug 2056235 - DTLS1.2/1.3 - silently discard invalid records. - Bug 2052273 - Adding -trust-cert support for BoGo DTLS tests. - Bug 2063443 - nullify dangling pointers in libssl, pk11wrap, and softoken. - Bug 2027768 - Fix build failure due to missing gcm stubs if on big endian. - Bug 2065354 - clang-format everything. - Bug 2065354 - Update clang-format version to 22. - Bug 2054818 - make mach try work with git-cinnabar checkouts. - Bug 2054696 - avoid integer overflow in PK11SDR_EncryptWithMechanism. - Bug 2056778 - fix slot over-release in PK11_FindCertFromDERCertItem. - Bug 2056789 - fix missing BAD_PARAM_CAST in NSC_DeriveKey CKM_DES3_CBC_ENCRYPT_DATA branch. - Bug 2064946 - additional ML-DSA ssl gtests. - Bug 2064644 - ml_dsat.h: portable comments should use block comment style. - Bug 1983320 - ml-dsa tls tests. - Bug 2056787 - hold handshake locks longer in SSL_ResetHandshake. - Bug 1983320 - ML-DSA tests for Sign/Verify, certificates and pkcs12. - Bug 2056786 - take smime profile lock while updating profile data. - Bug 2062824 - add defensive null checks in PK11_Encapsulate and PK11_Decapsulate. - Bug 2062822 - nulled slot in pk11_loadPrivKeyWithFlags leads to token object leak. - Bug 2062802 - handle ML-KEM in stfk_CopyTokenPrivateKey and stfk_CopyTokenPublicKey. - Bug 2062450 - Allow unknown hashAlg with ML-DSA in VFY_VerifyDataDirect. - Bug 2062379 - additional ML-KEM tests. - Bug 2062375 - handle unknown ML-KEM parameter sets in PK11_ExtractPublicKey. - Bug 2062373 - missing CKP_NSS_ML_KEM_768 branches in seckey helper functions. - Bug 2062372 - remove unused sftk_kyber_AllocCiphertextItem function. - Bug 2060302 - additional ML-DSA tests. - Bug 2060358 - add wycheproof tests for ML-KEM and ML-DSA. - Bug 2060302 - vendor libcrux ML-DSA and enable the ML-DSA freebl backend. - Bug 2060301 - bump libcrux and re-vendor ML-KEM from the combined C extraction. - Bug 2027352 - validate IV length for CKM_RC2_CBC in pk11_ParamFromIVWithLen. - Bug 1983320 - ml-dsa tls patch. - Bug 2056775 - protect nssPKIObject.cryptoContext with a lock. :::