hashlib --- خوارزميات التجزئة (hashing)¶
تنفّذ هذه الوحدة خوارزميات تجزئة البيانات الثنائية. تُكشف كل خوارزمية كفئة تقبل نسخها بيانات تدريجية عبر update() وتنتج بصمة ثابتة الحجم عبر digest(). توفر OpenMV Cam ثلاث خوارزميات:
SHA256 - الخوارزمية الحديثة من الجيل الحالي (من سلسلة SHA-2). وهي مناسبة للأغراض الآمنة تشفيرياً ومتاحة دائماً.
SHA1 - خوارزمية من جيل سابق. غير موصى بها للاستخدامات الجديدة، لكن SHA1 جزء من عدد من معايير الإنترنت والتطبيقات القائمة، لذا تبقى متاحة.
MD5 - خوارزمية قديمة، لا تُعتبر آمنة تشفيرياً. مُوفّرة للتشغيل البيني مع التطبيقات القديمة.
الفئات¶
- class hashlib.sha256(data: bytes = b'')¶
إنشاء كائن مُجزّئ SHA256 وتغذية data فيه اختيارياً.
- digest() bytes¶
إرجاع تجزئة جميع البيانات المُمرّرة عبره حتى الآن، ككائن بايتات. بعد استدعاء هذه الطريقة، لا يمكن تغذية مزيد من البيانات في التجزئة.
ملاحظة
hexdigest()غير منفّذة في MicroPython. استخدمbinascii.hexlify(h.digest())للحصول على سلسلة نصية ست عشرية.
- class hashlib.sha1(data: bytes = b'')¶
إنشاء كائن مُجزّئ SHA1 وتغذية data فيه اختيارياً.
- digest() bytes¶
إرجاع تجزئة جميع البيانات المُمرّرة عبره حتى الآن، ككائن بايتات. بعد استدعاء هذه الطريقة، لا يمكن تغذية مزيد من البيانات في التجزئة.
ملاحظة
hexdigest()غير منفّذة في MicroPython. استخدمbinascii.hexlify(h.digest())للحصول على سلسلة نصية ست عشرية.
- class hashlib.md5(data: bytes = b'')¶
إنشاء كائن مُجزّئ MD5 وتغذية data فيه اختيارياً.
- digest() bytes¶
إرجاع تجزئة جميع البيانات المُمرّرة عبره حتى الآن، ككائن بايتات. بعد استدعاء هذه الطريقة، لا يمكن تغذية مزيد من البيانات في التجزئة.
ملاحظة
hexdigest()غير منفّذة في MicroPython. استخدمbinascii.hexlify(h.digest())للحصول على سلسلة نصية ست عشرية.