A light wrapper around how you would use the standard library for symmetric encryption/decryption anyway.
go get -u github.com/fuskovic/sym
// The key needs to be either 16, 24, or 32 characters in length
key := os.Getenv("SYMMETRIC_KEY")
ciphertext, err := sym.EncryptString(key, "hello world")
if err != nil {
// handle error
}
plaintext, err := sym.DecryptString(key, ciphertext)
if err != nil {
// handle error
}
// The key needs to be either 16, 24, or 32 characters in length
key := os.Getenv("SYMMETRIC_KEY")
ciphertext, err := sym.EncryptBytes(key, []byte("hello world"))
if err != nil {
// handle error
}
plaintext, err := sym.DecryptBytes(key, ciphertext)
if err != nil {
// handle error
}
// The key needs to be either 16, 24, or 32 characters in length
key := os.Getenv("SYMMETRIC_KEY")
err := sym.EncryptFile(key,
"/path/to/existing/plaintext/file.txt",
"/path/to/write/the/encrypted/file/to.enc",
)
if err != nil {
// handle error
}
err = sym.DecryptFile(key,
"/path/to/encrypted/file.enc",
"/path/to/write/decrypted/file/to.txt",
)
if err != nil {
// handle error
}