Network Security Services (NSS) is a set of libraries designed to
support cross-platform development of security-enabled server
applications. Applications built with NSS can support SSL v3,
TLS v1.0, v1.1, v1.2, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3
certificates, and other security standards.

License

MPL-2.0

Changelog

* Thu Jan 31 2019 cgrobertson@suse.com
- update to NSS 3.41.1
* (3.41) required by Firefox 65.0
New functionality
* Implemented EKU handling for IPsec IKE. (bmo#1252891)
* Enable half-closed states for TLS. (bmo#1423043)
* Enabled the following ciphersuites by default: (bmo#1493215)
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_256_GCM_SHA384
Notable changes
* The following CA certificates were added:
CN = Certigna Root CA
CN = GTS Root R1
CN = GTS Root R2
CN = GTS Root R3
CN = GTS Root R4
CN = UCA Global G2 Root
CN = UCA Extended Validation Root
* The following CA certificates were removed:
CN = AC Raíz Certicámara S.A.
CN = Certplus Root CA G1
CN = Certplus Root CA G2
CN = OpenTrust Root CA G1
CN = OpenTrust Root CA G2
CN = OpenTrust Root CA G3
Bugs fixed
* Reject empty supported_signature_algorithms in Certificate
Request in TLS 1.2 (bmo#1412829)
* Cache side-channel variant of the Bleichenbacher attack (bmo#1485864)
(CVE-2018-12404)
* Resend the same ticket in ClientHello after HelloRetryRequest (bmo#1481271)
* Set session_id for external resumption tokens (bmo#1493769)
* Reject CCS after handshake is complete in TLS 1.3 (bmo#1507179)
* Add additional null checks to several CMS functions to fix a rare
CMS crash. (bmo#1507135, bmo#1507174) (3.41.1)
- removed obsolete patches
nss-disable-ocsp-test.patch
* Thu Jan 10 2019 cgrobertson@suse.com
- hmac packages inadvertently removed in last update: re-added.
(bnc#1121207)
- Added "Suggest:" for libfreebl3 and libsoftokn3 respective -hmac
packages to avoid dependency issues during updates
(bsc#1090767, bsc#1121045)
* Thu Dec 13 2018 cgrobertson@suse.com
- update to NSS 3.40.1
* required by Firefox 64.0
* patch release fixes CVE-2018-12404
Notable bug fixes
* FFDHE key exchange sometimes fails with decryption failure (bmo#1478698)
New functionality
* The draft-00 version of encrypted SNI support is implemented
* tstclnt now takes -N option to specify encrypted SNI key
Notable changes
* The mozilla::pkix library has been ported from Mozilla PSM to NSS.
This is a C++ library for building certification paths.
mozilla::pkix APIs are not exposed in the libraries NSS builds.
* It is easier to build NSS on Windows in mozilla-build environments
* The following CA certificates were Removed:
CN = Visa eCommerce Root
* Mon Oct 29 2018 alarrosa@suse.com
- update to NSS 3.39
* required by Firefox 63.0
Notable bug fixes
* NSS responded to an SSLv2-compatible ClientHello with a
ServerHello that had an all-zero random (CVE-2018-12384) (bmo#1483128)
New functionality
* The tstclnt and selfserv utilities added support for configuring
the enabled TLS signature schemes using the -J parameter.
* NSS will use RSA-PSS keys to authenticate in TLS. Support for
these keys is disabled by default but can be enabled using
SSL_SignatureSchemePrefSet().
* certutil added the ability to delete an orphan private key from
an NSS key database.
* Added the nss-policy-check utility, which can be used to check
an NSS policy configuration for problems.
* A PKCS#11 URI can be used as an identifier for a PKCS#11 token.
Notable changes
* The TLS 1.3 implementation uses the final version number from
RFC 8446.
* Previous versions of NSS accepted an RSA PKCS#1 v1.5 signature
where the DigestInfo structure was missing the NULL parameter.
Starting with version 3.39, NSS requires the encoding to contain
the NULL parameter.
* The tstclnt and selfserv test utilities no longer accept the -z
parameter, as support for TLS compression was removed in a
previous NSS version.
* The CA certificates list was updated to version 2.26.
* The following CA certificates were Added:
- OU = GlobalSign Root CA - R6
- CN = OISTE WISeKey Global Root GC CA
* The following CA certificate was Removed:
- CN = ComSign
* The following CA certificates had the Websites trust bit disabled:
- CN = Certplus Root CA G1
- CN = Certplus Root CA G2
- CN = OpenTrust Root CA G1
- CN = OpenTrust Root CA G2
- CN = OpenTrust Root CA G3
- enable PIE support for the included binaries
- update to NSS 3.38
* required by Firefox 62.0
New Functionality
* Added support for the TLS Record Size Limit Extension
* When creating a certificate request (CSR) using certutil -R, an
existing orphan private key can be reused. Parameter -k may be
used to specify the ID of an existing orphan key. The available
orphan key IDs can be displayed using command certutil -K.
* When using certutil -O to print the chain for a given certificate
nickname, the new parameter --simple-self-signed may be provided,
which can avoid ambiguous output in some scenarios.
New Functions
* SECITEM_MakeItem - Allocate and make an item with the requested contents
(secitem.h)
New Macros
* SSL_RECORD_SIZE_LIMIT - used to control the TLS Record Size Limit
Extension (in ssl.h)
Notable Changes
* Fixed CVE-2018-0495 (bmo#1464971)
* Various security fixes in the ASN.1 code
* NSS automatically enables caching for SQL database storage on
Linux, if it is located on a network filesystem that's known to
benefit from caching.
* When repeatedly importing the same certificate into an SQL database,
the existing nickname will be kept.
- update to NSS 3.37.3
* required by Firefox 61.0
Notable changes:
* The TLS 1.3 implementation was updated to Draft 28.
* Added HACL* Poly1305 32-bit
* The code to support the NPN protocol has been fully removed.
* NSS allows servers now to register ALPN handling callbacks to
select a protocol.
* NSS supports opening SQL databases in read-only mode.
* On Linux, some build configurations can use glibc's function
getentropy(), which uses the kernel's getrandom() function.
* The CA list was updated to version 2.24, which removed the
following CA certificates:
- CN = S-TRUST Universal Root CA
- CN = TC TrustCenter Class 3 CA II
- CN = TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı H5
* Fix build on armv6/armv7 and other platforms (bmo#1459739)
- Set USE_64 on riscv64
* Thu Jun 07 2018 wr@rosenauer.org
- update to NSS 3.36.4
* required for Firefox 60.0.2 (bsc#1096515)
* Fix crash on macOS related to authentication tokens, e.g. PK11or
WebAuthn. (bmo#1461731)
Bugfixes from 3.36.2
* Connecting to a server that was recently upgraded to TLS 1.3
would result in a SSL_RX_MALFORMED_SERVER_HELLO error. (bmo#1462303)
* Fix a rare bug with PKCS#12 files. (bmo#1460673)
- use relro linker option (add-relro-linker-option.patch)
* Tue Apr 24 2018 wr@rosenauer.org
- update to NSS 3.36.1
Notable changes
* In NSS version 3.35 the iteration count in optimized builds,
which is used for password based encryption algorithm related to
encrypted PKCS#7 or PKCS#12 data, was increased to one million
iterations. That change had caused an interoperability regression
with operating systems that are limited to 600 K iterations.
NSS 3.36.1 has been changed to use the same 600 K limit.
Bugs fixed
* Certain smartcard operations could result in a deadlock.
* Thu Mar 15 2018 cgrobertson@suse.com
- update to NSS 3.36
New functionality
* Experimental APIs for TLS session cache handling
Notable Changes
* Replaces existing vectorized ChaCha20 code with verified
HACL* implementation.
- Removed patch as no longer needed: renegotiate-transitional.patch
upstream fix
* Thu Feb 08 2018 wr@rosenauer.org
- update to NSS 3.35
New functionality
* TLS 1.3 support has been updated to draft -23. This includes a
large number of changes since 3.34, which supported only draft
- 18. See below for details.
New Types
* SSLHandshakeType - The type of a TLS handshake message.
* For the SSLSignatureScheme enum, the enumerated values
ssl_sig_rsa_pss_sha* are deprecated in response to a change in
TLS 1.3. Please use the equivalent ssl_sig_rsa_pss_rsae_sha*
for rsaEncryption keys, or ssl_sig_rsa_pss_pss_sha* for PSS keys.
Note that this release does not include support for the latter.
Notable Changes
* Previously, NSS used the DBM file format by default. Starting
with version 3.35, NSS uses the SQL file format by default.
Additional information can be found on this Fedora Linux project
page: https://fedoraproject.org/wiki/Changes/NSSDefaultFileFormatSql
* Added formally verified implementations of non-vectorized Chacha20
and non-vectorized Poly1305 64-bit.
* For stronger security, when creating encrypted PKCS#7 or PKCS#12 data,
the iteration count for the password based encryption algorithm
has been increased to one million iterations. Note that debug builds
will use a lower count, for better performance in test environments.
* NSS 3.30 had introduced a regression, preventing NSS from reading
some AES encrypted data, produced by older versions of NSS.
NSS 3.35 fixes this regression and restores the ability to read
affected data.
* The following CA certificates were Removed:
OU = Security Communication EV RootCA1
CN = CA Disig Root R1
CN = DST ACES CA X6
Subject CN = VeriSign Class 3 Secure Server CA - G2
* The Websites (TLS/SSL) trust bit was turned off for the following
CA certificates:
CN = Chambers of Commerce Root
CN = Global Chambersign Root
* TLS servers are able to handle a ClientHello statelessly, if the
client supports TLS 1.3. If the server sends a HelloRetryRequest,
it is possible to discard the server socket, and make a new socket
to handle any subsequent ClientHello. This better enables stateless
server operation. (This feature is added in support of QUIC, but it
also has utility for DTLS 1.3 servers.)
* The tstclnt utility now supports DTLS, using the -P option. Note that
a DTLS server is also provided in tstclnt.
* TLS compression is no longer possible with NSS. The option can be
enabled, but NSS will no longer negotiate compression.
* The signatures of functions SSL_OptionSet, SSL_OptionGet,
SSL_OptionSetDefault and SSL_OptionGetDefault have been modified,
to take a PRIntn argument rather than PRBool. This makes it clearer,
that options can have values other than 0 or 1. Note this does
not affect ABI compatibility, because PRBool is a typedef for PRIntn.
* Tue Jan 09 2018 wr@rosenauer.org
- update to NSS 3.34.1
Changes in 3.34:
Notable changes
* The following CA certificates were Added:
GDCA TrustAUTH R5 ROOT
SSL.com Root Certification Authority RSA
SSL.com Root Certification Authority ECC
SSL.com EV Root Certification Authority RSA R2
SSL.com EV Root Certification Authority ECC
TrustCor RootCert CA-1
TrustCor RootCert CA-2
TrustCor ECA-1
* The following CA certificates were Removed:
Certum CA, O=Unizeto Sp. z o.o.
StartCom Certification Authority
StartCom Certification Authority G2
TÜBİTAK UEKAE Kök Sertifika Hizmet Sağlayıcısı - Sürüm 3
ACEDICOM Root
Certinomis - Autorité Racine
TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı
PSCProcert
CA 沃通根证书, O=WoSign CA Limited
Certification Authority of WoSign
Certification Authority of WoSign G2
CA WoSign ECC Root
* libfreebl no longer requires SSE2 instructions
New functionality
* When listing an NSS database using certutil -L, but the database
hasn't yet been initialized with any non-empty or empty password,
the text "Database needs user init" will be included in the listing.
* When using certutil to set an inacceptable password in FIPS mode,
a correct explanation of acceptable passwords will be printed.
* SSLKEYLOGFILE is now supported with TLS 1.3, see bmo#1287711 for details.
* SSLChannelInfo has two new fields (bmo#1396525):
SSLNamedGroup originalKeaGroup holds the key exchange group of
the original handshake when the session was resumed.
PRBool resumed is PR_TRUE when the session is resumed and PR_FALSE
otherwise.
* RSA-PSS signatures are now supported on certificates. Certificates
with RSA-PSS or RSA-PKCS#1v1.5 keys can be used to create an RSA-PSS
signature on a certificate using the --pss-sign argument to certutil.
Changes in 3.34.1:
* The following CA certificate was Re-Added. It was removed in NSS
3.34, but has been re-added with only the Email trust bit set.
(bmo#1418678):
libfreebl no longer requires SSE2 instructionsCN = Certum CA, O=Unizeto Sp. z o.o.
* Removed entries from certdata.txt for actively distrusted
certificates that have expired (bmo#1409872)
* The version of the CA list was set to 2.20.
* Thu Dec 07 2017 dimstar@opensuse.org
- Escape the usage of %{VERSION} when calling out to rpm.
RPM 4.14 has %{VERSION} defined as 'the main packages version'.
* Tue Oct 03 2017 wr@rosenauer.org
- update to NSS 3.33
Notable changes
* TLS compression is no longer supported. API calls that attempt
to enable compression are accepted without failure. However,
TLS compression will remain disabled.
* This version of NSS uses a formally verified implementation of
Curve25519 on 64-bit systems.
* The compile time flag DISABLE_ECC has been removed.
* When NSS is compiled without NSS_FORCE_FIPS=1 startup checks
are not performed anymore.
* Various minor improvements and correctness fixes.
New functionality
* When listing an NSS database using certutil -L, but the database
hasn't yet been initialized with any non-empty or empty password,
the text "Database needs user init" will be included in the listing.
* When using certutil to set an inacceptable password in FIPS mode,
a correct explanation of acceptable passwords will be printed.
New functions
* CERT_FindCertByIssuerAndSNCX - a variation of existing function
CERT_FindCertByIssuerAndSN that accepts an additional password
context parameter.
* CERT_FindCertByNicknameOrEmailAddrCX - a variation of existing
function CERT_FindCertByNicknameOrEmailAddr that accepts an
additional password context parameter.
* CERT_FindCertByNicknameOrEmailAddrForUsageCX - a variation of
existing function CERT_FindCertByNicknameOrEmailAddrForUsage that
accepts an additional password context parameter.
* NSS_SecureMemcmpZero - check if a memory region is all zero in
constant time.
* PORT_ZAllocAligned - allocate aligned memory.
* PORT_ZAllocAlignedOffset - allocate aligned memory for structs.
* SSL_GetExperimentalAPI - access experimental APIs in libssl.
- add patch to separate hw and sw implementations for AES and GCM
to avoid implicit execution of SSE2 methods if compiled for i586
(bmo-1400603.patch, boo#1061204)
* Fri Sep 15 2017 wr@rosenauer.org
- update to NSS 3.32.1
* no upstream changelog/releasenote provided
* Tue Sep 12 2017 wr@rosenauer.org
- update to NSS 3.32
Notable changes
* Various minor improvements and correctness fixes.
* The Code Signing trust bit was turned off for all included root certificates.
* The Websites (TLS/SSL) trust bit was turned off for the following
root certificates:
AddTrust Class 1 CA Root
Swisscom Root CA 2
* The following CA certificates were Removed:
AddTrust Public CA Root
AddTrust Qualified CA Root
China Internet Network Information Center EV Certificates Root
CNNIC ROOT
ComSign Secured CA
GeoTrust Global CA 2
Secure Certificate Services
Swisscom Root CA 1
Swisscom Root EV CA 2
Trusted Certificate Services
UTN-USERFirst-Hardware
UTN-USERFirst-Object
- requires NSPR 4.16
* Tue Sep 12 2017 wr@rosenauer.org
- update to NSS 3.31.1
* Potential deadlock when using an external PKCS#11 token (bmo#1381784)
* Sat Aug 05 2017 wr@rosenauer.org
- update to NSS 3.31
New functionality
* Allow certificates to be specified by RFC7512 PKCS#11 URIs.
* Allow querying a certificate object for its temporary or permanent
storage status in a thread safe way.
New functions
* CERT_GetCertIsPerm - retrieve the permanent storage status attribute of a
certificate in a thread safe way.
* CERT_GetCertIsTemp - retrieve the temporary storage status attribute of a
certificate in a thread safe way.
* PK11_FindCertFromURI - find a certificate identified by the given URI.
* PK11_FindCertsFromURI - find a list of certificates identified by the given
URI.
* PK11_GetModuleURI - retrieve the URI of the given module.
* PK11_GetTokenURI - retrieve the URI of a token based on the given slot
information.
* PK11URI_CreateURI - create a new PK11URI object from a set of attributes.
* PK11URI_DestroyURI - destroy a PK11URI object.
* PK11URI_FormatURI - format a PK11URI object to a string.
* PK11URI_GetPathAttribute - retrieve a path attribute with the given name.
* PK11URI_GetQueryAttribute - retrieve a query attribute with the given name.
* PK11URI_ParseURI - parse PKCS#11 URI and return a new PK11URI object.
New macros
* Several new macros that start with PK11URI_PATTR_ for path attributes defined
in RFC7512.
* Several new macros that start with PK11URI_QATTR_ for query attributes defined
in RFC7512.
Notable changes
* The APIs that set a TLS version range have been changed to trim the requested
range to the overlap with a systemwide crypto policy, if configured.
SSL_VersionRangeGetSupported can be used to query the overlap between the
library's supported range of TLS versions and the systemwide policy.
* Previously, SSL_VersionRangeSet and SSL_VersionRangeSetDefault returned a
failure if the requested version range wasn't fully allowed by the systemwide
crypto policy. They have been changed to return success, if at least one TLS
version overlaps between the requested range and the systemwide policy. An
application may call SSL_VersionRangeGet and SSL_VersionRangeGetDefault to
query the TLS version range that was effectively activated.
* Corrected the encoding of Domain Name Constraints extensions created by
certutil.
* NSS supports a clean seeding mechanism for *NIX systems now using only
/dev/urandom. This is used only when SEED_ONLY_DEV_URANDOM is set at compile
time.
* CERT_AsciiToName can handle OIDs in dotted decimal form now.
- removed obsolete nss-fix-hash.patch
* Wed Apr 26 2017 wr@rosenauer.org
- update to NSS 3.30.2
New Functionality
* In the PKCS#11 root CA module (nssckbi), CAs with positive trust
are marked with a new boolean attribute, CKA_NSS_MOZILLA_CA_POLICY,
set to true. Applications that need to distinguish them from other
other root CAs, may use the exported function PK11_HasAttributeSet.
* Support for callback functions that can be used to monitor SSL/TLS
alerts that are sent or received.
New Functions
* CERT_CompareAVA - performs a comparison of two CERTAVA structures,
and returns a SECComparison result.
* PK11_HasAttributeSet - allows to check if a PKCS#11 object in a
given slot has a specific boolean attribute set.
* SSL_AlertReceivedCallback - register a callback function, that will
be called whenever an SSL/TLS alert is received
* SSL_AlertSentCallback - register a callback function, that will be
called whenever an SSL/TLS alert is sent
* SSL_SetSessionTicketKeyPair - configures an asymmetric key pair,
for use in wrapping session ticket keys, used by the server. This
function currently only accepts an RSA public/private key pair.
New Macros
* PKCS12_AES_CBC_128, PKCS12_AES_CBC_192, PKCS12_AES_CBC_256
cipher family identifiers corresponding to the PKCS#5 v2.1 AES
based encryption schemes used in the PKCS#12 support in NSS
* CKA_NSS_MOZILLA_CA_POLICY - identifier for a boolean PKCS#11
attribute, that should be set to true, if a CA is present because
of it's acceptance according to the Mozilla CA Policy
Notable Changes
* The TLS server code has been enhanced to support session tickets
when no RSA certificate (e.g. only an ECDSA certificate) is configured.
* RSA-PSS signatures produced by key pairs with a modulus bit length
that is not a multiple of 8 are now supported.
* The pk12util tool now supports importing and exporting data encrypted
in the AES based schemes defined in PKCS#5 v2.1.
Root CA updates
* The following CA certificates were Removed
- O = Japanese Government, OU = ApplicationCA
- CN = WellsSecure Public Root Certificate Authority
- CN = TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı H6
- CN = Microsec e-Szigno Root
* The following CA certificates were Added
- CN = D-TRUST Root CA 3 2013
- CN = TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1
* The version number of the updated root CA list has been set to 2.14
(bmo#1350859)
* Domain name constraints for one of the new CAs have been added to the
NSS code (bmo#1349705)
- removed obsolete nss-bmo1320695.patch
* Wed Apr 12 2017 wr@rosenauer.org
- update to NSS 3.29.5
* Rare crashes in the base 64 decoder and encoder were fixed.
(bmo#1344380)
* A carry over bug in the RNG was fixed. (bmo#1345089)
- Allow use of session tickets when there is no ticket wrapping key
(boo#1015499, bmo#1320695) (nss-bmo1320695.patch)
* Thu Mar 16 2017 wr@rosenauer.org
- update to NSS 3.29.3
* enables TLS 1.3 by default
- TLS 1.3 was already enabled in 3.28.x builds for openSUSE.
This build option was removed.
- required for Firefox 53
* Thu Mar 16 2017 rguenther@suse.com
- Add nss-fix-hash.patch to fix hash computation (and build with
GCC 7 which complains about shifts of boolean values).
* Mon Feb 20 2017 wr@rosenauer.org
- update to NSS 3.28.3
* This is a patch release to fix binary compatibility issues.
NSS version 3.28, 3.28.1 and 3.28.2 contained changes that were
in violation with the NSS compatibility promise.
ECParams, which is part of the public API of the freebl/softokn
parts of NSS, had been changed to include an additional attribute.
That size increase caused crashes or malfunctioning with applications
that use that data structure directly, or indirectly through
ECPublicKey, ECPrivateKey, NSSLOWKEYPublicKey, NSSLOWKEYPrivateKey,
or potentially other data structures that reference ECParams.
The change has been reverted to the original state in bug
bmo#1334108.
SECKEYECPublicKey had been extended with a new attribute, named
"encoding". If an application passed type SECKEYECPublicKey to NSS
(as part of SECKEYPublicKey), the NSS library read the uninitialized
attribute. With this NSS release SECKEYECPublicKey.encoding is
deprecated. NSS no longer reads the attribute, and will always
set it to ECPoint_Undefined. See bug bmo#1340103.
- requires NSPR >= 4.13.1
* Sun Feb 12 2017 wr@rosenauer.org
- update to NSS 3.28.2
This is a stability and compatibility release. Below is a summary of
the changes.
* Fixed a NSS 3.28 regression in the signature scheme flexibility that
causes connectivity issues between iOS 8 clients and NSS servers
with ECDSA certificates (bmo#1334114)
* Fixed a possible crash on some Windows systems (bmo#1323150)
* Fixed a compatibility issue with TLS clients that do not provide a
list of supported key exchange groups (bmo#1330612)
* Wed Jan 18 2017 wr@rosenauer.org
- update to NSS 3.28.1
No new functionality is introduced in this release. This is a patch release to
update the list of root CA certificates and address a minor TLS compatibility
issue that some applications experienced with NSS 3.28.
* The following CA certificates were Removed
CN = Buypass Class 2 CA 1
CN = Root CA Generalitat Valenciana
OU = RSA Security 2048 V3
* The following CA certificates were Added
OU = AC RAIZ FNMT-RCM
CN = Amazon Root CA 1
CN = Amazon Root CA 2
CN = Amazon Root CA 3
CN = Amazon Root CA 4
CN = LuxTrust Global Root 2
CN = Symantec Class 1 Public Primary Certification Authority - G4
CN = Symantec Class 1 Public Primary Certification Authority - G6
CN = Symantec Class 2 Public Primary Certification Authority - G4
CN = Symantec Class 2 Public Primary Certification Authority - G6
* The version number of the updated root CA list has been set to 2.11
* A misleading assertion/alert has been removed when NSS tries to flush data
to the peer but the connection was already reset.
- update to NSS 3.28
New functionality:
* NSS includes support for TLS 1.3 draft -18. This includes a number
of improvements to TLS 1.3:
- The signed certificate timestamp, used in certificate
transparency, is supported in TLS 1.3.
- Key exporters for TLS 1.3 are supported. This includes the early
key exporter, which can be used if 0-RTT is enabled. Note that
there is a difference between TLS 1.3 and key exporters in older
versions of TLS. TLS 1.3 does not distinguish between an empty
context and no context.
- The TLS 1.3 (draft) protocol can be enabled, by defining
NSS_ENABLE_TLS_1_3=1 when building NSS.
- NSS includes support for the X25519 key exchange algorithm,
which is supported and enabled by default in all versions of TLS.
New Functions:
* SSL_ExportEarlyKeyingMaterial
* SSL_SendAdditionalKeyShares
* SSL_SignatureSchemePrefSet
* SSL_SignatureSchemePrefGet
Notable Changes:
* NSS can no longer be compiled with support for additional elliptic curves.
This was previously possible by replacing certain NSS source files.
* NSS will now detect the presence of tokens that support additional
elliptic curves and enable those curves for use in TLS.
Note that this detection has a one-off performance cost, which can be
avoided by using the SSL_NamedGroupConfig function to limit supported
groups to those that NSS provides.
* PKCS#11 bypass for TLS is no longer supported and has been removed.
* Support for "export" grade SSL/TLS cipher suites has been removed.
* NSS now uses the signature schemes definition in TLS 1.3.
This also affects TLS 1.2. NSS will now only generate signatures with the
combinations of hash and signature scheme that are defined in TLS 1.3,
even when negotiating TLS 1.2.
- This means that SHA-256 will only be used with P-256 ECDSA certificates,
SHA-384 with P-384 certificates, and SHA-512 with P-521 certificates.
SHA-1 is permitted (in TLS 1.2 only) with any certificate for backward
compatibility reasons.
- New functions to configure signature schemes are provided:
SSL_SignatureSchemePrefSet, SSL_SignatureSchemePrefGet.
The old SSL_SignaturePrefSet and SSL_SignaturePrefSet functions are
now deprecated.
- NSS will now no longer assume that default signature schemes are
supported by a peer if there was no commonly supported signature scheme.
* NSS will now check if RSA-PSS signing is supported by the token that holds
the private key prior to using it for TLS.
* The certificate validation code contains checks to no longer trust
certificates that are issued by old WoSign and StartCom CAs after
October 21, 2016. This is equivalent to the behavior that Mozilla will
release with Firefox 51.
- update to NSS 3.27.2
* SSL_SetTrustAnchors leaks (bmo#1318561)
- removed upstreamed patch
* nss-uninitialized.patch
- raised the minimum softokn/freebl version to 3.28 as reported in
boo#1021636
* Mon Nov 14 2016 wr@rosenauer.org
- update to NSS 3.26.2
* required for Firefox 50.0
Changes in 3.26
New Functionality:
* the selfserv test utility has been enhanced to support ALPN
(HTTP/1.1) and 0-RTT
* added support for the System-wide crypto policy available on
Fedora Linux see http://fedoraproject.org/wiki/Changes/CryptoPolicy
* introduced build flag NSS_DISABLE_LIBPKIX that allows compilation
of NSS without the libpkix library
Notable Changes:
* The following CA certificate was Added
CN = ISRG Root X1
* NPN is disabled and ALPN is enabled by default
* the NSS test suite now completes with the experimental TLS 1.3
code enabled
* several test improvements and additions, including a NIST known answer test
Changes in 3.26.2
* MD5 signature algorithms sent by the server in CertificateRequest
messages are now properly ignored. Previously, with rare server
configurations, an MD5 signature algorithm might have been selected
for client authentication and caused the client to abort the
connection soon after.
* Mon Aug 22 2016 wr@rosenauer.org
- update to NSS 3.25
New functionality:
* Implemented DHE key agreement for TLS 1.3
* Added support for ChaCha with TLS 1.3
* Added support for TLS 1.2 ciphersuites that use SHA384 as the PRF
* In previous versions, when using client authentication with TLS 1.2,
NSS only supported certificate_verify messages that used the same
signature hash algorithm as used by the PRF. This limitation has
been removed.
* Several functions have been added to the public API of the
NSS Cryptoki Framework.
New functions:
* NSSCKFWSlot_GetSlotID
* NSSCKFWSession_GetFWSlot
* NSSCKFWInstance_DestroySessionHandle
* NSSCKFWInstance_FindSessionHandle
Notable changes:
* An SSL socket can no longer be configured to allow both TLS 1.3 and SSLv3
* Regression fix: NSS no longer reports a failure if an application
attempts to disable the SSLv2 protocol.
* The list of trusted CA certificates has been updated to version 2.8
* The following CA certificate was Removed
Sonera Class1 CA
* The following CA certificates were Added
Hellenic Academic and Research Institutions RootCA 2015
Hellenic Academic and Research Institutions ECC RootCA 2015
Certplus Root CA G1
Certplus Root CA G2
OpenTrust Root CA G1
OpenTrust Root CA G2
OpenTrust Root CA G3
* Mon Aug 22 2016 wr@rosenauer.org
- fix build on certain toolchains (nss-uninitialized.patch)
jarfile.c:805:13: error: 'it' may be used uninitialized in this
function [-Werror=maybe-uninitialized]
* Thu Aug 04 2016 wr@rosenauer.org
- also sign libfreeblpriv3.so to allow FIPS mode again (boo#992236)
* Sat Jul 30 2016 wr@rosenauer.org
- update to NSS 3.24
New functionality:
* NSS softoken has been updated with the latest National Institute
of Standards and Technology (NIST) guidance (as of 2015):
- Software integrity checks and POST functions are executed on
shared library load. These checks have been disabled by default,
as they can cause a performance regression. To enable these
checks, you must define symbol NSS_FORCE_FIPS when building NSS.
- Counter mode and Galois/Counter Mode (GCM) have checks to
prevent counter overflow.
- Additional CSPs are zeroed in the code.
- NSS softoken uses new guidance for how many Rabin-Miller tests
are needed to verify a prime based on prime size.
* NSS softoken has also been updated to allow NSS to run in FIPS
Level 1 (no password). This mode is triggered by setting the
database password to the empty string. In FIPS mode, you may move
from Level 1 to Level 2 (by setting an appropriate password),
but not the reverse.
* A SSL_ConfigServerCert function has been added for configuring
SSL/TLS server sockets with a certificate and private key. Use
this new function in place of SSL_ConfigSecureServer,
SSL_ConfigSecureServerWithCertChain, SSL_SetStapledOCSPResponses,
and SSL_SetSignedCertTimestamps. SSL_ConfigServerCert automatically
determines the certificate type from the certificate and private key.
The caller is no longer required to use SSLKEAType explicitly to
select a "slot" into which the certificate is configured (which
incorrectly identifies a key agreement type rather than a certificate).
Separate functions for configuring Online Certificate Status Protocol
(OCSP) responses or Signed Certificate Timestamps are not needed,
since these can be added to the optional SSLExtraServerCertData struct
provided to SSL_ConfigServerCert. Also, partial support for RSA
Probabilistic Signature Scheme (RSA-PSS) certificates has been added.
Although these certificates can be configured, they will not be
used by NSS in this version.
New functions
* SSL_ConfigServerCert - Configures an SSL/TLS socket with a
certificate, private key, and other information.
* PORT_InitCheapArena - Initializes an arena that was created on
the stack. (See PORTCheapArenaPool.=
* PORT_DestroyCheapArena - Destroys an arena that was created on
the stack. (See PORTCheapArenaPool.)
New types
* SSLExtraServerCertData - Optionally passed as an argument to
SSL_ConfigServerCert. This struct contains supplementary information
about a certificate, such as the intended type of the certificate,
stapled OCSP responses, or Signed Certificate Timestamps (used for
certificate transparency).
* PORTCheapArenaPool - A stack-allocated arena pool, to be used for
temporary arena allocations.
New macros
* CKM_TLS12_MAC
* SEC_OID_TLS_ECDHE_PSK - This OID governs the use of the
TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256 cipher suite, which is used
only for session resumption in TLS 1.3.
Notable changes:
* Deprecate the following functions. (Applications should instead use the new
SSL_ConfigServerCert function.):
- SSL_SetStapledOCSPResponses
- SSL_SetSignedCertTimestamps
- SSL_ConfigSecureServer
- SSL_ConfigSecureServerWithCertChain
* Deprecate the NSS_FindCertKEAType function, as it reports a misleading
value for certificates that might be used for signing rather than
key exchange.
* Update SSLAuthType to define a larger number of authentication key types.
* Deprecate the member attribute authAlgorithm of type SSLCipherSuiteInfo.
Instead, applications should use the newly added attribute authType.
* Rename ssl_auth_rsa to ssl_auth_rsa_decrypt.
* Add a shared library (libfreeblpriv3) on Linux platforms that
define FREEBL_LOWHASH.
* Remove most code related to SSL v2, including the ability to actively
send a SSLv2-compatible client hello. However, the server-side
implementation of the SSL/TLS protocol still supports processing
of received v2-compatible client hello messages.
* Disable (by default) NSS support in optimized builds for logging SSL/TLS
key material to a logfile if the SSLKEYLOGFILE environment variable
is set. To enable the functionality in optimized builds, you must define
the symbol NSS_ALLOW_SSLKEYLOGFILE when building NSS.
* Update NSS to protect it against the Cachebleed attack.
* Disable support for DTLS compression.
* Improve support for TLS 1.3. This includes support for DTLS 1.3.
Note that TLS 1.3 support is experimental and not suitable for
production use.
- removed obsolete nss-bmo1236011.patch
* Thu May 26 2016 wr@rosenauer.org
- update to NSS 3.23
New functionality:
* ChaCha20/Poly1305 cipher and TLS cipher suites now supported
* Experimental-only support TLS 1.3 1-RTT mode (draft-11).
This code is not ready for production use.
New functions:
* SSL_SetDowngradeCheckVersion - Set maximum version for new
ServerRandom anti-downgrade mechanism. Clients that perform a
version downgrade (which is generally a very bad idea) call this
with the highest version number that they possibly support.
This gives them access to the version downgrade protection from
TLS 1.3.
Notable changes:
* The copy of SQLite shipped with NSS has been updated to version
3.10.2
* The list of TLS extensions sent in the TLS handshake has been
reordered to increase compatibility of the Extended Master Secret
with with servers
* The build time environment variable NSS_ENABLE_ZLIB has been
renamed to NSS_SSL_ENABLE_ZLIB
* The build time environment variable NSS_DISABLE_CHACHAPOLY was
added, which can be used to prevent compilation of the
ChaCha20/Poly1305 code.
* The following CA certificates were Removed
- Staat der Nederlanden Root CA
- NetLock Minositett Kozjegyzoi (Class QA) Tanusitvanykiado
- NetLock Kozjegyzoi (Class A) Tanusitvanykiado
- NetLock Uzleti (Class B) Tanusitvanykiado
- NetLock Expressz (Class C) Tanusitvanykiado
- VeriSign Class 1 Public PCA – G2
- VeriSign Class 3 Public PCA
- VeriSign Class 3 Public PCA – G2
- CA Disig
* The following CA certificates were Added
+ SZAFIR ROOT CA2
+ Certum Trusted Network CA 2
* The following CA certificate had the Email trust bit turned on
+ Actalis Authentication Root CA
Security fixes:
* CVE-2016-2834: Memory safety bugs (boo#983639)
MFSA-2016-61 bmo#1206283 bmo#1221620 bmo#1241034 bmo#1241037
- removed obsolete nss_gcc6_change.patch
* Mon Apr 18 2016 normand@linux.vnet.ibm.com
- add nss_gcc6_change.patch
* Tue Mar 15 2016 wr@rosenauer.org
- update to NSS 3.22.3
* required for Firefox 46.0
* Increase compatibility of TLS extended master secret,
don't send an empty TLS extension last in the handshake
(bmo#1243641)
* Fixed a heap-based buffer overflow related to the parsing of
certain ASN.1 structures. An attacker could create a specially-crafted
certificate which, when parsed by NSS, would cause a crash or
execution of arbitrary code with the permissions of the user.
(CVE-2016-1950, bmo#1245528)
* Wed Mar 09 2016 wr@rosenauer.org
- update to NSS 3.22.2
New functionality:
* RSA-PSS signatures are now supported (bmo#1215295)
* Pseudorandom functions based on hashes other than SHA-1 are now supported
* Enforce an External Policy on NSS from a config file (bmo#1009429)
New functions:
* PK11_SignWithMechanism - an extended version PK11_Sign()
* PK11_VerifyWithMechanism - an extended version of PK11_Verify()
* SSL_PeerSignedCertTimestamps - Get signed_certificate_timestamp
TLS extension data
* SSL_SetSignedCertTimestamps - Set signed_certificate_timestamp
TLS extension data
New types:
* ssl_signed_cert_timestamp_xtn is added to SSLExtensionType
* Constants for several object IDs are added to SECOidTag
New macros:
* SSL_ENABLE_SIGNED_CERT_TIMESTAMPS
* NSS_USE_ALG_IN_SSL
* NSS_USE_POLICY_IN_SSL
* NSS_RSA_MIN_KEY_SIZE
* NSS_DH_MIN_KEY_SIZE
* NSS_DSA_MIN_KEY_SIZE
* NSS_TLS_VERSION_MIN_POLICY
* NSS_TLS_VERSION_MAX_POLICY
* NSS_DTLS_VERSION_MIN_POLICY
* NSS_DTLS_VERSION_MAX_POLICY
* CKP_PKCS5_PBKD2_HMAC_SHA224
* CKP_PKCS5_PBKD2_HMAC_SHA256
* CKP_PKCS5_PBKD2_HMAC_SHA384
* CKP_PKCS5_PBKD2_HMAC_SHA512
* CKP_PKCS5_PBKD2_HMAC_GOSTR3411 - (not supported)
* CKP_PKCS5_PBKD2_HMAC_SHA512_224 - (not supported)
* CKP_PKCS5_PBKD2_HMAC_SHA512_256 - (not supported)
Notable changes:
* NSS C++ tests are built by default, requiring a C++11 compiler.
Set the NSS_DISABLE_GTESTS variable to 1 to disable building these tests.
* NSS has been changed to use the PR_GetEnvSecure function that
was made available in NSPR 4.12
* Mon Mar 07 2016 wr@rosenauer.org
- update to NSS 3.21.1 (bmo#969894)
* required for Firefox 45.0
* MFSA 2016-35/CVE-2016-1950 (bmo#1245528)
Buffer overflow during ASN.1 decoding in NSS
* MFSA 2016-36/CVE-2016-1979 (bmo#1185033)
Use-after-free during processing of DER encoded keys in NSS
* Sun Dec 20 2015 wr@rosenauer.org
- update to NSS 3.21
* required for Firefox 44.0
New functionality:
* certutil now supports a --rename option to change a nickname (bmo#1142209)
* TLS extended master secret extension (RFC 7627) is supported (bmo#1117022)
* New info functions added for use during mid-handshake callbacks (bmo#1084669)
New Functions:
* NSS_OptionSet - sets NSS global options
* NSS_OptionGet - gets the current value of NSS global options
* SECMOD_CreateModuleEx - Create a new SECMODModule structure from module name
string, module parameters string, NSS specific parameters string, and NSS
configuration parameter string. The module represented by the module
structure is not loaded. The difference with SECMOD_CreateModule is the new
function handles NSS configuration parameter strings.
* SSL_GetPreliminaryChannelInfo - obtains information about a TLS channel prior
to the handshake being completed, for use with the callbacks that are invoked
during the handshake
* SSL_SignaturePrefSet - configures the enabled signature and hash algorithms
for TLS
* SSL_SignaturePrefGet - retrieves the currently configured signature and hash
algorithms
* SSL_SignatureMaxCount - obtains the maximum number signature algorithms that
can be configured with SSL_SignaturePrefSet
* NSSUTIL_ArgParseModuleSpecEx - takes a module spec and breaks it into shared
library string, module name string, module parameters string, NSS specific
parameters string, and NSS configuration parameter strings. The returned
strings must be freed by the caller. The difference with
NSS_ArgParseModuleSpec is the new function handles NSS configuration
parameter strings.
* NSSUTIL_MkModuleSpecEx - take a shared library string, module name string,
module parameters string, NSS specific parameters string, and NSS
configuration parameter string and returns a module string which the caller
must free when it is done. The difference with NSS_MkModuleSpec is the new
function handles NSS configuration parameter strings.
New Types:
* CK_TLS12_MASTER_KEY_DERIVE_PARAMS{_PTR} - parameters {or pointer} for
CKM_TLS12_MASTER_KEY_DERIVE
* CK_TLS12_KEY_MAT_PARAMS{_PTR} - parameters {or pointer} for
CKM_TLS12_KEY_AND_MAC_DERIVE
* CK_TLS_KDF_PARAMS{_PTR} - parameters {or pointer} for CKM_TLS_KDF
* CK_TLS_MAC_PARAMS{_PTR} - parameters {or pointer} for CKM_TLS_MAC
* SSLHashType - identifies a hash function
* SSLSignatureAndHashAlg - identifies a signature and hash function
* SSLPreliminaryChannelInfo - provides information about the session state
prior to handshake completion
New Macros:
* NSS_RSA_MIN_KEY_SIZE - used with NSS_OptionSet and NSS_OptionGet to set or
get the minimum RSA key size
* NSS_DH_MIN_KEY_SIZE - used with NSS_OptionSet and NSS_OptionGet to set or
get the minimum DH key size
* NSS_DSA_MIN_KEY_SIZE - used with NSS_OptionSet and NSS_OptionGet to set or
get the minimum DSA key size
* CKM_TLS12_MASTER_KEY_DERIVE - derives TLS 1.2 master secret
* CKM_TLS12_KEY_AND_MAC_DERIVE - derives TLS 1.2 traffic key and IV
* CKM_TLS12_MASTER_KEY_DERIVE_DH - derives TLS 1.2 master secret for DH (and
ECDH) cipher suites
* CKM_TLS12_KEY_SAFE_DERIVE and CKM_TLS_KDF are identifiers for additional
PKCS#12 mechanisms for TLS 1.2 that are currently unused in NSS.
* CKM_TLS_MAC - computes TLS Finished MAC
* NSS_USE_ALG_IN_SSL_KX - policy flag indicating that keys are used in TLS key
exchange
* SSL_ERROR_RX_SHORT_DTLS_READ - error code for failure to include a complete
DTLS record in a UDP packet
* SSL_ERROR_NO_SUPPORTED_SIGNATURE_ALGORITHM - error code for when no valid
signature and hash algorithm is available
* SSL_ERROR_UNSUPPORTED_SIGNATURE_ALGORITHM - error code for when an
unsupported signature and hash algorithm is configured
* SSL_ERROR_MISSING_EXTENDED_MASTER_SECRET - error code for when the extended
master secret is missing after having been negotiated
* SSL_ERROR_UNEXPECTED_EXTENDED_MASTER_SECRET - error code for receiving an
extended master secret when previously not negotiated
* SSL_ENABLE_EXTENDED_MASTER_SECRET - configuration to enable the TLS extended
master secret extension (RFC 7627)
* ssl_preinfo_version - used with SSLPreliminaryChannelInfo to indicate that a
TLS version has been selected
* ssl_preinfo_cipher_suite - used with SSLPreliminaryChannelInfo to indicate
that a TLS cipher suite has been selected
* ssl_preinfo_all - used with SSLPreliminaryChannelInfo to indicate that all
preliminary information has been set
Notable Changes:
* NSS now builds with elliptic curve ciphers enabled by default (bmo#1205688)
* NSS now builds with warnings as errors (bmo#1182667)
* The following CA certificates were Removed
- CN = VeriSign Class 4 Public Primary Certification Authority - G3
- CN = UTN-USERFirst-Network Applications
- CN = TC TrustCenter Universal CA III
- CN = A-Trust-nQual-03
- CN = USERTrust Legacy Secure Server CA
- Friendly Name: Digital Signature Trust Co. Global CA 1
- Friendly Name: Digital Signature Trust Co. Global CA 3
- CN = UTN - DATACorp SGC
- O = TÜRKTRUST Bilgi İletişim ve Bilişim Güvenliği Hizmetleri A.Ş. (c) Kasım 2005
* The following CA certificate had the Websites trust bit turned off
- OU = Equifax Secure Certificate Authority
* The following CA certificates were Added
- CN = Certification Authority of WoSign G2
- CN = CA WoSign ECC Root
- CN = OISTE WISeKey Global Root GB CA
- increased the minimum level of possible mixed installations
(softokn3, freebl3) to 3.21
- added nss-bmo1236011.patch to fix compiler error (bmo#1236011)
- disabled testsuite as it currently breaks (bmo#1236340)
* Sat Dec 19 2015 wr@rosenauer.org
- update to NSS 3.20.2 (bnc#959888)
* MFSA 2015-150/CVE-2015-7575 (bmo#1158489)
MD5 signatures accepted within TLS 1.2 ServerKeyExchange in
server signature
* Sun Oct 25 2015 wr@rosenauer.org
- update to NSS 3.20.1 (bnc#952810)
* requires NSPR 4.10.10
* MFSA 2015-133/CVE-2015-7181/CVE-2015-7182 (bmo#1192028, bmo#1202868)
memory corruption issues
* Thu Sep 24 2015 fstrba@suse.com
- Install the static libfreebl.a that is needed in order to link
Sun elliptical curves provider in Java 7.
* Thu Sep 24 2015 wr@rosenauer.org
- update to NSS 3.20
New functionality:
* The TLS library has been extended to support DHE ciphersuites in
server applications.
New Functions:
* SSL_DHEGroupPrefSet - Configure the set of allowed/enabled DHE group
parameters that can be used by NSS for a server socket.
* SSL_EnableWeakDHEPrimeGroup - Enable the use of weak DHE group
parameters that are smaller than the library default's minimum size.
New Types:
* SSLDHEGroupType - Enumerates the set of DHE parameters embedded in
NSS that can be used with function SSL_DHEGroupPrefSet.
New Macros:
* SSL_ENABLE_SERVER_DHE - A socket option user to enable or disable
DHE ciphersuites for a server socket.
Notable Changes:
* For backwards compatibility reasons, the server side implementation
of the TLS library keeps all DHE ciphersuites disabled by default.
They can be enabled with the new socket option SSL_ENABLE_SERVER_DHE
and the SSL_OptionSet or the SSL_OptionSetDefault API.
* The server side implementation of the TLS implementation does not
support session tickets when using a DHE ciphersuite (see bmo#1174677).
* Support for the following ciphersuites has been added:
- TLS_DHE_DSS_WITH_AES_128_GCM_SHA256
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
* By default, the server side TLS implementation will use DHE
parameters with a size of 2048 bits when using DHE ciphersuites.
* NSS embeds fixed DHE parameters sized 2048, 3072, 4096, 6144 and
8192 bits, which were copied from version 08 of the Internet-Draft
"Negotiated Finite Field Diffie-Hellman Ephemeral Parameters for
TLS", Appendix A.
* A new API SSL_DHEGroupPrefSet has been added to NSS, which allows a
server application to select one or multiple of the embedded DHE
parameters as the preferred parameters. The current implementation of
NSS will always use the first entry in the array that is passed as a
parameter to the SSL_DHEGroupPrefSet API. In future versions of the
TLS implementation, a TLS client might signal a preference for
certain DHE parameters, and the NSS TLS server side implementation
might select a matching entry from the set of parameters that have
been configured as preferred on the server side.
* NSS optionally supports the use of weak DHE parameters with DHE
ciphersuites to support legacy clients. In order to enable this
support, the new API SSL_EnableWeakDHEPrimeGroup must be used. Each
time this API is called for the first time in a process, a fresh set
of weak DHE parameters will be randomly created, which may take a
long amount of time. Please refer to the comments in the header file
that declares the SSL_EnableWeakDHEPrimeGroup API for additional
details.
* The size of the default PQG parameters used by certutil when
creating DSA keys has been increased to use 2048 bit parameters.
* The selfserv utility has been enhanced to support the new DHE features.
* NSS no longer supports C compilers that predate the ANSI C standard (C89).
* Thu Sep 24 2015 wr@rosenauer.org
- update to NSS 3.19.3; certstore updates only
* The following CA certificates were removed
- Buypass Class 3 CA 1
- TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı
- SG TRUST SERVICES RACINE
- TC TrustCenter Universal CA I
- TC TrustCenter Class 2 CA II
* The following CA certificate had the Websites trust bit turned off
- ComSign Secured CA
* The following CA certificates were added
- TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı H5
- TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı H6
- Certinomis - Root CA
* The version number of the updated root CA list has been set to 2.5
* Thu Sep 24 2015 fstrba@suse.com
- Install blapi.h and algmac.h that are needed in order to build
Sun elliptical curves provider in Java 7
* Wed Jun 24 2015 meissner@suse.com
- as the .chk files are contained in libfreebl3 and libsoftokn
directly, provide the -hmac alias names to help :42 building.
* Tue Jun 23 2015 wr@rosenauer.org
- update to 3.19.2
* required for Firefox 39.0
* No new functionality is introduced in this release. This release
addresses a backwards compatibility issue with the NSS 3.19.1
release.
* In NSS 3.19.1, the minimum key sizes that the freebl cryptographic
implementation (part of the softoken cryptographic module used
by default by NSS) was willing to generate or use was increased
- for RSA keys, to 512 bits, and for DH keys, 1023 bits. This
was done as part of a security fix for Bug 1138554 / CVE-2015-4000.
Applications that requested or attempted to use keys smaller
then the minimum size would fail. However, this change in behaviour
unintentionally broke existing NSS applications that need to
generate or use such keys, via APIs such as
SECKEY_CreateRSAPrivateKey or SECKEY_CreateDHPrivateKey.
* Sun May 31 2015 wr@rosenauer.org
- update to 3.19.1
No new functionality is introduced in this release. This patch
release includes a fix for the recently published logjam attack.
Notable Changes:
* The minimum strength of keys that libssl will accept for
finite field algorithms (RSA, Diffie-Hellman, and DSA) have
been increased to 1023 bits (bmo#1138554).
(MFSA 2015-70/CVE-2015-4000)
* NSS reports the bit length of keys more accurately. Thus,
the SECKEY_PublicKeyStrength and SECKEY_PublicKeyStrengthInBits
functions could report smaller values for values that have
leading zero values. This affects the key strength values that
are reported by SSL_GetChannelInfo.
* NSS incorrectly permits skipping of ServerKeyExchange
(bmo#1086145) (MFSA 2015-71/CVE-2015-2721)
* Sat May 23 2015 wr@rosenauer.org
- update to 3.19
* Firefox target release 39
New functionality:
* For some certificates, such as root CA certificates, that don't
embed any constraints, NSS might impose additional constraints,
such as name constraints. A new API has been added that allows
to lookup imposed constraints.
* It is possible to override the directory in which the NSS build
system will look for the sqlite library.
New Functions:
* CERT_GetImposedNameConstraints
Notable Changes:
* The SSL 3 protocol has been disabled by default.
* NSS now more strictly validates TLS extensions and will fail a
handshake that contains malformed extensions.
* Fixed a bug related to the ordering of TLS handshake messages.
* In TLS 1.2 handshakes, NSS advertises support for the SHA512
hash algorithm, in order to be compatible with TLS servers
that use certificates with a SHA512 signature.
* Thu Apr 23 2015 wr@rosenauer.org
- update to 3.18.1
* Firefox target release 38
* No new functionality is introduced in this release.
Notable Changes:
* The following CA certificate had the Websites and Code Signing
trust bits restored to their original state to allow more time
to develop a better transition strategy for affected sites:
- OU = Equifax Secure Certificate Authority
* The following CA certificate was removed:
- CN = e-Guven Kok Elektronik Sertifika Hizmet Saglayicisi
* The following intermediate CA certificate has been added as
actively distrusted because it was mis-used to issue certificates
for domain names the holder did not own or control:
- CN=MCSHOLDING TEST, O=MCSHOLDING, C=EG
* The version number of the updated root CA list has been set
to 2.4
* Fri Apr 03 2015 wr@rosenauer.org
- update to 3.18
* Firefox target release 38
New functionality:
* When importing certificates and keys from a PKCS#12 source,
it's now possible to override the nicknames, prior to importing
them into the NSS database, using new API
SEC_PKCS12DecoderRenameCertNicknames.
* The tstclnt test utility program has new command-line options
- C, -D, -b and -R.
Use -C one, two or three times to print information about the
certificates received from a server, and information about the
locally found and trusted issuer certificates, to diagnose
server side configuration issues. It is possible to run tstclnt
without providing a database (-D). A PKCS#11 library that
contains root CA certificates can be loaded by tstclnt, which
may either be the nssckbi library provided by NSS (-b) or
another compatible library (-R).
New Functions:
* SEC_CheckCrlTimes
* SEC_GetCrlTimes
* SEC_PKCS12DecoderRenameCertNicknames
New Types:
* SEC_PKCS12NicknameRenameCallback
Notable Changes:
* The highest TLS protocol version enabled by default has been
increased from TLS 1.0 to TLS 1.2. Similarly, the highest DTLS
protocol version enabled by default has been increased from
DTLS 1.0 to DTLS 1.2.
* The default key size used by certutil when creating an RSA key
pair has been increased from 1024 bits to 2048 bits.
* The following CA certificates had the Websites and Code Signing
trust bits turned off:
- Equifax Secure Certificate Authority
- Equifax Secure Global eBusiness CA-1
- TC TrustCenter Class 3 CA II
* The following CA certificates were added:
- Staat der Nederlanden Root CA - G3
- Staat der Nederlanden EV Root CA
- IdenTrust Commercial Root CA 1
- IdenTrust Public Sector Root CA 1
- S-TRUST Universal Root CA
- Entrust Root Certification Authority - G2
- Entrust Root Certification Authority - EC1
- CFCA EV ROOT
* The version number of the updated root CA list has been set
to 2.3
- add the changes file as source so the .src.rpm builds (used for
fake build time)
* Sat Jan 31 2015 wr@rosenauer.org
- update to 3.17.4
* Firefox target release 36
Notable Changes:
* bmo#1084986: If an SSL/TLS connection fails, because client and
server don't have any common protocol version enabled,
NSS has been changed to report error code
SSL_ERROR_UNSUPPORTED_VERSION (instead of reporting
SSL_ERROR_NO_CYPHER_OVERLAP).
* bmo#1112461: libpkix was fixed to prefer the newest certificate,
if multiple certificates match.
* bmo#1094492: fixed a memory corruption issue during failure of
keypair generation.
* bmo#1113632: fixed a failure to reload a PKCS#11 module in FIPS
mode.
* bmo#1119983: fixed interoperability of NSS server code with a
LibreSSL client.
* Sat Dec 06 2014 wr@rosenauer.org
- update to 3.17.3
New functionality:
* Support for TLS_FALLBACK_SCSV has been added to the ssltap and
tstclnt utilities
Notable Changes:
* The QuickDER decoder now decodes lengths robustly
(CVE-2014-1569)
* The following 1024-bit CA certificates were removed:
- GTE CyberTrust Global Root
- Thawte Server CA
- Thawte Premium Server CA
- America Online Root Certification Authority 1
- America Online Root Certification Authority 2
* The following CA certificates had the Websites and Code Signing
trust bits turned off:
- Class 3 Public Primary Certification Authority - G2
- Equifax Secure eBusiness CA-1
* The following CA certificates were added:
- COMODO RSA Certification Authority
- USERTrust RSA Certification Authority
- USERTrust ECC Certification Authority
- GlobalSign ECC Root CA - R4
- GlobalSign ECC Root CA - R5
* the version number of the updated root CA list has been set
to 2.2
* Thu Oct 16 2014 wr@rosenauer.org
- update to 3.17.2
Bugfix release
* bmo#1049435 - Importing an RSA private key fails if p < q
* bmo#1057161 - NSS hangs with 100% CPU on invalid EC key
* bmo#1078669 - certutil crashes when using the --certVersion parameter