summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorLevi Durfee <levi.durfee@gmail.com>2026-01-06 19:18:18 -0500
committerLevi Durfee <levi.durfee@gmail.com>2026-01-06 19:18:20 -0500
commitb8c0706a71ccae2d10065ab33715f1058fdbe6b8 (patch)
tree92e988f45ea34124c12596192509b34712c67f83 /internal
parent35a6325ba12d0462bf01eb740fb6abde2d43c17a (diff)
Add ability to decrypt a file
Diffstat (limited to 'internal')
-rw-r--r--internal/decrypt.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/internal/decrypt.go b/internal/decrypt.go
new file mode 100644
index 0000000..64ae7cf
--- /dev/null
+++ b/internal/decrypt.go
@@ -0,0 +1,28 @@
+package internal
+
+import (
+ "github.com/joho/godotenv"
+)
+
+func Decrypt(edek WrappedDEK, ct Ciphertext) ([]byte, error) {
+ if err := godotenv.Load(); err != nil {
+ return nil, err
+ }
+
+ kek, err := NewKEKFromEnvB64("SECRET_KEY")
+ if err != nil {
+ return nil, err
+ }
+
+ dek2, err := UnwrapDEK(edek, kek)
+ if err != nil {
+ return nil, err
+ }
+
+ pt, err := DecryptData(ct, dek2)
+ if err != nil {
+ return nil, err
+ }
+
+ return pt, nil
+}