circuitpython/tests/extmod/hashlib_sha256.py

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

43 lines
875 B
Python
Raw Permalink Normal View History

2014-11-21 21:51:06 -05:00
try:
2023-08-22 11:15:46 -04:00
import hashlib
2014-11-21 21:51:06 -05:00
except ImportError:
2023-08-22 11:15:46 -04:00
# This is neither uPy, nor cPy, so must be uPy with
# hashlib module disabled.
print("SKIP")
raise SystemExit
2014-11-21 21:51:06 -05:00
h = hashlib.sha256()
print(h.digest())
h = hashlib.sha256()
h.update(b"123")
print(h.digest())
h = hashlib.sha256()
h.update(b"abcd" * 1000)
print(h.digest())
print(hashlib.sha256(b"\xff" * 64).digest())
# 56 bytes is a boundary case in the algorithm
print(hashlib.sha256(b"\xff" * 56).digest())
2021-03-15 09:57:36 -04:00
sha256 = hashlib.sha256(b"hello")
try:
sha256.update("world")
except TypeError as e:
print("TypeError")
print(sha256.digest())
2014-11-21 21:51:06 -05:00
# TODO: running .digest() several times in row is not supported()
2021-03-15 09:57:36 -04:00
# h = hashlib.sha256(b'123')
# print(h.digest())
# print(h.digest())
2014-11-21 21:51:06 -05:00
# TODO: partial digests are not supported
2021-03-15 09:57:36 -04:00
# h = hashlib.sha256(b'123')
# print(h.digest())
# h.update(b'456')
# print(h.digest())