Skip to content

pedroalbanese/aescrypt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AESCrypt

ISC License GitHub downloads GoDoc Go Report Card GitHub go.mod Go version GitHub release (latest by date)

Rijndael, Serpent, RC6 and Twofish with Galois/Counter Mode (AES-GCM) provides both authenticated encryption (confidentiality and authentication) and the ability to check the integrity and authentication of additional authenticated data (AAD) that is sent in the clear. AES-GCM is specified in NIST Special Publication 800-38D (SP800-38D).

Command-line AES-GCM Encryption Tool

Usage of aescrypt:
aescrypt [-d] [-b N] -p "pass" [-i N] [-s "salt"] -f <file.ext>
 -a string
       Additional authenticated data.
 -b int
       Key length: 128, 192 or 256. (default 256)
 -c string
       Cipher: AES, RC6, Twofish or Serpent. (default "aes")
 -d    Decrypt instead of Encrypt.
 -f string
       Target file. ('-' for STDIN)
 -i int
       Iterations. (for PBKDF2) (default 1024)
 -k string
       Symmetric key to Encrypt/Decrypt.
 -m    Cipher-based message authentication code.
 -p string
       Password-based key derivation function 2.
 -r    Generate random cryptographic key with given bit-length.
 -s string
       Salt. (for PBKDF2)

Example of encryption/decryption:

./aescrypt -k "" -f plaintext.ext > ciphertext.ext
./aescrypt -d -k $256bitkey -f ciphertext.ext > plaintext.ext

License

This project is licensed under the ISC License.

Industrial-Grade Reliability. Copyright (c) 2020-2021 ALBANESE Research Lab.