مكتبة الهيدروجين عبارة عن مكتبة تشفير صغيرة وسهلة الاستخدام وصعوبة.
سمات:
- API متسقة عالية المستوى ، مستوحاة من libsodium. بدلاً من البدائية ذات المستوى المنخفض ، فإنه يكشف وظائف بسيطة لحل المشكلات الشائعة التي يمكن أن تحلها التشفير.
- تم تصميمه بنسبة 100 ٪ باستخدام لبنتين تشفيران فقط: منحنى Elliptic Curve25519 ، والتقليب GIMLI.
- صغيرة وسهلة التدقيق. يتم تنفيذها كملف صغير واحد لكل مجموعة من التشغيل ، وإضافة ملف
.c واحد إلى مشروعك هو كل ما يتطلبه استخدام Libhydrogen في مشروعك. - يتم إصدار الرمز بأكمله بموجب ترخيص واحد ليبرالي للغاية (ISC).
- صفر تخصيص الذاكرة الديناميكية ومتطلبات المكدس المنخفضة (الوسيط: 32 بايت ، الحد الأقصى: 128 بايت). هذا يجعلها قابلة للاستخدام في بيئات مقيدة مثل متحكمها.
- المحمول: مكتوبة في C99 القياسية. يدعم Linux و *BSD و MacOs و Windows و Arduino IDE خارج الصندوق.
- يمكن أن تولد أرقام عشوائية خوية تشفير ، حتى على لوحات Arduino.
- محاولات للتخفيف من الآثار المترتبة على سوء الاستخدام العرضي ، حتى على الأنظمة ذات PRG غير موثوق بها و/أو لا ساعة.
غير المماثلة:
- امتلاك العديد من البدائيات التي تخدم نفس الغرض ، حتى لتوفير التوافق مع المكتبات الأخرى.
- الشبكات-ولكن تتوفر واجهة برمجة تطبيقات التبادل المفاتيح البسيطة استنادًا إلى بروتوكول الضوضاء ، وسيتم تنفيذ واجهة برمجة تطبيقات النقل القوية.
- قابلية التشغيل البيني مع المكتبات الأخرى.
- استبدال libsodium. يحاول Libhydrogen الحفاظ على عدد واجهات برمجة التطبيقات وحجم الكود إلى الحد الأدنى.
وثائق ليبهيدروجين
يتم الحفاظ على الوثائق في الويكي libhydrogen.
لا يزال رمز Libhydrogen القديم (الاستفادة من Xchacha20 ، Siphashx ، Blake2Sx ، Curve25519) متاحًا في فرع V0.
المساهمين
المساهمون في الكود
هذا المشروع موجود بفضل جميع الأشخاص الذين يساهمون. [يساهم].