diff --git a/encryption/encryption.go b/encryption/encryption.go
index 909d48cc9936341be6191e7165422cc25ae7a029..a940f01037d19ffd8016d76c8029a5a7e2b16cd4 100644
--- a/encryption/encryption.go
+++ b/encryption/encryption.go
@@ -27,41 +27,49 @@ func Md5HashString(bytesToHash []byte) string {
 }
 
 func Encrypt(plaintext string, key string) (string, error) {
-	c, err := aes.NewCipher([]byte(key))
+	if len(key) != 32 {
+		return "", errors.New("key should be 32 bytes")
+	}
+
+	block, err := aes.NewCipher([]byte(key))
 	if err != nil {
 		return "", err
 	}
 
-	gcm, err := cipher.NewGCM(c)
+	aesGcm, err := cipher.NewGCM(block)
 	if err != nil {
 		return "", err
 	}
 
-	nonce := make([]byte, gcm.NonceSize())
+	nonce := make([]byte, aesGcm.NonceSize())
 	if _, err = io.ReadFull(rand.Reader, nonce); err != nil {
 		return "", err
 	}
 
-	return string(gcm.Seal(nonce, nonce, []byte(plaintext), nil)), nil
+	return string(aesGcm.Seal(nonce, nonce, []byte(plaintext), nil)), nil
 }
 
 func Decrypt(ciphertext string, key string) (string, error) {
-	c, err := aes.NewCipher([]byte(key))
+	if len(key) != 32 {
+		return "", errors.New("key should be 32 bytes")
+	}
+
+	block, err := aes.NewCipher([]byte(key))
 	if err != nil {
 		return "", err
 	}
 
-	gcm, err := cipher.NewGCM(c)
+	aesGcm, err := cipher.NewGCM(block)
 	if err != nil {
 		return "", err
 	}
 
-	nonceSize := gcm.NonceSize()
+	nonceSize := aesGcm.NonceSize()
 	if len(ciphertext) < nonceSize {
 		return "", errors.New("ciphertext too short")
 	}
 
 	nonce, ciphertext := ciphertext[:nonceSize], ciphertext[nonceSize:]
-	value, err := gcm.Open(nil, []byte(nonce), []byte(ciphertext), nil)
+	value, err := aesGcm.Open(nil, []byte(nonce), []byte(ciphertext), nil)
 	return string(value), err
 }