SCRAM68

Stream Cipher Routine for Algol Machines.

About

SCRAM68 is a small file encryption utility written in ALGOL 68 for Algol 68 Genie. It uses a 256-bit ChaCha-style stream cipher and an HMAC-SHA256 integrity check.

Usage

a68g scram68.a68 -- -e <passphrase> <in_file> <out_file>
a68g scram68.a68 -- -d <passphrase> <in_file> <out_file>

Encrypted output is text-safe and formatted as:

CHCA + hex(nonce) + hex(ciphertext) + hex(tag)

Notes

Challenge

A sample encrypted challenge file is part of the project.

If you want to try cracking it, grab the ciphertext file and the source and have fun.

Files