2010-10-18 98 views
-2

我想在java中實現IPSEC協議。 我想知道如何創建我們自己的協議。 以及如何將此協議與數據包一起嵌入。實施IPSEC協議

請提供一些代碼示例,以便於理解。

+1

這個問題基本上是無法回答的。告訴我們你已經給它一些想法,將它分解成組件,並提出一個有針對性的問題,人們可以提供合理的答案。你也可能想提供一些動機,因爲IPSEC專家首先會想到的是,「你爲什麼要這樣做?」請注意,實施IPSEC與在Java中提供一些綁定是兩回事。 – andersoj 2010-10-18 15:50:58

+1

另請參閱此主題以瞭解StackOverflow討論的未來預測:http://forums.sun.com/thread.jspa?threadID=5261687 – andersoj 2010-10-18 15:53:43

回答

2

IPSec是一個互聯網層協議,而不是一個應用層協議。它通過對每個網絡數據包進行加密/保護來工作,因此通常通過操作系統提供的驅動程序在網卡級別運行,這使得它的使用對任何應用程序都是透明的。

這不是你在你自己的代碼中實現的東西,而是你想要應用程序級別的安全性,你可以看看TLS/SSL或更具體的通信協議。

+0

是的,我知道這一點。 但是在IPSEC中有一個AH標頭。 在該標題中有序列號。 其實我想實現這個序列號。 ,這樣我們纔可以接受那些尚未收到的數據包。 – Anant 2010-10-18 16:37:55

+2

這不取決於你 - IPSEC應該是透明的,它不適用於應用程序 - 你無法正確地在Java或任何託管語言中進行數據包捕獲。 – blowdart 2010-10-18 16:44:25

+0

@Anant - 你可以用這些細節來擴充你的問題,並說明你需要什麼seq編號?正如@blowdart所建議的,你永遠不應該在Java級別看到單獨可解析的IPSEC數據包,這樣你就可以做出這個決定(除非你已經有一個機制將原始數據包轉發到該級別進行檢查......) – andersoj 2010-10-18 16:49:14

1

IPSec無法在JAVA中實現。 Java需要虛擬機。我們需要直接在機器上運行的代碼。