Niels Möller
Z veseljem napovedujem novo veliko izdajo GNU Nettle, nizkonivojske knjižnice kriptografskih funkcij. Ta izdaja vključuje več sprememb API, od katerih so nekatere precej pomembne, ter odstranitev zastarelih funkcij. Ena opazna nova funkcija je podpora za SLH-DSA podpise (algoritem digitalnega podpisa na osnovi hashe brez ohranjanja stanja).
To je nova velika izdaja. Vključuje podporo za SLH-DSA. Uvedenih je bilo nekaj sprememb v API-ju Nettle in odstranjene so zastarele funkcije. Poleg tega je izboljšan ABI, zaradi česar je API ostal skoraj nespremenjen, zlasti pa so zmanjšane kontekstne strukture za nekatere algoritme...
Spremembe:
- V funkcijah _digest heš algoritmov, MAC in AEAD ne sprejemajo več želenega velikosti digest kot argument, namesto tega vedno vrnejo digest polne velikosti. Posledično je bil spremenjen tudi tip nettle_hash_digest_func.
- Funkcije za obdelavo celotnih sporočil z uporabo CCM AES zdaj sprejemajo kot prvi argument konstantni kontekst šifriranja. Na primer, prvi argument funkcije ccm_aes128_encrypt_message je zdaj konstantna struktura aes128_ctx*. Prej je bila to struktura ccm_aes128_ctx*, ki je ignorirala vse razen osnovnega konteksta šifriranja.
- Zdaj funkcije SHA3 uporabljajo enako strukturo sha3_ctx za vse različice heša, pa tudi enako funkcijo sha3_init. Stara imena, kot so sha3_256_ctx in sha3_256_init, so opredeljena kot predprocesorski aliasi za zagotavljanje združljivosti nazaj.
- Argument dst_length funkcij base16_decode_update in base64_decode_update je zdaj hkrati vhodni in izhodni argument. Na vhodu mora vsebovati velikost ciljne predpomnilnika; dekodiranje bo neuspešno, če ta velikost ni zadostna. Prej je bil dst_length samo izhodni argument in zahtevalo se je, da je ciljni predpomnilnik dovolj velik za katero koli vhodno vrednost določene dolžine src_length.
Izvor: linux.org.ru
