我有一個在BlackBerry JE 4.6.1上開發的應用程序,它使用DES algorythm解密來自WebServer的信息。 如果我將加密信息發送到服務器,它會很好地解密。但是,如果服務器發送加密數據, 解密後我沒有得到正確的值。 密鑰應該是相同的,密碼信息以base64編碼發送。 在調試過程中我發現,在創建DESKey後,它的內部數據與傳遞給構造函數的字節數組不同。 例如,如果我創建DESKey下一方式我的DESKey(BlackBerry API)有什麼問題?
String keyStr = "2100000A";
DESKey desKey = new DESKey(keyStr.getBytes()); // pass the byte array {'2','1','0','0','0','0','0','A'}
方法desKey.getData()返回的字節數組{ '2', '1', '1', '1', '1', '1','1','@'}不同於最初的關鍵字節。
那麼DESKey的這種行爲有可能成爲我無法解密服務器數據的原因嗎?
謝謝。