Nettle (cryptographic library)
From Wikipedia, the free encyclopedia
| Nettle | |
|---|---|
| Developer | Niels Möller |
| Stable release | |
| Repository | |
| Written in | C |
| Type | Cryptographic library |
| License | LGPLv3, GPLv2, GPLv3 |
| Website | lysator |
Nettle is a cryptographic library designed to fit easily in a wide range of toolkits and applications. It began as a collection of low-level cryptography functions from lsh in 2001.[2] Since June 2009 (version 2.0) Nettle is a GNU package.[3]
Since version 3, nettle provides
- the AES block cipher - a subset of Rijndael, with assembly optimizations for x86 and sparc
- the ARCFOUR, also known as RC4 stream cipher, with x86 and sparc assembly
- the ARCTWO, also known as RC2, stream cipher
- BLOWFISH,
- CAMELLIA, with x86 and x86_64 assembly optimizations
- CAST-128
- DES and
- 3DES block ciphers
- the ChaCha stream cipher, with assembly for x86_64
- GOSTHASH94
- the MD2, MD4 and MD5 with x86 assembly digests
- the PBKDF2 key derivation function
- the POLY1305 with assembly for x86_64 and UMAC message authentication codes
- RIPEMD160
- the Salsa20 stream cipher with assembly for x86_64 and ARM
- the SERPENT block cipher with assembly for x86_64
- SHA-1 with x86, x86_64 and ARM assembly
- the SHA-2 (SHA-224, SHA-256, SHA-384, and SHA-512) digests
- SHA-3 a subset of the Keccak digest family
- the TWOFISH block cipher
- RSA
- DSA and ECDSA public-key algorithms
- the Yarrow pRNG
Version 3.1 introduced support for Curve25519 and EdDSA operations.[4] The public-key algorithms use GMP.[5]
Nettle is used by