Botan Cryptographic Library Release 3.0.0

Die Botan 3.0.0 kriptografiese biblioteek wat deur die NeoPG-projek gebruik word, 'n vurk van GnuPG 2, is nou beskikbaar. Die biblioteek verskaf 'n groot versameling out-of-the-box primitiewe wat gebruik word in die TLS-protokol, X.509-sertifikate, AEAD syfers, TPM-modules, PKCS#11, wagwoord-hashing en post-kwantumkriptografie (hash-gebaseerde handtekeninge en McEliece-gebaseerde sleutelooreenkoms). Die biblioteek is in C++ geskryf en is onder die BSD-lisensie gelisensieer.

Onder die veranderinge in die nuwe weergawe:

  • Die kodebasis word toegelaat om onderskeidelik die C++20-standaard te gebruik (voorheen is C++11 gebruik), die vereistes vir samestellers is verhoog - nou word ten minste GCC 11, Clang 14 of MSVC 2022 benodig vir samestelling. HP- en Pathscale-samestellers is gestaak, sowel as Google NaCL- en IncludeOS-projekte.
  • 'n Groot deel van die veranderinge wat terugwaartse versoenbaarheid skend, is gemaak. Verwyder baie verouderde koplΓͺers, soos diΓ© spesifiek vir sekere algoritmes (aes.h, ens.). Verwyder implementerings van funksies en algoritmes wat voorheen afgekeur is (CAST-256, MISTY1, Kasumi, DESX, XTEA, PBKDF1, MCEIES, CBC-MAC, Tiger, NEWHOPE, CECPQ1). Wanneer entropie vir die pseudo-ewekansige getalgenerator gegenereer word, is die gebruik van /proc en /dev/random gestaak. Sommige klasse (byvoorbeeld Data_Store), strukture en opsommings is van die API verwyder. Terugsendings en die gebruik van blote wysers is gestaak waar moontlik.
  • Bygevoeg ondersteuning vir TLS 1.3 protokol. Ondersteuning vir TLS 1.0, TLS 1.1 en DTLS 1.0 is laat vaar. Ondersteuning vir DSA, SRP, SEED, AES-128 OCB, CECPQ1, DHE_PSK en Camellia CBC-syferreekse, anonieme syfers, SHA-1-hashes is uit die TLS-implementering verwyder.
  • Bygevoeg ondersteuning vir die Kyber post-kwantum kriptografie algoritme, wat bestand is teen seleksie op 'n kwantum rekenaar.
  • Bygevoeg ondersteuning vir die Dilithium post-kwantum kriptografie algoritme vir die werk met digitale handtekeninge.
  • Bygevoeg ondersteuning vir punt-op-elliptiese kurwe hashing met behulp van die SSWU (draft-irtf-cfrg-hash-to-curve) tegniek.
  • Bygevoeg ondersteuning vir BLAKE2b kriptografiese hash-funksie.
  • Voorgestelde nuwe API T::new_object gee unieke_ptr terug in plaas van 'n kaal "T*" wyser.
  • Nuwe funksies en API's bygevoeg: X509_DN::DER_encode, Public_Key::get_int_field, ideal_granularity, requires_entire_message, SymmetricAlgorithm::has_keying_material. 'n Groot stel nuwe funksies is bygevoeg vir gebruik in C-kode (C89).
  • Die implementering van die Argon2-algoritme gebruik AVX2-instruksies.
  • Verminderde tafelgrootte in Camellia-, ARIA-, SEED-, DES- en Whirlpool-implementerings.
  • 'n Nuwe implementering van DES/3DES word voorgestel wat beskerm word teen die meeste klasse van sykanaalaanvalle wat die toestand van die kas evalueer.
  • Die SHACAL2-implementering is geoptimaliseer vir stelsels gebaseer op die ARMv8- en POWER-argitekture.
  • Die kode vir die berekening van pariteitbisse, die omskakeling van bcrypt / base64 en die bepaling van die tipe ASN.1-string is vry van tabelopsoeke en is nou onafhanklik van die data wat verwerk word (konstante tyd word uitgevoer)

Bron: opennet.ru

Voeg 'n opmerking