1
我正在研究具有原生Android和本機iOS實現的即時通訊應用程序。必需的功能之一是可以通過輸入普通密碼字符串來加密消息。這些消息必須通過輸入該密碼進行解密。我被告知要「使用AES」。針對Android和iOS的基於密碼的加密
我已經嘗試過接近成功的計劃是取得密碼字符串,將它與一些我知道永遠不會改變的上下文信息綁定在一起,並使用類似MD5的東西生成一個固定長度的密鑰。我知道這不是超級安全的。
爲了解密,我再重複一遍,我得到了相同的密鑰。然後,我用該密鑰解密數據,並獲取原始數據。
我這對Android和iOS工作,但他們無法解密彼此的數據,還告訴我有可能實現的不同,我不能看到,而我不能改變。兩個平臺上的AES128加密數據的前16個字節總是相同,但在此之後,它們完全不同。我可以檢查什麼?
要超清晰,用戶體驗將與使用密碼共享zip文件的體驗相同。用戶隨時可以從任何設備和BAM輸入密碼,他們會得到未加密的數據。共享密鑰文件或任何這些東西不是這個的一部分。
我沒有在Android上傳IV,而且它沒有它。一旦我給它與iOS上相同的IV(全部爲0x0),它就創建了相同的結果。 –