12345678910111213141516171819202122232425 |
- package yu_crypto
- import (
- "crypto/aes"
- "crypto/cipher"
- )
- func AESCBCPKCS7En(src []byte, key []byte, iv []byte) []byte {
- block, _ := aes.NewCipher(key)
- ecb := cipher.NewCBCEncrypter(block, iv)
- content := make([]byte, 0, len(src)+block.BlockSize())
- content = append(content, src...)
- content = PKCS7Padding(content, block.BlockSize())
- crypted := make([]byte, len(content))
- ecb.CryptBlocks(crypted, content)
- return crypted
- }
- func AESCBCPKCS7De(src []byte, key []byte, iv []byte) []byte {
- block, _ := aes.NewCipher(key)
- ecb := cipher.NewCBCDecrypter(block, iv)
- decrypted := make([]byte, len(src))
- ecb.CryptBlocks(decrypted, src)
- return PKCS7Trimming(decrypted)
- }
|