2012-11-26 76 views
2

我已使用Base64在我的應用程序中解碼以向服務器發送密碼。但是我的服務器端支持建議我專門使用AES base64;我google了一下,發現了This在android中不使用AES base64的原因;但是,如果我發送正常的base64(在android.util.Base64)加密的字符串,我們可以使用AES base 64將其解密爲原始字符串嗎?Base 64和AES base 64是一樣的嗎?

+0

'android.util.Base64'不執行加密。你可能會以明文形式發送你的密碼。 –

+0

@MichaelBurr:至少它編碼它;比純文本好一點:) –

回答

3

太陽實現了一些不屬於標準jdk文件的事實並不意味着你不能找到符合你所期望的相同協議的其他一些impl。

在你的情況,請檢查你的意思是「加密」。畢竟,base64不是一種加密/解密的方式,只是以一種完全可逆的方式對一些字節進行編碼/解碼,而不需要任何密鑰。然而,AES使用加密密鑰,因此它取決於您的服務器是否希望您發送已經AES加密的緩衝區(以base64編碼)......您應該嘗試找出答案。

+0

好吧,現在我明白了。我需要加密一個密碼,它可以補充AES base64。有任何想法嗎? –

+0

然後您將不得不使用一些AES加密/解密庫,我不確定Sun的實施是否在Android應用程序內運行良好,我還沒有嘗試過,但我認爲您應該嘗試:)如果您使用AES sdk創建一個加密的緩衝區,然後您應該對其進行base64編碼並將其發送到服務器。假設服務器有密鑰,它應該能夠解密它。 –

+0

你知道任何其他包裹而不是太陽嗎? –