1 | import binascii |
---|
2 | from Crypto.Cipher import AES |
---|
3 | from pkcs7 import PKCS7Encoder |
---|
4 | |
---|
5 | key = "a891f95cc50bd872e8fcd96cf5030535e273c5210570b3dcfa7946873d167c57".decode('hex') |
---|
6 | iv = "3bbdce68b2736ed96972d56865ad82a2".decode('hex') |
---|
7 | text = "text to encyrptoijaidscashd323eq4" |
---|
8 | |
---|
9 | |
---|
10 | def XpraPadding(data): |
---|
11 | padding = (32 - len(data) % 32) * " " |
---|
12 | return data+padding |
---|
13 | |
---|
14 | def PKCS7Padding(data): |
---|
15 | l = len(data) |
---|
16 | padding = "" |
---|
17 | val = 32 - (l % 32) |
---|
18 | for _ in xrange(val): |
---|
19 | padding += chr(val) |
---|
20 | return data + padding |
---|
21 | |
---|
22 | padded = XpraPadding(text) |
---|
23 | a = AES.new(key, AES.MODE_CBC, iv) |
---|
24 | print(a.encrypt(padded).encode('hex')) |
---|
25 | |
---|
26 | pkpadded = PKCS7Padding(text) |
---|
27 | b = AES.new(key, AES.MODE_CBC, iv) |
---|
28 | print(b.encrypt(pkpadded).encode('hex')) |
---|