(mozilla-projects-nss-nss-3-50-release-notes)=

# NSS 3.50 release notes

## [Introduction](#introduction)

:::{container}
The NSS team has released Network Security Services (NSS) 3.50 on **7 February 2020**, which is a
minor release.
:::

## [Distribution Information](#distribution_information)

:::{container}
The HG tag is NSS_3_50_RTM. NSS 3.50 requires NSPR 4.25 or newer.

NSS 3.50 source distributions are available on ftp.mozilla.org for secure HTTPS download:

- Source tarballs:
  <https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_50_RTM/src/>

Other releases are available {ref}`mozilla_projects_nss_nss_releases`.
:::

(notable-changes-in-nss-3-50)=

## [Notable Changes in NSS 3.50](#notable_changes_in_nss_3.50)

:::{container}

- Verified primitives from HACL\* were updated, bringing performance improvements for several
  platforms.

  - Note that Intel processors with SSE4 but without AVX are currently unable to use the
    improved ChaCha20/Poly1305 due to a build issue; such platforms will fall-back to less
    optimized algorithms. See [Bug 1609569 for
    details.](https://bugzilla.mozilla.org/show_bug.cgi?id=1609569)

- Updated DTLS 1.3 implementation to Draft-30. See [Bug 1599514 for
  details.](https://bugzilla.mozilla.org/show_bug.cgi?id=1599514)

- Added NIST SP800-108 KBKDF - PKCS#11 implementation. See [Bug 1599603 for
  details.](https://bugzilla.mozilla.org/show_bug.cgi?id=1599603)
:::

(bugs-fixed-in-nss-3-50)=

## [Bugs fixed in NSS 3.50](#bugs_fixed_in_nss_3.50)

:::{container}

- [Bug 1599514](https://bugzilla.mozilla.org/show_bug.cgi?id=1599514) - Update DTLS 1.3
  implementation to Draft-30
- [Bug 1603438](https://bugzilla.mozilla.org/show_bug.cgi?id=1603438) - Fix native tools
  build failure due to lack of zlib include dir if external
- [Bug 1599603](https://bugzilla.mozilla.org/show_bug.cgi?id=1599603) - NIST SP800-108 KBKDF
  \- PKCS#11 implementation
- [Bug 1606992](https://bugzilla.mozilla.org/show_bug.cgi?id=1606992) - Cache the most
  recent PBKDF1 password hash, to speed up repeated SDR operations, important with the increased
  KDF iteration counts. NSS 3.49.1 sped up PBKDF2 operations, though PBKDF1 operations are also
  relevant for older NSS databases (also included in NSS 3.49.2)
- [Bug 1608895](https://bugzilla.mozilla.org/show_bug.cgi?id=1608895) - Gyp builds on
  taskcluster broken by Setuptools v45.0.0 (for lacking Python3)
- [Bug 1574643](https://bugzilla.mozilla.org/show_bug.cgi?id=1574643) - Upgrade HACL\*
  verified implementations of ChaCha20, Poly1305, and 64-bit Curve25519
- [Bug 1608327](https://bugzilla.mozilla.org/show_bug.cgi?id=1608327) - Two problems with
  NEON-specific code in freebl
- [Bug 1575843](https://bugzilla.mozilla.org/show_bug.cgi?id=1575843) - Detect AArch64 CPU
  features on FreeBSD
- [Bug 1607099](https://bugzilla.mozilla.org/show_bug.cgi?id=1607099) - Remove the buildbot
  configuration
- [Bug 1585429](https://bugzilla.mozilla.org/show_bug.cgi?id=1585429) - Add more HKDF test
  vectors
- [Bug 1573911](https://bugzilla.mozilla.org/show_bug.cgi?id=1573911) - Add more RSA test
  vectors
- [Bug 1605314](https://bugzilla.mozilla.org/show_bug.cgi?id=1605314) - Compare all 8 bytes
  of an mp_digit when clamping in Windows assembly/mp_comba
- [Bug 1604596](https://bugzilla.mozilla.org/show_bug.cgi?id=1604596) - Update Wycheproof
  vectors and add support for CBC, P256-ECDH, and CMAC tests
- [Bug 1608493](https://bugzilla.mozilla.org/show_bug.cgi?id=1608493) - Use AES-NI for
  non-GCM AES ciphers on platforms with no assembly-optimized implementation, such as macOS.
- [Bug 1547639](https://bugzilla.mozilla.org/show_bug.cgi?id=1547639) - Update zlib in NSS to
  1.2.11
- [Bug 1609181](https://bugzilla.mozilla.org/show_bug.cgi?id=1609181) - Detect ARM (32-bit)
  CPU features on FreeBSD
- [Bug 1602386](https://bugzilla.mozilla.org/show_bug.cgi?id=1602386) - Fix build on
  FreeBSD/powerpc\*
- [Bug 1608151](https://bugzilla.mozilla.org/show_bug.cgi?id=1608151) - Introduce
  NSS_DISABLE_ALTIVEC
- [Bug 1612623](https://bugzilla.mozilla.org/show_bug.cgi?id=1612623) - Depend on NSPR 4.25
- [Bug 1609673](https://bugzilla.mozilla.org/show_bug.cgi?id=1609673) - Fix a crash when NSS
  is compiled without libnssdbm support, but the nssdbm shared object is available anyway.

This Bugzilla query returns all the bugs fixed in NSS 3.50:

<https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&classification=Components&query_format=advanced&product=NSS&target_milestone=3.50>
:::

## [Compatibility](#compatibility)

:::{container}
NSS 3.50 shared libraries are backward compatible with all older NSS 3.x shared libraries. A
program linked with older NSS 3.x shared libraries will work with NSS 3.50 shared libraries
without recompiling or relinking. Furthermore, applications that restrict their use of NSS APIs
to the functions listed in NSS Public Functions will remain compatible with future versions of
the NSS shared libraries.
:::

## [Feedback](#feedback)

:::{container}
Bugs discovered should be reported by filing a bug report with
[bugzilla.mozilla.org](https://bugzilla.mozilla.org/enter_bug.cgi?product=NSS) (product NSS).
:::
