2012-04-06 26 views
0

我正在開發一個安全的多方應用程序,但我有一個非常大問題。該應用程序運行在BB設備上,並通過套接字連接到在pc上運行的java服務器,以便交換多個數據。在BB方面,我創建了一個RSAKeyPair,顯然我需要將公鑰(RSAPublicKey)發送到服務器,因此它可以加密數據等等。但是,臭名昭着的問題是我無法發送密鑰,因爲沒有處理像RSAPublicKey這樣的密碼對象的流。我試圖將鍵轉換爲不同的類型(String,int等),但它不起作用。如何交換黑莓上的RSA密鑰

有人可以給我一些建議嗎?

回答

0

調用getEgetN方法,將這些字節數組轉換爲Base64格式的字符串並將其發送到服務器。在服務器上解碼Base64字符串並調用構造函數,得到EN參數。

但通過非加密通道發送此密鑰不是一個好主意。考慮讓HttpsConnection連接到服務器並使用此安全連接進行數據傳輸。

+0

我試圖提取'exponent'和'modulus',但是我擔心在構造函數中必需的'RSACryptoSystem'可以創建與原信號相比不同的密鑰。我不需要一個安全/私人頻道,因爲應用程序的目標之一是測試協議對抗惡意方,我認爲公鑰不需要從第三方隱藏(公開,每個人都可以獲得它:D)。謝謝回覆。 – gioconno 2012-04-07 09:12:22