Python 3.6+hashlibфункция
hashlib.shake_256()
хеширование
Хеш SHAKE256 из семейства SHA-3 с выходом произвольной длины и стойкостью до 256 бит; длину в байтах передают в digest(n) и hexdigest(n).
Синтаксис
hashlib.shake_256(data=b'', *, usedforsecurity=True).hexdigest(length)
Отличается от shake_128() только потолком стойкости, а не длиной выхода: оба отдадут хоть мегабайт. Поэтому shake_256(...).hexdigest(8) не надёжнее shake_128(...).hexdigest(8) — короткий выход ограничивает стойкость сильнее, чем выбор функции. Длина в hexdigest(n) — в байтах, знаков будет 2n.
Примеры
import hashlib
h = hashlib.shake_256(b'abc')
print(h.hexdigest(8)) # → 483366601360a877
print(len(h.digest(100))) # → 100
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности