]> Cypherpunks.ru repositories - govpn.git/blob - doc/handshake.txt
Fix docstring splitted lines
[govpn.git] / doc / handshake.txt
1 @startuml
2 hide footbox
3 participant Client
4 participant Server
5
6 Client -> Server : R, enc(H(DSAPub), R, El(CDHPub))
7 note right
8 R=rand(64bit)
9 CDHPriv=rand(256bit)
10 end note
11
12 Server -> Client : enc(H(DSAPub), R+1, El(SDHPub))\nenc(K, R, RS+SS)
13 note right
14 SDHPriv=rand(256bit)
15 K=H(DH(SDHPriv, CDHPub))
16 RS=rand(64bit)
17 SS=rand(256bit)
18 end note
19
20 Client -> Server : enc(K, R+1, RS+RC+SC+Sign(DSAPriv, K))
21 note right
22 K=H(DH(CDHPriv, SDHPub))
23 RC=rand(64bit)
24 SC=rand(256bit)
25 end note
26
27 Server -> Client : enc(K, R+2, RC)
28 note right
29 compare(RS)
30 compare(RC)
31 Verify(DSAPub, Sign(DSAPriv, K), K)
32 MasterKey=SS XOR SC
33 end note
34
35 @enduml