hashlib — אלגוריתמי גיבוב

מודול זה מממש אלגוריתמי גיבוב של נתונים בינאריים. כל אלגוריתם נחשף כמחלקה שהמופעים שלה מקבלים נתונים מצטברים באמצעות update() ומפיקים תקציר בגודל קבוע באמצעות digest(). ה-OpenMV Cam מספק שלושה אלגוריתמים:

  • SHA256 - אלגוריתם הגיבוב המודרני מהדור הנוכחי (מסדרת SHA-2). הוא מתאים למטרות מאובטחות-קריפטוגרפית וזמין תמיד.

  • SHA1 - אלגוריתם מדור קודם. אינו מומלץ לשימושים חדשים, אך SHA1 הוא חלק ממספר תקני אינטרנט ויישומים קיימים, ולכן הוא נשאר זמין.

  • MD5 - אלגוריתם מדור קודם, שאינו נחשב מאובטח-קריפטוגרפית. מסופק לצורך יכולת פעולה הדדית עם יישומים מדור קודם.

מחלקות

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

יוצר אובייקט גיבוב SHA256 ואופציונלית מזין data לתוכו.

update(data: bytes) None

מזין נתונים בינאריים נוספים לתוך הגיבוב.

digest() bytes

מחזיר את הגיבוב של כל הנתונים שהועברו דרכו עד כה, כאובייקט bytes. לאחר קריאה למתודה זו, לא ניתן להזין עוד נתונים לתוך הגיבוב.

הערה

hexdigest() אינו ממומש ב-MicroPython. השתמשו ב-binascii.hexlify(h.digest()) כדי לקבל מחרוזת הקסדצימלית.

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

יוצר אובייקט גיבוב SHA1 ואופציונלית מזין data לתוכו.

update(data: bytes) None

מזין נתונים בינאריים נוספים לתוך הגיבוב.

digest() bytes

מחזיר את הגיבוב של כל הנתונים שהועברו דרכו עד כה, כאובייקט bytes. לאחר קריאה למתודה זו, לא ניתן להזין עוד נתונים לתוך הגיבוב.

הערה

hexdigest() אינו ממומש ב-MicroPython. השתמשו ב-binascii.hexlify(h.digest()) כדי לקבל מחרוזת הקסדצימלית.

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

יוצר אובייקט גיבוב MD5 ואופציונלית מזין data לתוכו.

update(data: bytes) None

מזין נתונים בינאריים נוספים לתוך הגיבוב.

digest() bytes

מחזיר את הגיבוב של כל הנתונים שהועברו דרכו עד כה, כאובייקט bytes. לאחר קריאה למתודה זו, לא ניתן להזין עוד נתונים לתוך הגיבוב.

הערה

hexdigest() אינו ממומש ב-MicroPython. השתמשו ב-binascii.hexlify(h.digest()) כדי לקבל מחרוזת הקסדצימלית.