]> Cypherpunks.ru repositories - govpn.git/blobdiff - doc/handshake.txt
[DOC] Separate handshake diagram on three stages for beauty
[govpn.git] / doc / handshake.txt
index 9a3bef5a07cbfe77749b360c3758ba8200378b86..43ed4ff56546cb5195f5daa7f89a5cad8bcbba95 100644 (file)
@@ -3,8 +3,11 @@ hide footbox
 participant Client
 participant Server
 
+== Preparation ==
 Client -> Client : R=rand(64bit)
 Client -> Client : CDHPriv=rand(256bit)
+
+== Interaction ==
 Client -> Server : R, enc(H(DSAPub), R, El(CDHPub))
 Server -> Server : SDHPriv=rand(256bit)
 Server -> Server : K=H(DH(SDHPriv, CDHPub))
@@ -16,8 +19,10 @@ Client -> Client : RC=rand(64bit); SC=rand(256bit)
 Client -> Server : enc(K, R+1, RS+RC+SC+Sign(DSAPriv, K))
 Server -> Server : compare(RS)
 Server -> Server : Verify(DSAPub, Sign(DSAPriv, K), K)
-Server -> Server : MasterKey=SS XOR SC
 Server -> Client : enc(K, R+2, RC)
+
+== Finalizing ==
 Client -> Client : compare(RC)
 Client -> Client : MasterKey=SS XOR SC
+Server -> Server : MasterKey=SS XOR SC
 @enduml