]> Cypherpunks.ru repositories - govpn.git/blobdiff - doc/handshake.txt
Fix docstring splitted lines
[govpn.git] / doc / handshake.txt
index 8c3eb3898be080c96303456a928645b296292610..50b479a56293daefb44b1daccda4e1009485598a 100644 (file)
@@ -1,22 +1,35 @@
 @startuml
+hide footbox
 participant Client
 participant Server
 
-Client -> Client : R=rand(64bit)
-Client -> Client : CDHPriv=rand(256bit)
-Client -> Server : R, enc(H(DSAPub), R, CDHPub)
-Server -> Server : SDHPriv=rand(256bit)
-Server -> Server : K=H(DH(SDHPriv, CDHPub))
-Server -> Server : RS=rand(64bit)
-Server -> Server : SS=rand(256bit)
-Server -> Client : enc(H(DSAPub), R+1, SDHPub); enc(K, R, RS+SS)
-Client -> Client : K=H(DH(CDHPriv, SDHPub))
-Client -> Client : RC=rand(64bit); SC=rand(256bit)
+Client -> Server : R, enc(H(DSAPub), R, El(CDHPub))
+note right
+R=rand(64bit)
+CDHPriv=rand(256bit)
+end note
+
+Server -> Client : enc(H(DSAPub), R+1, El(SDHPub))\nenc(K, R, RS+SS)
+note right
+SDHPriv=rand(256bit)
+K=H(DH(SDHPriv, CDHPub))
+RS=rand(64bit)
+SS=rand(256bit)
+end note
+
 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
+note right
+K=H(DH(CDHPriv, SDHPub))
+RC=rand(64bit)
+SC=rand(256bit)
+end note
+
 Server -> Client : enc(K, R+2, RC)
-Client -> Client : compare(RC)
-Client -> Client : MasterKey=SS XOR SC
+note right
+compare(RS)
+compare(RC)
+Verify(DSAPub, Sign(DSAPriv, K), K)
+MasterKey=SS XOR SC
+end note
+
 @enduml