hashlib --- อัลกอริทึมการแฮช¶
โมดูลนี้ใช้งานอัลกอริทึมการแฮชข้อมูล binary แต่ละอัลกอริทึมถูกเปิดเผยเป็นคลาสที่ instance ของมันรับข้อมูลแบบเพิ่มทีละส่วนผ่าน update() และสร้าง digest ขนาดคงที่ผ่าน digest() OpenMV Cam ให้สามอัลกอริทึม:
SHA256 - อัลกอริทึมการแฮชรุ่นปัจจุบันสมัยใหม่ (จากซีรีส์ SHA-2) เหมาะสำหรับวัตถุประสงค์ที่ปลอดภัยทางการเข้ารหัสและพร้อมใช้งานเสมอ
SHA1 - อัลกอริทึมรุ่นก่อนหน้า ไม่แนะนำสำหรับการใช้งานใหม่ แต่ SHA1 เป็นส่วนหนึ่งของมาตรฐานอินเทอร์เน็ตจำนวนหนึ่งและแอปพลิเคชันที่มีอยู่ ดังนั้นจึงยังพร้อมใช้งาน
MD5 - อัลกอริทึมเก่าที่ไม่ถือว่าปลอดภัยทางการเข้ารหัส จัดให้เพื่อความเข้ากันได้กับแอปพลิเคชันเก่า
คลาส¶
- class hashlib.sha256(data: bytes = b'')¶
สร้างออบเจ็กต์แฮช SHA256 และ feed data เข้าไปแบบ optional
- digest() bytes¶
คืนค่าแฮชของข้อมูลทั้งหมดที่ผ่านมาจนถึงปัจจุบันเป็น bytes object หลังจากเรียกเมธอดนี้แล้วจะไม่สามารถ feed ข้อมูลเพิ่มเติมลงในแฮชได้อีก
Note
hexdigest()ไม่ได้ implement ใน MicroPython ใช้binascii.hexlify(h.digest())เพื่อรับสตริง hex
- class hashlib.sha1(data: bytes = b'')¶
สร้างออบเจ็กต์แฮช SHA1 และ feed data เข้าไปแบบ optional
- digest() bytes¶
คืนค่าแฮชของข้อมูลทั้งหมดที่ผ่านมาจนถึงปัจจุบันเป็น bytes object หลังจากเรียกเมธอดนี้แล้วจะไม่สามารถ feed ข้อมูลเพิ่มเติมลงในแฮชได้อีก
Note
hexdigest()ไม่ได้ implement ใน MicroPython ใช้binascii.hexlify(h.digest())เพื่อรับสตริง hex
- class hashlib.md5(data: bytes = b'')¶
สร้างออบเจ็กต์แฮช MD5 และ feed data เข้าไปแบบ optional
- digest() bytes¶
คืนค่าแฮชของข้อมูลทั้งหมดที่ผ่านมาจนถึงปัจจุบันเป็น bytes object หลังจากเรียกเมธอดนี้แล้วจะไม่สามารถ feed ข้อมูลเพิ่มเติมลงในแฮชได้อีก
Note
hexdigest()ไม่ได้ implement ใน MicroPython ใช้binascii.hexlify(h.digest())เพื่อรับสตริง hex