From b8c0706a71ccae2d10065ab33715f1058fdbe6b8 Mon Sep 17 00:00:00 2001 From: Levi Durfee Date: Tue, 6 Jan 2026 19:18:18 -0500 Subject: Add ability to decrypt a file --- internal/decrypt.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 internal/decrypt.go (limited to 'internal/decrypt.go') 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 +} -- cgit v1.2.3