Skip to main content

CLI tool for incremental checksumming using AEGIS MAC.

Project description

AEGIS Fast Checksums

A high-performance command-line tool for computing and verifying cryptographic checksums using the AEGIS=128X2 MAC primitive.

Quick start

Install UV and then install the tool:

uv tool install aegsum

Now you can use the installed aegsum tool, e.g. to checksum and verify:

aegsum * > .aegsum
aegsum --check .aegsum

The program processes all files of any directories passed as arguments, and will read from stdin when no files are passed.

Options

  • -a, --alg ALGORITHM: Specify the AEGIS algorithm (default: AEGIS-128X2)
  • -l, --long: Use doubly long MAC tag for extra security (256 bits). When used with -c, only accepts long format checksums for verification.
  • -c, --check: Verify checksums (using checksum file previously created or fed in via stdin)
  • -q, --quiet: Don't print OK for each successfully verified file
  • -k, --key PASSWORD: Use keyed MAC with the given password (key derived via SHA-512)
  • -h, --help: Show help message

Keyed Mode

The -k option enables keyed MAC mode, where checksums are computed using a secret keu:

aegsum -k mysecret file1.txt file2.txt > .aegsum
aegsum --check -k mysecret .aegsum

Each generation produces a different output, even for the same file and key. This is because a random nonce is included in each computation. Checksums can only be verified with the same password used to create them.

Unlike plain checksums which anyone can recompute, keyed checksums provide authentication—proving that someone with knowledge of the secret created or verified the files.

Performance

AEGIS-128X2 provides exceptional performance, often achieving speeds above 10 GB/s, as opposed to 1-2 GB/s of traditional tools like sha256sum. The aegsum tool is designed to never be the bottle neck and producing results quickly. Other AEGIS alrogithms can be specified to optimize performance for a particular platform (where X4 may perform better than X2), and

Project details


Download files

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

Source Distribution

aegsum-0.1.0.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aegsum-0.1.0-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file aegsum-0.1.0.tar.gz.

File metadata

  • Download URL: aegsum-0.1.0.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for aegsum-0.1.0.tar.gz
Algorithm Hash digest
SHA256 140854f4c3160e49941b5fb363598005b0b481db9d6760d2c1c0ac03e89b3bd5
MD5 3cbb3b1027f6d7b9b4e0fb40b49189df
BLAKE2b-256 dcd8c3c55f44a14f02ec739e31c623a7427189fcb8f3b39bec347951fc6a6dc5

See more details on using hashes here.

File details

Details for the file aegsum-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: aegsum-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for aegsum-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a680bb8080f861154c68845e2a20ba41bf89a4dc434a432ec88e3bd8dd04d52b
MD5 32a4a6ccbcd34a66948f15bae6d93dd7
BLAKE2b-256 863e13835ba9f93e0920efb9a4d6a09cd79e2516b8685afd20b2994307028212

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page