From 6be936ff96b44e728c4bf4553c85797001066853 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期五, 22 十一月 2019 17:06:15 +0800
Subject: [PATCH] fix: PKCS5 unPadding bug

---
 aes.go |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/aes.go b/aes.go
index 5821bb9..0d39765 100644
--- a/aes.go
+++ b/aes.go
@@ -71,6 +71,10 @@
 }
 
 func PKCS5Trimming(encrypt []byte) []byte {
-	padding := encrypt[len(encrypt)-1]
-	return encrypt[:len(encrypt)-int(padding)]
+	length := len(encrypt)
+	number := int(encrypt[length-1])
+	if number >= length {
+		return nil
+	}
+	return encrypt[:length-number]
 }

--
Gitblit v1.8.0