summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLevi Durfee <levi.durfee@gmail.com>2026-01-06 19:46:30 -0500
committerLevi Durfee <levi.durfee@gmail.com>2026-01-06 19:46:36 -0500
commit52bc0413c12ad9b558dda13fd2b921616b897375 (patch)
tree1086178cbe037c675331590892aa3e5898b372d3
parent4f9acd301b47716396d532dee3b8da3b411514fa (diff)
Add a README
-rw-r--r--README.md60
1 files changed, 60 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..97fcfc8
--- /dev/null
+++ b/README.md
@@ -0,0 +1,60 @@
+# goaes
+
+`goaes` is a very simple tool for encrypting files with AES-256 GCM.
+
+## about
+
+I wanted to write some Go and encryption fascinates me, so I wrote `goaes`.
+
+### what it is
+
+- it's a fun project
+- it uses [key wrapping](https://en.wikipedia.org/wiki/Key_wrap)
+- it's fast
+- it's simple
+
+### what it isn't
+
+- it's not meant for production
+- it's not meant for sensitive data
+- it's not secure
+
+## getting started
+
+1. Generate a new main key.
+
+```bash
+goaes generate
+```
+
+Don't use this one. This one is mine.
+
+```bash
+XGfpiNUvKJy8k7KeUEyhev4jkTIajb1s9CMJP9xH/7A=
+```
+
+2. Set `SECRET_KEY` to the value of the key you generated.
+3. Run the `goaes` command.
+
+```bash
+SECRET_KEY=XGfpiNUvKJy8k7KeUEyhev4jkTIajb1s9CMJP9xH/7A= goaes encrypt -s ./input.txt -d ./output.enc
+```
+
+### usage
+
+```bash
+NAME:
+ goaes - Simple AES encryption built with Go
+
+USAGE:
+ goaes [global options] [command [command options]]
+
+COMMANDS:
+ generate, g Generate a base64 encoded key
+ encrypt, e Encrypt a file
+ decrypt, d Decrypt a file
+ help, h Shows a list of commands or help for one command
+
+GLOBAL OPTIONS:
+ --help, -h show help
+```