2014-02-06 32 views
0

我使用Python構建在庫編碼MD5摘要利用基地64庫我正在使用base64加密:解碼上的其他設備

 from hashlib import md5 

我的代碼進行編碼的「電子郵件」變量:

 apitoken = md5(email).digest().encode('base64')[:-1] 

現在問題是這個「apitoken」正在發送到其他設備誰需要解碼base64它獲得電子郵件MD5。

我應該給他們發什麼鑰匙?這個鹽值在哪裏?

+0

Base-64不是加密,它是一種編碼。你只需用'.decode('base64')'解碼它。 – Blender

+0

是我可以解碼它使用.decode但解碼它在其他設備讓我們說android。我可能還是其他方法? – user2618465

+0

當然,但你爲什麼首先將數據作爲base-64發送? – Blender

回答

0

如果你的要求是發送加密數據,那麼你不應該使用像MD5這樣的單向哈希算法(在任何情況下這是一個弱算法)。我建議使用衆所周知的對稱/非對稱算法,如AES說,從Python Cryptography Toolkit (pycrypto)

加密的數據可以在客戶端使用該算法的適當的客戶端庫加密。我還建議閱讀一本關於安全性的好書,例如Br​​uce Schneier的「應用密碼學」,以瞭解如何構建安全系統。

相關問題