تمت كتابة ملف makefile بواسطة Rinick ويمكن تجميعه في lib ضمن bcc (
[email protected])
هناك 4 أدلة ضمن الحزمة المضغوطة
lib: يحتوي على ملفات lib (والملفات المصدر المقابلة كمرجع). انسخ الملفين goozo_crypt.obj وtomcrypt.lib إلى دليل lib الخاص بمنشئ C++ قبل الاستخدام.
تضمين: ملف الرأس، انسخه إلى دليل التضمين الخاص بمنشئ C++ قبل الاستخدام
docs(tom): يقدم توم وصفًا بتنسيق pdf لمكتبة وظائف التشفير (إذا كنت تريد معرفة المزيد عن الوظائف، يمكنك قراءة التعليقات في ملف الرأس والملف المصدر)
Rinick's ECC: مثال ومولد رئيسي للتشفير غير المتماثل للمنحنى الإهليلجي
يتم تغليف العديد من الوظائف الأساسية في وظائف مستقلة، مما يجعلها أسهل في الاستخدام.
بعد #include <goozo_crypt.h>، يمكنك استخدام الوظيفة التالية للتشفير: ltc_eax_encrypt(&aes_desc, "111", "222", pchar, pcharC, 300);
يوجد 300 بايت من المحتوى في pchar، وهو مشفر ومحفوظ في pcharC. كلمة مرور المستخدم هي 111 (AnsiString).
222 هي كلمة مرور النظام (AnsiString)، مما يجعل نظام AES الخاص بك مختلفًا عن الآخرين، ويمكن اعتباره كلمة مرور مكونة من طبقتين.
aes_desc هي طريقة التشفير، والخيارات هي:
Blowfish_desc, rc5_desc, rc6_desc, rc2_desc, Saferp_desc, Safer_k64_desc, Safer_k128_desc, Safer_sk64_desc, Safer_sk128_desc, rijndael_desc, aes_desc, rijndael_enc_desc, aes_enc_desc, xtea_desc, twofish_desc ج، des_desc، des3_desc، cast5_desc، noekeon_desc، Skipjack_desc، khazad_desc، anubis_desc
إذا لم تكن هناك حاجة خاصة، فما عليك سوى استخدام AES لفك التشفير: ltc_eax_decrypt(&aes_desc, "111", "222", pcharC, pcharP, 300);
يوجد 300 بايت من المحتوى المشفر في pcharC. بعد فك التشفير، يتم حفظه في pcharP. المعلمات المتبقية هي نفس ملخص الذاكرة: AnsiString hash=ltc_hash_mem(&md5_desc, pchar, 800);
يوجد 800 بايت من المحتوى في pchar، ويتم حفظ ملخص MD5 الخاص به في التجزئة
md5_desc هو وضع التلخيص، والخيارات هي:
chc_desc، دوامة_desc، sha512_desc، sha384_desc، sha256_desc، sha224_desc، sha1_desc، md5_desc، md4_desc، md2_desc، Tiger_desc، rmd128_desc، rmd160_desc
إذا كانت متطلبات الأمان عالية، يوصى باستخدام sha512 أو sha384. بشكل عام، md5 يكفي. ملخص الملف: AnsiString hash=ltc_hash_file(&md5_desc, "C:\1.txt");
احسب ملخص الملف C:1.txt وقم بتخزينه في التجزئة. المعلمات المتبقية هي نفسها المذكورة أعلاه.
للحصول على وظائف أخرى، يرجى الاطلاع على تعليمات PDF والملفات المصدر
تدعم مكتبة وظائف التشفير وظائف التشفير التالية التي توفر دعمًا كبيرًا جدًا لتشفير مكتبة الأعداد الصحيحة
السمكة المنتفخة
XTEA
RC5
RC6
أكثر أمانًا+
ريجنديل (المعروف أيضًا باسم AES)
سمكتان
أكثر أمانا (K64، SK64، K128، SK128)
RC2
ديس، 3ديس
كاست5
نوكيون
سكيبجاك
أنوبيس (مع تعديل اختياري كما اقترحه المطورون)
خزاد
أوضاع التسلسل (لا أستخدم هذا الجزء، ولا أعرف كيفية ترجمته)
تأتي الأوضاع مع واجهات البدء والتشفير/فك التشفير وتعيين/الحصول على IV.
الوضع مدعوم.
البنك المركزي الأوروبي
سي بي سي
OFB
CFB
نسبة النقر إلى الظهور
طريقة التجزئة التي تدعمها وظيفة التجزئة أحادية الاتجاه.
MD2
MD4
MD5 (الأكثر استخدامًا)
شا-1
SHA-224/256/384/512 (موصى به بواسطة رينيك)
النمر-192
رايب-إم دي 128/160
دوامة
مصادقة المعلومات
FIPS-198 HMAC (يدعم جميع وظائف التجزئة)
CMAC، المعروف أيضًا باسم
OMAC1
(يدعم جميع وظائف التشفير)
مصادقة PMAC
البجع ماك
وضع مصادقة تشفير المعلومات
وضع إياكس
وضع OCB
وضع CCM (مواصفات NIST)
وضع GCM (مواصفات IEEE)
مولد أرقام عشوائي زائف (يستخدم في بعض الوظائف الأخرى)
يارو (خوارزمية قائمة)
RC4
يدعم /dev/random و/dev/urandom وWin32 CSP RNG
فورتونا
الرصين-128
خوارزمية المفتاح العام
RSA (باستخدام PKCS #1 v2.1)
ECC (معيار التوقيع الرقمي EC-DSA X9.62، X9.63 EC-DH، معيار تبادل المفاتيح)
أضاف Rinick وظيفة التشفير وفك التشفير ECC لتنفيذ وظائف مثل تسجيل البرامج.
DSA (يمكن للمستخدمين تحديد الخوارزمية الخاصة بهم لإنشاء التوقيعات الرقمية)
معايير أخرى معتمدة
PKCS #1 (حشوة الإصدار 2.1)
بي كي سي اس رقم 5
ASN.1 DER للتسلسل والعدد الصحيح وسلسلة البت وسلسلة الثماني ومعرف الكائن وسلسلة IA5 والسلسلة القابلة للطباعة وUTCTIME والاختيار والأنواع الخالية.