hashlib --- อัลกอริทึมการแฮช

โมดูลนี้ใช้งานอัลกอริทึมการแฮชข้อมูล binary แต่ละอัลกอริทึมถูกเปิดเผยเป็นคลาสที่ instance ของมันรับข้อมูลแบบเพิ่มทีละส่วนผ่าน update() และสร้าง digest ขนาดคงที่ผ่าน digest() OpenMV Cam ให้สามอัลกอริทึม:

  • SHA256 - อัลกอริทึมการแฮชรุ่นปัจจุบันสมัยใหม่ (จากซีรีส์ SHA-2) เหมาะสำหรับวัตถุประสงค์ที่ปลอดภัยทางการเข้ารหัสและพร้อมใช้งานเสมอ

  • SHA1 - อัลกอริทึมรุ่นก่อนหน้า ไม่แนะนำสำหรับการใช้งานใหม่ แต่ SHA1 เป็นส่วนหนึ่งของมาตรฐานอินเทอร์เน็ตจำนวนหนึ่งและแอปพลิเคชันที่มีอยู่ ดังนั้นจึงยังพร้อมใช้งาน

  • MD5 - อัลกอริทึมเก่าที่ไม่ถือว่าปลอดภัยทางการเข้ารหัส จัดให้เพื่อความเข้ากันได้กับแอปพลิเคชันเก่า

คลาส

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

สร้างออบเจ็กต์แฮช SHA256 และ feed data เข้าไปแบบ optional

update(data: bytes) None

Feed ข้อมูล binary เพิ่มเติมลงในแฮช

digest() bytes

คืนค่าแฮชของข้อมูลทั้งหมดที่ผ่านมาจนถึงปัจจุบันเป็น bytes object หลังจากเรียกเมธอดนี้แล้วจะไม่สามารถ feed ข้อมูลเพิ่มเติมลงในแฮชได้อีก

Note

hexdigest() ไม่ได้ implement ใน MicroPython ใช้ binascii.hexlify(h.digest()) เพื่อรับสตริง hex

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

สร้างออบเจ็กต์แฮช SHA1 และ feed data เข้าไปแบบ optional

update(data: bytes) None

Feed ข้อมูล binary เพิ่มเติมลงในแฮช

digest() bytes

คืนค่าแฮชของข้อมูลทั้งหมดที่ผ่านมาจนถึงปัจจุบันเป็น bytes object หลังจากเรียกเมธอดนี้แล้วจะไม่สามารถ feed ข้อมูลเพิ่มเติมลงในแฮชได้อีก

Note

hexdigest() ไม่ได้ implement ใน MicroPython ใช้ binascii.hexlify(h.digest()) เพื่อรับสตริง hex

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

สร้างออบเจ็กต์แฮช MD5 และ feed data เข้าไปแบบ optional

update(data: bytes) None

Feed ข้อมูล binary เพิ่มเติมลงในแฮช

digest() bytes

คืนค่าแฮชของข้อมูลทั้งหมดที่ผ่านมาจนถึงปัจจุบันเป็น bytes object หลังจากเรียกเมธอดนี้แล้วจะไม่สามารถ feed ข้อมูลเพิ่มเติมลงในแฮชได้อีก

Note

hexdigest() ไม่ได้ implement ใน MicroPython ใช้ binascii.hexlify(h.digest()) เพื่อรับสตริง hex