1package s3crypto 2 3const ( 4 pkcs5BlockSize = 16 5) 6 7var aescbcPadding = aescbcPadder{pkcs7Padder{16}} 8 9// AESCBCPadder is used to pad AES encrypted and decrypted data. 10// Although it uses the pkcs5Padder, it isn't following the RFC 11// for PKCS5. The only reason why it is called pkcs5Padder is 12// due to the Name returning PKCS5Padding. 13var AESCBCPadder = Padder(aescbcPadding) 14 15type aescbcPadder struct { 16 padder pkcs7Padder 17} 18 19func (padder aescbcPadder) Pad(b []byte, n int) ([]byte, error) { 20 return padder.padder.Pad(b, n) 21} 22 23func (padder aescbcPadder) Unpad(b []byte) ([]byte, error) { 24 return padder.padder.Unpad(b) 25} 26 27func (padder aescbcPadder) Name() string { 28 return "PKCS5Padding" 29} 30