2012-01-25 62 views
0

當客戶端發出密鑰請求並使用ObjectOutputStream發送公鑰到客戶端時,我的servlet會生成一對密鑰(public和private),該ObjectOutputStream工作正常。將密鑰存儲在servlet中

然後,客戶端使用公鑰對數據進行加密,並再次將其發送給servlet。 所以servlet再次從頭開始執行,並生成一組我不想要的新密鑰。

我希望能夠使用舊的私鑰解密消息?

我該怎麼辦?

+3

使用SSL?你爲什麼要自己處理加密?你的協議是不安全的。 –

回答

1

創建servlet本身時創建鍵只有一次,而不是每個請求。您可以在servlet的init方法中創建公鑰和私鑰對,然後將其存儲在servlet的實例變量中。

有一個很好的描述here

+0

這是一個很好的回答:) – Ashwin