hashlib --- خوارزميات التجزئة (hashing)#

تنفّذ هذه الوحدة خوارزميات تجزئة البيانات الثنائية. تُكشف كل خوارزمية كفئة تقبل نسخها بيانات تدريجية عبر update() وتنتج بصمة ثابتة الحجم عبر digest(). توفر OpenMV Cam ثلاث خوارزميات:

  • SHA256 - الخوارزمية الحديثة من الجيل الحالي (من سلسلة SHA-2). وهي مناسبة للأغراض الآمنة تشفيرياً ومتاحة دائماً.

  • SHA1 - خوارزمية من جيل سابق. غير موصى بها للاستخدامات الجديدة، لكن SHA1 جزء من عدد من معايير الإنترنت والتطبيقات القائمة، لذا تبقى متاحة.

  • MD5 - خوارزمية قديمة، لا تُعتبر آمنة تشفيرياً. مُوفّرة للتشغيل البيني مع التطبيقات القديمة.

الفئات#

class hashlib.sha256(data: bytes = b'')#

إنشاء كائن مُجزّئ SHA256 وتغذية data فيه اختيارياً.

update(data: bytes) → None#

تغذية المزيد من البيانات الثنائية في التجزئة.

digest() → bytes#

إرجاع تجزئة جميع البيانات المُمرّرة عبره حتى الآن، ككائن بايتات. بعد استدعاء هذه الطريقة، لا يمكن تغذية مزيد من البيانات في التجزئة.

ملاحظة

‎hexdigest() غير منفّذة في MicroPython. استخدم binascii.hexlify(h.digest()) للحصول على سلسلة نصية ست عشرية.

class hashlib.sha1(data: bytes = b'')#

إنشاء كائن مُجزّئ SHA1 وتغذية data فيه اختيارياً.

update(data: bytes) → None#

تغذية المزيد من البيانات الثنائية في التجزئة.

digest() → bytes#

إرجاع تجزئة جميع البيانات المُمرّرة عبره حتى الآن، ككائن بايتات. بعد استدعاء هذه الطريقة، لا يمكن تغذية مزيد من البيانات في التجزئة.

ملاحظة

‎hexdigest() غير منفّذة في MicroPython. استخدم binascii.hexlify(h.digest()) للحصول على سلسلة نصية ست عشرية.

class hashlib.md5(data: bytes = b'')#

إنشاء كائن مُجزّئ MD5 وتغذية data فيه اختيارياً.

update(data: bytes) → None#

تغذية المزيد من البيانات الثنائية في التجزئة.

digest() → bytes#

إرجاع تجزئة جميع البيانات المُمرّرة عبره حتى الآن، ككائن بايتات. بعد استدعاء هذه الطريقة، لا يمكن تغذية مزيد من البيانات في التجزئة.

ملاحظة

‎hexdigest() غير منفّذة في MicroPython. استخدم binascii.hexlify(h.digest()) للحصول على سلسلة نصية ست عشرية.