白酒新熟山中归,黄鸡啄黍秋正肥。 呼童烹鸡酌白酒,儿女嬉笑牵人衣。 高歌取醉欲自慰,起舞落日争光辉。 游说万乘苦不早,著鞭跨马涉远道。 会稽愚妇轻买臣,余亦辞家西入秦。 仰天大笑出门去,我辈岂是蓬蒿人。

Golang. 加密


// AesEncrypt 加密
// @origData 要加密的字符串
func (s *Service) AesEncrypt(encryptStr, key []byte) (string, error) {
block, err := aes.NewCipher(key)
if err != nil {
return "", err
}
blockSize := block.BlockSize()
encryptStr = s.PKCS7Padding(encryptStr, blockSize)
blockMode := cipher.NewCBCEncrypter(block, key[:blockSize])
crypted := make([]byte, len(encryptStr))
blockMode.CryptBlocks(crypted, encryptStr)
return gconv.String(crypted), nil
//// 转成字节数组
//encryptData := []byte(encryptStr)
//k := []byte(key)
//
//// 分组秘钥
//block, _ := aes.NewCipher(k)
//// 获取秘钥块的长度
//blockSize := block.BlockSize()
//// 补全码
//encryptData = s.PKCS7Padding(encryptData, blockSize)
//// 加密模式
//blockMode := cipher.NewCBCEncrypter(block, k[:blockSize])
//// 创建数组
//cryted := make([]byte, len(encryptData))
//// 加密
//blockMode.CryptBlocks(cryted, encryptData)
//
//return base64.StdEncoding.EncodeToString(cryted)
}

// AesDecrypt 解密
// @cryted 需要解密的数据
func (s *Service) AesDecrypt(cryted string, key string) string {
// 转成字节数组
crytedByte, _ := base64.StdEncoding.DecodeString(cryted)
k := []byte(key)
// 分组秘钥
block, _ := aes.NewCipher(k)
// 获取秘钥块的长度
blockSize := block.BlockSize()
// 加密模式
blockMode := cipher.NewCBCDecrypter(block, k[:blockSize])
// 创建数组
orig := make([]byte, len(crytedByte))
// 解密
blockMode.CryptBlocks(orig, crytedByte)
// 去补全码
orig = s.PKCS7UnPadding(orig)
return string(orig)
}

func (s *Service) PKCS7Padding(ciphertext []byte, blocksize int) []byte {
padding := blocksize - len(ciphertext)%blocksize
padtext := bytes.Repeat([]byte{byte(padding)}, padding)
return append(ciphertext, padtext...)
}

//去码
func (s *Service) PKCS7UnPadding(origData []byte) []byte {
length := len(origData)
unpadding := int(origData[length-1])
return origData[:(length - unpadding)]
}
posted @ 2021-03-15 09:54  格罗玛什·地狱咆哮  阅读(139)  评论(0编辑  收藏  举报

君不见黄河之水天上来,奔流到海不复回。
君不见高堂明镜悲白发,朝如青丝暮成雪。
人生得意须尽欢,莫使金樽空对月。
天生我材必有用,千金散尽还复来。
烹羊宰牛且为乐,会须一饮三百杯。
岑夫子,丹丘生,将进酒,君莫停。
与君歌一曲,请君为我侧耳听。
钟鼓馔玉何足贵,但愿长醉不复醒。
古来圣贤皆寂寞,惟有饮者留其名。
陈王昔时宴平乐,斗酒十千恣欢谑。
主人何为言少钱,径须沽取对君酌。
五花马,千金裘,呼儿将出换美酒,与尔同销万古愁。