Niels Möller
Jeg er glad for at annoncere en ny stor udgivelse af GNU Nettle, et lavniveaubibliotek for kryptografiske funktioner. Denne udgivelse inkluderer flere API-ændringer, hvoraf nogle er ganske betydelige, samt fjernelse af forældede funktioner. En bemærkelsesværdig ny funktion er understøttelsen af SLH-DSA signaturer (en digital signaturalgoritme baseret på tilstandsløs hashing).
Dette er en ny stor udgivelse. Den inkluderer understøttelsen af SLH-DSA. Der er foretaget flere ændringer i Nettle API'et, og forældede funktioner er blevet fjernet. Derudover er ABI forbedret, hvilket betyder, at API'et stort set er forblevet uændret, spécifikt er kontekststrukturerne for en række algoritmer blevet reduceret...
Ændringer:
- I _digest -funktionerne i hashing-algoritmer, MAC og AEAD tager man ikke længere ønsket størrelse på digests som argument; de returnerer i stedet altid digests af fuld størrelse. Derfor er typen nettle_hash_digest_func også blevet ændret.
- Funktioner til behandling af fulde meddelelser ved hjælp af CCM AES accepterer nu en konstant krypteringskontekst som det første argument. For eksempel er det første argument til funktionen ccm_aes128_encrypt_message nu en konstant struktur aes128_ctx*. Tidligere var det en struktur ccm_aes128_ctx*, der ignorerede alt bortset fra den grundlæggende krypteringskontekst.
- Nu bruger SHA3-funktionerne den samme struktur sha3_ctx for alle hash-varianter samt den samme funktion sha3_init. De gamle navne, såsom sha3_256_ctx og sha3_256_init, er defineret som præprocessor-aliasser for at sikre bagudkompatibilitet.
- Argumentet dst_length for funktionerne base16_decode_update og base64_decode_update er nu både et indgangs- og udgangsargument. Det skal indeholde størrelsen på target-bufferet, dekodningen vil mislykkes, hvis denne størrelse ikke er tilstrækkelig. Tidligere var dst_length kun et udgangsargument, og det var nødvendigt, at target-bufferet var stort nok til enhver indgangsværdi med en given længde src_length.
Kilde: linux.org.ru
