[python] Crypto
下午試了一下Crypto的東西,來寫一下筆記
參考1
From Crypto.Cipher import DES
shared_key = '12345678' # 這個一定要是8的倍數
obj = DES.new(shared_key, MODE_ECB)
plain_text = 'hello, welcome to the world' # plain_text 應為8的倍數
#encrypt
padding = '$'
extra = len(plain_text) % 8
if extra:
plain_text += padding * (8-extra)
ciph_text = obj.encrypt(plain_text)
#decript
origin_text = obj.decrypt(ciph_text)
print origin_text.strip('$')
註1:可以在sharedkey上動手腳,改為 binary string
註2:strip() 是去掉所有的 padding, 所以先確保該padding不在plain_text中
參考1
From Crypto.Cipher import DES
shared_key = '12345678' # 這個一定要是8的倍數
obj = DES.new(shared_key, MODE_ECB)
plain_text = 'hello, welcome to the world' # plain_text 應為8的倍數
#encrypt
padding = '$'
extra = len(plain_text) % 8
if extra:
plain_text += padding * (8-extra)
ciph_text = obj.encrypt(plain_text)
#decript
origin_text = obj.decrypt(ciph_text)
print origin_text.strip('$')
註1:可以在sharedkey上動手腳,改為 binary string
註2:strip() 是去掉所有的 padding, 所以先確保該padding不在plain_text中
Comments
Post a Comment