NaCl (dasturiy ta'minot) - NaCl (software) - Wikipedia

NaCl
Asl muallif (lar)Daniel J. Bernshteyn, Tanja Lange, Piter Shvabe
Dastlabki chiqarilish2008; 12 yil oldin (2008)
Barqaror chiqish
20110221/2011 yil 21-fevral; 9 yil oldin (2011-02-21)
Operatsion tizimUNIXga o'xshash
Litsenziyajamoat mulki[1]
Veb-saytnacl.cr.yp.to

NaCl ("tuz" deb talaffuz qilinadi) "Tarmoq va kriptografiya kutubxonasi" ning qisqartmasi bo'lib, a jamoat mulki "... tarmoq aloqasi, shifrlash, parol hal qilish, imzolar va boshqalar uchun yuqori tezlikda ishlaydigan dasturiy ta'minot kutubxonasi".[2]

NaCl matematik va dasturchi tomonidan yaratilgan Daniel J. Bernshteyn yaratilishi bilan eng taniqli kim qmail va Egri chiziq 25519. Asosiy tarkibga shuningdek kiradi Tanja Lange[3] va Piter Shvabe.[4] NaCl ni yaratishda asosiy maqsad, gazetada yozilishicha, "avvalgi kriptografik kutubxonalar tomonidan zarar ko'rgan turli xil kriptografik ofatlardan saqlanish".[1]

Asosiy funktsiyalar

Ochiq kalitli kriptografiya

Yashirin kalitli kriptografiya

Past darajadagi funktsiyalar

  • Iplarni taqqoslash.[7]

Kalitni chiqarish funktsiyasi (faqat libsodyum)

  • Parol yordamida xeshlash argon2

Amaliyotlar

Ma'lumotni amalga oshirish yozilgan C, ko'pincha bir nechta inline assembler. C ++ va Python o'ralgan holda ishlov beriladi.[8]

NaCl dasturlash tilining turli xil birikmalariga ega, masalan PHP,[9] va 2013 yilda yaratilgan API-ning NaCl bilan mos keladigan kriptografik kutubxonasi Libsodium uchun asos yaratadi.

Muqobil dasturlar

  • Libsodyum - portativ, o'zaro kompilyatsiya qilinadigan, o'rnatiladigan, paketlanadigan, API-ga mos NaCl versiyasi.[10]
  • NaCl Pharo - Pharo Smalltalk kengaytmasi.[11]
  • TweetNaCl - atigi 100 ga to'g'ri keladigan kichik S kutubxonasi tvitlar (Har biri 140 ta belgidan), lekin barcha NaCl funktsiyalarini qo'llab-quvvatlaydi.[12]
  • Tcl uchun NaCl - Tcl tiliga port.[13][uchinchi tomon manbai kerak ]
  • JavaScript uchun NaCl - JavaScript tiliga TweetNaCl / NaCl kriptografik kutubxonasi porti.[14]
  • Java uchun TweetNaCl - Java tiliga TweetNaCl / NaCl kriptografik kutubxonasi porti.[15]
  • SPARKNaCl - TweetNaCl-ni SPARK Ada pastki qismida qayta yozish, rasmiy va to'liq avtomatik dalillarni tasdiqlash va ba'zi to'g'riligi xususiyatlari.[16]
  • Crypt :: NaCl :: Natriy Perl 5 libsodyum bilan bog'lanish[17]

Shuningdek qarang

Adabiyotlar

  1. ^ a b https://cr.yp.to/highspeed/coolnacl-20120725.pdf Arxivlandi 2017-08-09 da Orqaga qaytish mashinasi "Yangi kriptografik kutubxonaning xavfsizligiga ta'siri" Daniel J. Bernshteyn, Tanja Lange, Piter Shvabe
  2. ^ "NaCl: Tarmoq va kriptografiya kutubxonasi".
  3. ^ "Tanja Lange uy sahifasi".
  4. ^ "Piter Shvabening uy sahifasi".
  5. ^ "Hashing". 2010-08-30. Olingan 2015-11-14.
  6. ^ "Umumiy xeshlash". 2017-12-13. Olingan 2018-05-19.
  7. ^ Bernshteyn, Daniel J. (10 mart 2009). NaCl tarkibidagi kriptografiya (PDF). Arxivlandi asl nusxasi (PDF) 2017 yil 25 martda. Olingan 8 fevral 2016.
  8. ^ "NaCl Internals".
  9. ^ "NaCl PHP kengaytmasi". Github. 2019-06-14.
  10. ^ "Libsodyum".
  11. ^ "SmalltalkHub ombori".
  12. ^ "TweetNaCl".
  13. ^ "Tclers Wiki - Tcl uchun NaCl".
  14. ^ "TweetNaCl".
  15. ^ "TweetNaCl-Java".
  16. ^ "SPARKNaCl".
  17. ^ "Crypt :: NaCl :: Natriy".

Tashqi havolalar