Merge pull request #497 from dinhln89/v1

Fixed change panic to log error for encrypt/decrypt secret and openin…
This commit is contained in:
Tuna 2019-04-22 17:01:16 +07:00 committed by GitHub
commit 4fc27f26b2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 7 deletions

View file

@ -503,7 +503,8 @@ func Encrypt(key []byte, text string) string {
block, err := aes.NewCipher(key)
if err != nil {
panic(err)
log.Error("Fail to encrypt", "err", err)
return ""
}
// The IV needs to be unique, but not secure. Therefore it's common to
@ -511,7 +512,8 @@ func Encrypt(key []byte, text string) string {
ciphertext := make([]byte, aes.BlockSize+len(plaintext))
iv := ciphertext[:aes.BlockSize]
if _, err := io.ReadFull(cryptoRand.Reader, iv); err != nil {
panic(err)
log.Error("Fail to encrypt iv", "err", err)
return ""
}
stream := cipher.NewCFBEncrypter(block, iv)
@ -527,13 +529,15 @@ func Decrypt(key []byte, cryptoText string) string {
block, err := aes.NewCipher(key)
if err != nil {
panic(err)
log.Error("Fail to decrypt", "err", err)
return ""
}
// The IV needs to be unique, but not secure. Therefore it's common to
// include it at the beginning of the ciphertext.
if len(ciphertext) < aes.BlockSize {
panic("ciphertext too short")
log.Error("ciphertext too short")
return ""
}
iv := ciphertext[:aes.BlockSize]
ciphertext = ciphertext[aes.BlockSize:]