2011-07-01 106 views
2

我正在研究ajax門戶,我需要一些建議。我的客戶希望它相當安全,但不想處理ssl。沒有超敏感的數據存儲,所以我在頁面初始化時進行自定義的「握手」。不對稱和對稱密鑰存儲

由於每一次會議我正在處理2套新的不對稱密鑰和一些對稱密鑰,我想知道你將如何處理這些密鑰。這可能會在共享主機上,我已經閱讀無處不在,在這種情況下,會話文件不能真正被信任...

現在我在會話文件中存儲一些信息指向正確的鍵,它們在數據庫中。一切正常,因爲它是好的(嗯,我認爲:))...現在我想在用戶會話結束時從數據庫中刪除密鑰,所以我最終不會得到充滿無用密鑰的表。

即使我知道它是壞的,當關閉窗口/瀏覽器時,我嘗試了一個ajax調用...這確實是壞的和不一致的,所以這個選項是不可行的。我也想過一個cron的工作,以擦除每一個關鍵字約會超過幾天,但它有點像我感覺「未完成」...

我的問題是:我想知道ssl如何處理它的鑰匙?他們在用戶會話持續時存儲在哪裏?你如何處理/處理這件事?

編輯

是的,我應該知道這個問題會導致這個問題。

我知道ssl會是最好的選擇,我對自己的應用程序編碼感到遺憾。我會更多地向我的客戶談論這件事,但我幾乎沒有任何希望。如果他仍然想要去http,我不會冒險放棄合同來證明我的觀點,我會另外保護它的不敏感數據(登錄信息有點,沒有信用卡...)。

是的,「相當安全」是合適的,因爲沒有系統是完全安全的。 「相當安全」意味着只需下載wireshark或在YouTube上觀看視頻的中間人攻擊者就無法進入。我想說它已經比所有的最近被一些青少年羞辱的數十億遊戲公司。

正確的答案是納斯科誰回答了我的問題的一部分,並提出了一些明顯的建議,而不是在那個傲慢。

+3

我會堅持SSL!這些天來,賽普拉斯很便宜。與編寫自己的IMO相比,實現起來更快,更穩定,更安全。對於客戶而言,速度更快意味着更便宜。 – Tak

+0

我的想法和我試圖解釋的幾乎完全一樣......無論如何,因爲他很固執,所以我已經寫了我的握手實施來加密會話通信。現在我只是想知道最好的存儲方式,並在用戶終止會話時優雅地擺脫所有那些生成的密鑰。正如我所說,我目前正在將它們存儲在數據庫中。感謝您的回答。 – HypnoToad

+2

永遠不要實現你自己的密碼學!使用SSL。如果您不想支付正確簽署的證書,請使用自簽名證書。 –

回答

1

SSL爲其完成的每次握手生成對稱密鑰並將其存儲在內存中(除非將會話高速緩存寫入磁盤)。

這就是說,我建議避免做自己的加密協議,因爲你一定會犯一個錯誤。即使是最好的加密人也會犯錯誤,所以我不會推薦任何人爲此而做。

找出您的客戶使用SSL感知的問題,並解決這些問題。通過這種方式,您可以使用經過驗證可以正常工作的標準技術,最終您的客戶也會感到滿意「你們如何處理/會處理這個問題?」

+0

對稱加密?你確定? –

+0

@Nasko感謝您的回答 – HypnoToad

+0

@Jared是的,ssl在握手之後使用了對稱密鑰,它使用不對稱密鑰來傳遞這些對稱密鑰。這是密集型資源少得多。 – HypnoToad

3

'Secure'是一個二進制狀態。沒有「相當」安全的東西。

您希望實現像SSL這樣便宜和有效的東西大約爲零。不要打擾。除非客戶是美國國防部,否則他負擔不起。