Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

libnettle9-4.0-1.1 RPM for i586

From OpenSuSE Ports Tumbleweed for i586

Name: libnettle9 Distribution: openSUSE Tumbleweed
Version: 4.0 Vendor: openSUSE
Release: 1.1 Build date: Fri Feb 6 10:00:52 2026
Group: System/Libraries Build host: reproducible
Size: 426979 Source RPM: libnettle-4.0-1.1.src.rpm
Packager: http://bugs.opensuse.org
Url: https://www.lysator.liu.se/~nisse/nettle/
Summary: Cryptographic Library
Nettle is a cryptographic library that is designed to fit easily in more or
less any context: In crypto toolkits for object-oriented languages (C++,
Python, Pike, ...), in applications like LSH or GNUPG, or even in kernel space.

Provides

Requires

License

LGPL-2.1-or-later

Changelog

* Fri Feb 06 2026 Pedro Monreal <pmonreal@suse.com>
  - Update to 4.0: (bsc#1257934)
    * NEWS for the Nettle 4.0 release:
    - This is a new major release. It includes one new feature,
      support for SLH-DSA. There are several changes to Nettle's
      API, as well as deletion of obsolete features. There are also
      several improvements to the ABI that leaves the API mostly
      unchanged, in particular, smaller context structs for several
      algorithms.
      The most disruptive API change is that the *_digest functions
      no longer takes the desired digest size as argument. Truncated
      hashes appeared to be an important use case decades ago when
      the previous interface was designed, but that is now rather
      obscure.
      Feedback on the new interfaces is appreciated, e.g., if the
      variable tag length for OCB and CCM should be supported
      differently, if additional types would benefit from larger
      alignment, or if there are remaining interface bugs or
      inconsistencies. Smaller additional API or ABI changes may be
      considered for the next release, Nettle-4.1, but after that,
      the intention is that both ABI and API should stay backwards
      compatible for a longer time.
      The shared library names are libnettle.so.9.0 and
      libhogweed.so.7.0, with new sonames libnettle.so.9 and
      libhogweed.so.7.
    * Interface changes:
    - The _digest functions for hash algorithms, MACs and AEADs no
      longer take the desired digest size as argument, instead,
      they always produce the full-size digest. The typedef
      nettle_hash_digest_func has also been changed accordingly.
      There are two exceptions: CCM and OCB. These AEAD algorithms
      are specified with a variable tag length, which is not a
      mere truncation of the output. Their _digest functions
      (ccm_digest, ocb_digest, ccm_ae128_digest, ...) also have
      their length argument deleted, but they still produce a
      variable size digest. The number of octets to write (at most
      16) is stored into the context struct by the corresponding
      _set_nonce function.
    - The functions to process complete messages using CCM AES now
      take a const cipher context as the first argument, e.g,
      first argument to ccm_aes128_encrypt_message is now a const
      struct aes128_ctx *. It used to be a struct ccm_aes128_ctx
    * , where everything but the underlying cipher context was
      ignored.
    - The SHA3 functions now use the same struct sha3_ctx for all
      flavors, and the same function sha3_init. Old names, e.g.,
      sha3_256_ctx and sha3_256_init, are defined as preprocessor
      aliases, for backwards compatibility.
    - The dst_length argument to base16_decode_update and
      base64_decode_update is now both an input and output
      argument. On input it must now hold the size of the
      destination buffer, and decoding fails if that is not
      sufficient. Previously, dst_length was an output only, and
      it was required that the destination buffer was large enough
      for any input of the given src_length.
    * Interface deletions:
    - Deleted the old struct aes_ctx, and all functions operating
      on it. Use the fixed key size interfaces instead, e.g.,
      struct aes256_ctx, introduced in Nettle-3.0.
    - Deleted dsa-compat.h, and everything declared therein. Use
      the interface in dsa.h, introduced in Nettle-3.0.
    - Deleted old header sha.h. Use sha1.h or sha2.h instead, as
      appropriate.
    - Deleted the general HMAC interface, with functions like
      hmac_set_key that work with an arbitrary underlying hash
      function. Use the specific hmac functions instead, e.g.,
      hmac_sha256_set_key, or the mac abstraction defined in
      nettle-meta.h, e.g, the nettle_hmac_sha256 instance.
    - Deleted the undocumented struct nettle_armor abstraction.
    - Deleted the undocumented function base64_encode_group.
    - Deleted md5-compat.h, and everything declared therein. Use
      the interface in md5.h instead (or even better, stop using md5).
    - Deleted pgp.h, and everything declared therein. This attempt
      to support openpgp formats was incomplete, undocumented, and
      mostly obsolete.
    - Delete all the *_DATA_SIZE compatibility aliases. Use
      corresponding *_BLOCK_SIZE constants instead, introduced in
      Nettle-3.0.
    - Deleted the obsolete functions _rsa_blind and _rsa_unblind.
      (Current RSA blinding in Nettle uses internal functions with
      a different interface).
    - Delete compatibility aliases salsa20_set_iv,
      SALSA20_IV_SIZE. These were renamed to salsa20_set_nonce and
      SALSA20_NONCE_SIZE in Nettle-3.0.
    - Deleted compatibility aliases _nettle_md5_compress,
      _nettle_sha1_compress. These internal functions were
      promoted to documented and supported functions in
      Nettle-3.9, with new names md5_compress and sha1_compress.
    - Deleted compatibility alias yarrow_force_reseed. Renamed to
      yarrow_slow_reseed in Nettle-2.0.
    * ABI changes and improvements:
    - Introduce 16-byte alignment on certain types. Applied to
      union nettle_block16, and subkey arrays of AES and UMAC.
      This is intended to improve performance for SIMD load and
      store instructions, which on some platforms may be faster
      with proper alignment. The larger alignment is enabled only
      for platforms where the alignment of the uint64_t type is 8.
    - Size of struct gcm_key is reduced from 4096 bytes to 2048.
    - Size of the new sha3_ctx is considerable smaller, 216 bytes,
      than the previous types that included a buffer for a
      complete block. E.g., the largest one, for sha3_128_ctx
      (shake128), used to be 376 bytes.
    - Size of HMAC contexts have been reduced, by not including
      multiple block buffers. E.g, size of struct hmac_sha256_ctx
      reduced from 336 bytes to 192. This change has been
      discussed for a long time, with first attempt made by Dmitry
      Baryshkov years ago, but delayed, since it implies an ABI
      break.
    - For OCB block counters, use type uint32_t for blocks of
      associated data, and uint64_t for message blocks, instead of
      size_t. This makes the implementation limits the same for
      32-bit and 64-bit platforms.
    * Bug fixes:
    - Fix off-by-one bug in sexp parser, which could result in a
      one byte overread on invalid input. Also fix excessive
      recursion and stack usage for some inputs. Both problems
      reported via oss-fuzz.
    - Fix ed448_shake256_verify to check that the final signature
      octet is zero (previous versions completely ignored this
      somewhat redundant octet). Reported by Oren Yomtov.
    * New features:
    - Support for SLH-DSA signatures (stateless hash-based digital
      signature algorithm). See the Nettle manual for details.
    - New public function drbg_ctr_aes256_update, to enable
      FIPS-compliant reseeding. Contributed by Daiki Ueno.
    * Configure and build changes:
    - Support for at least C99 is required when building Nettle.
      In addition, support for alignof and alignas is required;
      these are part of C11, but intention is that this is the
      only required C11 feature.
    - The unusual configure options --with-lib-path and
    - -with-include-path has been deleted. Use CFLAGS and LDFLAGS
      instead. This implies that Nettle's configure script no
      longer attempts to add rpath-related linker flags
      automagically; if any are needed, they must be passed in
      LDFLAGS.
    - The logic to sometimes change the default libdir has been
      deleted. Previously, configure tried to be helpful and
      change the default, e.g., to ${exec_prefix}/lib32 when you
      build 32-bit libraries on a system where ${exec_prefix}/lib
      is for 64-bit libraries. If you relied on this behavior, you
      now have to use the --libdir configure option.
    - Rearranged getopt files, now based on gnulib copies.
* Sun Jun 29 2025 Andreas Stieger <andreas.stieger@gmx.de>
  - update to 3.10.2:
    * Fix missing prototypes in getopt.h and getopt.c
    * For powerpc64, avoid using v9 (ISA v3.0) instructions lxvb16x,
      lxv and stxv in powerpc64/p8/ files.
    * For powerpc64, add configure check for __VSX__, and disable
      use of assembly if not defined. Nettle's powerpc64 assembly
      requires at least v7 (ISA v2.06)
  - drop libnettle-powerpc64-skip-AES-GCM-test.patch
* Thu Jan 09 2025 Pedro Monreal <pmonreal@suse.com>
  - Disable the gcm regression test as it fails in virtual
    environments for the ppc64le architecture.
    * Add libnettle-powerpc64-skip-AES-GCM-test.patch
* Thu Jan 02 2025 Pedro Monreal <pmonreal@suse.com>
  - Update to nettle 3.10.1:
    * Bug fixes:
    - Fix buffer overread in the new sha256 assembly for
      powerpc64, as well as a stack alignment issue.
    - Added missing nettle_mac structs for hmac-gosthash.
    - Fix configure test for valgrind, to not attempt to run
      valgrind on executables built using memory sanitizers.
    * Enable back the gcm regression test:
    - Remove libnettle-powerpc64-skip-AES-GCM-test.patch
    * Remove patches upstream:
    - libnettle-powerpc64-sha256-fix-loading-overreads.patch
    - libnettle-powerpc64-sha256-adjust-stack-offset-for-non-volatile-registers.patch
    - libnettle-powerpc64-remove-m4_unquote-sha256.patch
* Tue Dec 03 2024 Pedro Monreal <pmonreal@suse.com>
  - ppcl64le: POWER10 performance enhancements for cryptography [jsc#PED-9904]
    * powerpc64/sha256: fix loading overreads by loading less and shifting
    * powerpc64/sha256: adjust stack offset for storing non-volatile registers
    * powerpc64: remove use of m4_unquote in the load step for sha256
    * Temporarily skip the gcm test: libnettle-powerpc64-skip-AES-GCM-test.patch
    * Add patches:
    - libnettle-powerpc64-sha256-fix-loading-overreads.patch
    - libnettle-powerpc64-sha256-adjust-stack-offset-for-non-volatile-registers.patch
    - libnettle-powerpc64-remove-m4_unquote-sha256.patch
* Mon Jun 17 2024 Pedro Monreal <pmonreal@suse.com>
  - Update to 3.10:
    * Bug fixes:
    - Add missing hash functions sha512_224 and sha512_256 to the
      nettle_get_hashes() list. The name values in the
      corresponding nettle_hash structs also changed to use
      underscore instead of dash, for consistency.
    - Fix a few cases of formally undefined calls to memcpy(dst,
      NULL, 0), resulting from valid calls to, e.g.,
      sha256_update(ctx, 0, NULL).
    * New features:
    - Support RSA-OAEP encryption. Contributed by Nicolas Mora and Daiki Ueno.
    - New function sha3_256_shake_output, new functions
      sha3_128_init, sha3_128_update, sha3_128_shake,
      sha3_128_shake_output. Contributed by Daiki Ueno.
    - Added DRBG-CTR with AES256, contributed by Simon Josefsson.
    * Optimizations:
    - New combined gcm-aes assembly for powerpc64, contributed by Danny Tsen.
    - New sha256 assembly for powerpc64, contributed by Eric Richter.
    - Improved performance for powerpc64 AES decrypt, by skipping
      subkey transformations that don't suit the vncipher instructions.
    - Add arm64 CPU feature detection for Android and for Apple systems,
      contributed by Foolbar and Tim Kosse, prespectively.
    * Miscellaneous:
    - New tests for side-channel silence, based on valgrind.
    - Delete all md5 assembly code. Delete all sparc32 assembly code.
* Fri Jun 09 2023 Pedro Monreal <pmonreal@suse.com>
  - Add the architecture specific READMEs as provided by upstream.
* Thu Jun 08 2023 Pedro Monreal <pmonreal@suse.com>
  - Include the nettle library manual in HTML and PDF formats in
    the devel package.
* Wed Jun 07 2023 Andreas Stieger <andreas.stieger@gmx.de>
  - update to 3.9.1: [bsc#1212112, CVE-2023-36660]
    * Fix bug in the new OCB code may be exploitable for denial of
      service or worse due to memory corruption
* Mon May 15 2023 Andreas Stieger <andreas.stieger@gmx.de>
  - update to 3.9
    * rewrite of the C and plain x86_64 assembly implementations of
      GHASH to use precomputed tables in a different way, with tables
      always accessed in the same sequential manner. This should make
      Nettle's GHASH implementation side-channel silent on all
      platforms, but considerably slower on platforms without carry-
      less mul instructions. E.g., benchmarks of the C implementation
      on x86_64 showed a slowdown of 3 times.
    * Fix bug in ecdsa and gostdsa signature verify operation, for
      the unlikely corner case that point addition really is point
      duplication.
    * Fix for chacha on Power7, nettle's assembly used an instruction
      only available on later processors
    * Add support for the SM4 block cipher
    * Add support for the Balloon password hash
    * Add support for SIV-GCM authenticated encryption mode
    * Add support for OCB authenticated encryption mode.
    * New exported functions md5_compress, sha1_compress,
      sha256_compress, sha512_compress
    * multiple performance optimizations
    * Delete all arcfour assembly code. Affects 32-bit x86, 32-bit
      and 64-bit sparc
* Wed Mar 08 2023 Martin Pluskal <mpluskal@suse.com>
  - Build AVX2 enabled hwcaps library for x86_64-v3

Files

/usr/lib/.libnettle.so.9.hmac
/usr/lib/libnettle.so.9
/usr/lib/libnettle.so.9.0
/usr/share/licenses/libnettle9
/usr/share/licenses/libnettle9/COPYING.LESSERv3
/usr/share/licenses/libnettle9/COPYINGv2
/usr/share/licenses/libnettle9/COPYINGv3


Generated by rpm2html 1.8.1

Fabrice Bellet, Sat Oct 10 03:12:27 2026