AminetAminet
Search:
84749 packages online
About
Recent
Browse
Search
Upload
Setup
Services

util/crypt/aes_v1_20.lha

Mirror:Random
Showing: ppc-morphos icongeneric icon
No screenshot available
Short:AES-256 ECB file encryption CLI tool
Author: modrobert at gmail.com
Uploader:modrobert gmail com
Type:util/crypt
Version:1.20
Architecture:m68k-amigaos
Date:2022-08-27
Download:util/crypt/aes_v1_20.lha - View contents
Readme:util/crypt/aes_v1_20.readme
Downloads:1280

This is an AES-256 ECB cipher file based encryption tool I developed in
C for classic Amiga (68k), but the code is portable so it should compile on
most sane operating systems. Full source code is included in the file archive.

The benefit with this AES-256 implementation compared to others is that
it doesn't allocate any large memory buffers to encrypt/decrypt, so you can
handle large files with little memory and resources on the target system.

When creating a key file for the cipher I recommend using as much of the
32 bytes (256 bits) you can, at least over 7 chars to make it harder to
bruteforce. You can just type ASCII text in the key file, like a password,
but for stronger cipher it is better with "binary bytes" to utilize all bits.
I recommend the FileX hex editor on aminet if you want to hammer the hex codes
straight into the file, its a great tool BTW. ;)

Function: AES-256 ECB encrypt or decrypt a file.
Feature : Encrypted block counter for increased entropy.
Syntax  : aes [option] <key file> <input file> <output file>
Options : -e = encrypt, -d = decrypt.
Result  : 0 = ok, 1 = read error, 2 = write error, 3 = arg error.
Note    : Only the first 32 bytes of the keyfile will be read.

Alternately, just type 'aes' in an Amiga shell where the file is for info on
the command line usage.


Included files:

aes                - 68k binary compiled with vbcc on real Amiga under WB 3.1.
readme.txt         - You are reading it now. :D
source/aes.c       - My file based command line tool to encrypt/decrypt a file.
source/aes256.c    - AES-256 routines modified to use sbox tables for speed.
source/aes256.h    - Header file structs and prototypes.
source/demo.c      - FIPS 197 compliance test written for the AES-256 routines.
source/compile.txt - Command line to compile the source on Amiga with vbcc.


Changelog:
v1.20 - Added block numbering to encrypted file for increased cipher entropy.
        AES-256 buffer: [ <block number 4 bytes> <plaintext data 12 bytes> ]
v1.01 - Fixed typo, this is ECB, not CBC, thanks Piru.
v1.00 - Initial release.


Background:

The lightweight AES-256 C framework is developed by Ilya Levin and Hal Finney,
and is well suited for the purpose. More information about the authors and
license in the source code. This minimalistic implementation is impressive 
compared to most other stuff out there which usually involves bloated
libraries, strange licenses, or just questionable functionality in general.
There is demo code included you can compile to test that it meets the FIPS-197
requirements according to their advanced cryptographic standard.

Have fun!



Contents of util/crypt/aes_v1_20.lha
PERMISSION  UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP     NAME
---------- ----------- ------- ------- ------ ---------- ------------ ----------
[unknown]                 8737   16428  53.2% -lh5- 14da Feb 21  2015 aes_v1_20/aes
[unknown]                 1363    2649  51.5% -lh5- 83fc Feb 21  2015 aes_v1_20/readme.txt
[unknown]                 1858    5265  35.3% -lh5- e0d2 Feb 21  2015 aes_v1_20/source/aes.c
[unknown]                 3440   12395  27.8% -lh5- d4c9 Feb 21  2015 aes_v1_20/source/aes256.c
[unknown]                  790    1519  52.0% -lh5- 8b16 Feb 21  2015 aes_v1_20/source/aes256.h
[unknown]                   33      33 100.0% -lh0- e719 Feb 21  2015 aes_v1_20/source/compile.txt
[unknown]                  959    1883  50.9% -lh5- 8330 Feb 21  2015 aes_v1_20/source/demo.c
---------- ----------- ------- ------- ------ ---------- ------------ ----------
 Total         7 files   17180   40172  42.8%            Aug 27 14:27
Page generated in 0.02 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>