blob: 8ea1574e3fa47ee95f0e757ca4692e437ccc1d03 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
@startuml
' !theme mono
' !theme crt-amber
' !theme crt-green
' !theme amiga
' !theme metal
!theme mimeograph
title Sequence Diagram – Mutual Key Signing with Owner Trust (<font:monospace>tsign</font>)
legend
Keysigning between Alice and Bob
. <font:monospace>gpg --recv-keys 0x11F4C41EB3FBAE33</font>
. <font:monospace>gpg --edit-key 0x11F4C41EB3FBAE33</font>
. <font:monospace>tsign</font>
. <font:monospace>gpg --armor --export-options export-minimal --export 0xB3FBAE33 > 0xB3FBAE33.asc </font>
end legend
header
= Sequence of Key Signing with n==2
Compiled: %date("yyyy-MM-dd kk:mm Z")
endheader
actor Alice
actor Bob
participant "Alice GnuPG" as AG
participant "Bob GnuPG" as BG
database "Alice Keyring" as AK
database "Bob Keyring" as BK
database "Alice Owner Trust" as AT
database "Bob Owner Trust" as BT
entity "Alice Passport" as AID
entity "Bob Passport" as BID
'
' ''''''''''''''''''' KSP
'
group Key Signing Party
== ID Verification via Passport ==
Alice -> BID : Verify Bobs Passport
note right: verify ID and Key-Fingerprint
Bob -> AID : Verify Alice Passport
note right: verify ID and Key-Fingerprint:w
end group
'
' ''''''''''''''''''' KEX
'
group KeyExchange
== Key Exchange ==
Alice -> AG : Export PubKey
AG -> AK : Read PubKeyof Alice
AG -> Bob : Send PubKeyof Alice
Bob -> BG : Export PubKey
BG -> BK : Read PubKeyof Bob
BG -> Alice : Send PubKeyof Bob
== Signing ==
Bob -> BG : Sign Alice key\n(identity verified)
BG -> BK : Store signature on Alice key
BG -> Alice : Mail signed Alice key
Alice -> AG : Sign Bob key\n(identity verified)
AG -> AK : Store signature on Bob key
AG -> Bob : Mail signed Bob key
== Import ==
Alice -> AG : Import signed Alice key
AG -> AK : Update keyring
Bob -> BG : Import signed Bob key
BG -> BK : Update keyring
== Set Owner Trust ==
Alice -> AG : Set owner trust for Bob
AG -> AT : Store trust level
Bob -> BG : Set owner trust for Alice
BG -> BT : Store trust level
end group
'
' ''''''''''''''''''' WoT
'
group Trust calculation voa Web of Trust
== Web of Trust Calculation ==
Alice -> AG : Check validity of Bob key
AG -> AK : Read signatures
AG -> AT : Read owner trust values
AG -> Alice : Validity status\n(unknown/marginal/full)
Bob -> BG : Check validity of Alice key
BG -> BK : Read signatures
BG -> BT : Read owner trust values
BG -> Bob : Validity status\n(unknown/marginal/full)
end group
@enduml
|