Skip to main content

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:

Metadata

Release files for spongeshaker 1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for spongeshaker 1.3
File Size Uploaded
spongeshaker-1.3.tar.gz 27.7 kB Details

Release files / spongeshaker-1.3.tar.gz

Download URL spongeshaker-1.3.tar.gz
Size 27.7 kB
Tags Source
SHA-256 checksum
How to use checksums
03a2faf645fc0f000a0d785a31704d2905ee4eb45200107e931512173271c224
BLAKE2b-256 checksum
How to use checksums
58a9e42ee338acb4f5fe8eb8e7d94ae98a9935a1e97e20812300d0f852cd1f99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.3 This release

1 release file

1.2

1.1

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page