Нашри китобхонаи криптографии Ботан 3.0.0

Китобхонаи криптографии Botan 3.0.0 ҳоло барои истифода дар лоиҳаи NeoPG дастрас аст, як штангаи GnuPG 2. Китобхона маҷмӯаи калони примитивҳои тайёрро, ки дар протоколи TLS истифода мешаванд, сертификатҳои X.509, рамзҳои AEAD, модулҳои TPM пешкаш мекунад. , PKCS # 11, ҳашинг парол ва криптографияи пас аз квантӣ (имзоҳо дар асоси ҳаш ва созишномаи калидӣ дар асоси McEliece). Китобхона дар C++ навишта шудааст ва таҳти иҷозатномаи BSD паҳн карда мешавад.

Дар байни тағйирот дар версияи нав:

  • Пойгоҳи код имкон медиҳад, ки стандарти C++20 истифода шавад (қаблан C++11 истифода мешуд); мувофиқан, талабот ба компиляторҳо зиёд карда шудааст - ҳоло ҳадди аққал GCC 11, Clang 14 ё MSVC 2022 барои васлкунӣ заруранд. барои компиляторҳои HP ва Pathscale, инчунин лоиҳаҳои Google NaCL ва IncludeOS қатъ карда шуданд.
  • Қисми зиёди тағирот ворид карда шуданд, ки мутобиқати ақибро вайрон мекунанд. Бисёр файлҳои сарлавҳаи кӯҳна тоза карда шуданд, масалан, онҳое, ки ба алгоритмҳои муайян хосанд (aes.h ва ғайра). Амалисозии функсияҳо ва алгоритмҳои қаблан кӯҳна эълоншуда хориҷ карда шуданд (CAST-256, MISTY1, Kasumi, DESX, XTEA, PBKDF1, MCEIES, CBC-MAC, Tiger, NEWHOPE, CECPQ1). Ҳангоми тавлиди энтропия барои генератори рақамҳои псевдорандом, мо истифодаи /proc ва /dev/randomро қатъ кардем. Баъзе синфҳо (масалан, Data_Store), сохторҳо ва рӯйхатҳо аз API хориҷ карда шудаанд. Бозгашт ва истифодаи аломатҳои бараҳна ба қадри имкон қатъ карда шуд.
  • Дастгирии иловашуда барои протоколи TLS 1.3. Дастгирии TLS 1.0, TLS 1.1 ва DTLS 1.0 қатъ карда шуд. Дастгирии DSA, SRP, SEED, AES-128 OCB, CECPQ1, DHE_PSK ва Camellia CBC сюитҳои рамзгузорӣ, рамзҳои беном ва хэшҳои SHA-1 аз татбиқи TLS хориҷ карда шуданд.
  • Дастгирии иловашуда барои алгоритми криптографияи пас аз квантии Kyber, ки ба қувваи бераҳмона дар компютери квантӣ тобовар аст.
  • Дастгирии иловагии алгоритми криптографияи пас аз квантии Dilithium барои кор бо имзоҳои рақамӣ.
  • Дастгирии иловашуда барои формати нуқтаҳои эллиптикӣ бо истифода аз техникаи SSWU (draft-irtf-cfrg-hash-to-curve).
  • Дастгирии иловашуда барои функсияи хэш криптографии BLAKE2b.
  • Интерфейси нави барномасозии T::new_object пешниҳод шудааст, ки беназир_ptr-ро бармегардонад ба чои нишондихандаи «Т*.
  • Функсияҳои нав ва API илова карда шуданд: X509_DN :: DER_encode, Public_Key :: get_int_field, ideal_granularity, requires_entire_message, SymmetricAlgorithm ::has_keying_material. Маҷмӯи зиёди функсияҳои нав барои истифода дар коди C (C89) илова карда шуд.
  • Татбиқи алгоритми Argon2 дастурҳои AVX2-ро истифода мебарад.
  • Андозаи ҷадвалҳо дар татбиқи алгоритмҳои Camellia, ARIA, SEED, DES ва Whirlpool кам карда шуд.
  • Татбиқи нави DES/3DES пешниҳод карда мешавад, ки аз аксари синфҳои ҳамлаҳои паҳлӯӣ, ки ҳолати кэшро арзёбӣ мекунанд, ҳифз шудааст.
  • Амалисозии SHACAL2 барои системаҳо дар асоси меъмории ARMv8 ва POWER оптимизатсия карда шудааст.
  • Рамзи ҳисобкунии битҳои паритет, табдили bcrypt/base64 ва муайян кардани навъи сатри ASN.1 аз ҷустуҷӯҳои ҷадвал озод карда шудааст ва ҳоло аз маълумоти коркардшаванда мустақил аст (дар вақти доимӣ кор мекунад)

Манбаъ: opennet.ru

Илова Эзоҳ