Niels Möller
Mul on hea meel teatada, et on vĂ€lja antud uus suur versioon GNU Nettle'i, madala taseme krĂŒptograafiliste funktsioonide teeki. See vĂ€ljalase sisaldab mitmeid API muudatusi, millest mĂ”ned on ĂŒsna olulised, samuti vananenud funktsioonide eemaldamine. Ăks silmapaistvamaid uusi funktsioone on SLH-DSA allkirjade tugi (riigile mittejĂ€rgiva hash-pĂ”hise digitaalse allkirja algoritm).
See on uus suur vÀljalase. See sisaldab SLH-DSA tuge. Nettle'i API-s on tehtud mitmeid muudatusi ja vananenud funktsioonid on eemaldatud. Samuti on paranenud ABI, mille tÔttu jÀi API praktiliselt muutumatuks, eelkÔige on mitme algoritmi konteksti struktuurid vÀhendatud...
Muudatused:
- Digest-funktsioonide, MAC-i ja AEAD-i puhul ei aktsepteeri enam soovitud digest'i suurust argumendina, selle asemel annavad nad alati vĂ€lja tĂ€ieliku suurusega digest'i. Vastavalt on muutunud ka nettle_hash_digest_func tĂŒĂŒp.
- CCM AES-i abil tĂ€ielike sĂ”numite töötlemiseks mĂ”eldud funktsioonid vĂ”tavad nĂŒĂŒd esimese argumendina pĂŒsiva krĂŒptimise konteksti. NĂ€iteks on funktsiooni ccm_aes128_encrypt_message esimene argument nĂŒĂŒd pĂŒsiv struktuur aes128_ctx*. Varem oli see struktuur ccm_aes128_ctx*, milles ignoreeriti kĂ”ike peale pĂ”hikryptimise konteksti.
- SHA3 funktsioonid kasutavad nĂŒĂŒd sama struktuuri sha3_ctx kĂ”ikide hash'ide variantide jaoks, samuti sama funktsiooni sha3_init. Vanad nimed, nĂ€iteks sha3_256_ctx ja sha3_256_init, on mÀÀratud eelneva ĂŒhilduvuse tagamiseks makrodesse.
- Funktsioonide base16_decode_update ja base64_decode_update argumendiks dst_length on nĂŒĂŒd samaaegselt sisend- ja vĂ€ljundargument. Sisendina peab see sisaldama sihtbuffri suurust, dekodeerimine ebaĂ”nnestub, kui see suurus on ebapiisav. Varem oli dst_length ainult vĂ€ljundargument ja sihtbuffri suurus pidi olema piisavalt suur igasuguste sisendi vÀÀrtuste jaoks, mille pikkus on mÀÀratud src_length.
Allikas: linux.org.ru
