Модули и функции · встроенный MicroPython FEMM 5
hashlib
SHA-256 для контроля неизменности исходных данных.
Условия работы
- Доступен sha256 с update и digest. Текстовую hex-сумму получите binascii.hexlify(hash.digest()).decode().
- Сумма подтверждает совпадение байтов; физическую корректность модели она не проверяет.
hashlib.sha256hashlib.sha256.updatehashlib.sha256.digesthashlib.sha256Создаёт накопительный хэш.
hashlib.sha256
sha256(data=b"")Создаёт накопительный хэш.
Аргументы
| Имя | Назначение и допустимые значения |
|---|---|
data | Начальный байтовый буфер или пусто. |
Возвращаемое значение
Объект хэширования SHA-256.
Пример
"Пример hashlib.sha256.\nСреда: встроенный MicroPython FEMM 5.\nСоздаёт накопительный хэш.\nРезультат: Объект хэширования SHA-256."
import hashlib
h=hashlib.sha256(b'FEMM')
assert len(h.digest()) == 32
Ожидаемый результат. Проверки assert проходят без исключения.
Скачать пример · Ссылка на функцию
Этот пример выполнен в установленном FEMM 5.
hashlib.sha256.updateДобавляет блок к сообщению; после digest не продолжайте update.
hashlib.sha256.update
hash.update(data)Добавляет блок к сообщению; после digest не продолжайте update.
Аргументы
| Имя | Назначение и допустимые значения |
|---|---|
data | Очередной байтовый блок. |
Возвращаемое значение
None.
Пример
"Пример hashlib.sha256.update.\nСреда: встроенный MicroPython FEMM 5.\nДобавляет блок к сообщению; после digest не продолжайте update.\nРезультат: None."
import hashlib
a=hashlib.sha256()
a.update(b'FE')
a.update(b'MM')
assert a.digest() == hashlib.sha256(b'FEMM').digest()
Ожидаемый результат. Проверки assert проходят без исключения.
Скачать пример · Ссылка на функцию
Этот пример выполнен в установленном FEMM 5.
hashlib.sha256.digestЗавершает получение двоичной суммы.
hashlib.sha256.digest
hash.digest()Завершает получение двоичной суммы.
Аргументы
Аргументы не требуются.
Возвращаемое значение
32 байта результата SHA-256.
Пример
"Пример hashlib.sha256.digest.\nСреда: встроенный MicroPython FEMM 5.\nЗавершает получение двоичной суммы.\nРезультат: 32 байта результата SHA-256."
import hashlib
import binascii
h=hashlib.sha256(b'abc')
assert binascii.hexlify(h.digest()) == b'ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad'
Ожидаемый результат. Проверки assert проходят без исключения.
Скачать пример · Ссылка на функцию
Этот пример выполнен в установленном FEMM 5.
Имена в установленной сборке
Перечень получен во встроенном интерпретаторе. Он включает функции, классы и константы. Ссылки ведут к контрактам; для прямого доступа ulab учитывайте условия этого раздела.