Skip to main content
Help improve PyPI by participating in a 5-minute user interface survey!

High-level API to SHA-3 and other sponge modes with Keccak

Project Description

This module implements Keccak-f1600 sponge permutation and high-level APIs for various modes of it, including SHA-3 hashes.

This implementation is up-to-date with final version of FIPS-202 (5-Aug-2015).

Features:

  • Hashing (SHA3), PRNG, Stream cipher, AEAD cipher (SpongeWrap).
  • Optimized-C implementation from Keccak reference code, with separate paths for 64- and 32-bit CPUs.
  • Works with both Python 2.x and 3.x.

Todo:

  • Optimized ASM implementations.
  • Other Keccak permutation sizes.
  • Other sponge algorithms.
  • Other sponge modes.

Example:

from spongheshaker.sha3 import sha3_256, shake128

# fixed-length output
md = sha3_256('Hello ')
md.update('world!')
hash = md.digest()

# variable-length output
md = shake128('Hello ')
md.update('world!')
res1 = md.extract(64)
res2 = md.extract(64)

Links:

Release history Release notifications

This version
History Node

1.3

History Node

1.2

History Node

1.1

History Node

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
spongeshaker-1.3.tar.gz (27.7 kB) Copy SHA256 hash SHA256 Source None Oct 23, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page