hashlib --- thuật toán băm

Mô-đun này triển khai các thuật toán băm dữ liệu nhị phân. Mỗi thuật toán được cung cấp dưới dạng một lớp mà các thực thể của nó nhận dữ liệu gia tăng qua update() và tạo ra một digest kích thước cố định qua digest(). OpenMV Cam cung cấp ba thuật toán:

  • SHA256 - Thuật toán băm thế hệ hiện tại, hiện đại (thuộc dòng SHA-2). Phù hợp cho các mục đích bảo mật mật mã và luôn khả dụng.

  • SHA1 - Thuật toán thế hệ trước. Không khuyến nghị cho các ứng dụng mới, nhưng SHA1 là một phần của nhiều tiêu chuẩn Internet và ứng dụng hiện có, vì vậy nó vẫn khả dụng.

  • MD5 - Một thuật toán kế thừa, không được coi là bảo mật về mặt mật mã. Cung cấp để tương thích với các ứng dụng kế thừa.

Lớp

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

Tạo đối tượng băm SHA256 và tùy chọn nạp data vào nó.

update(data: bytes) None

Nạp thêm dữ liệu nhị phân vào hàm băm.

digest() bytes

Trả về băm của tất cả dữ liệu đã đưa vào cho đến nay, dưới dạng đối tượng bytes. Sau khi phương thức này được gọi, không thể nạp thêm dữ liệu vào hàm băm.

Ghi chú

hexdigest() không được triển khai trong MicroPython. Dùng binascii.hexlify(h.digest()) để lấy chuỗi hex.

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

Tạo đối tượng băm SHA1 và tùy chọn nạp data vào nó.

update(data: bytes) None

Nạp thêm dữ liệu nhị phân vào hàm băm.

digest() bytes

Trả về băm của tất cả dữ liệu đã đưa vào cho đến nay, dưới dạng đối tượng bytes. Sau khi phương thức này được gọi, không thể nạp thêm dữ liệu vào hàm băm.

Ghi chú

hexdigest() không được triển khai trong MicroPython. Dùng binascii.hexlify(h.digest()) để lấy chuỗi hex.

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

Tạo đối tượng băm MD5 và tùy chọn nạp data vào nó.

update(data: bytes) None

Nạp thêm dữ liệu nhị phân vào hàm băm.

digest() bytes

Trả về băm của tất cả dữ liệu đã đưa vào cho đến nay, dưới dạng đối tượng bytes. Sau khi phương thức này được gọi, không thể nạp thêm dữ liệu vào hàm băm.

Ghi chú

hexdigest() không được triển khai trong MicroPython. Dùng binascii.hexlify(h.digest()) để lấy chuỗi hex.