From 99ce1791491eadf9e1e4372b9b3c169331e191e4 Mon Sep 17 00:00:00 2001 From: stefan Date: Sun, 22 Feb 2026 12:17:18 +0100 Subject: GnuPG WoT modeled, 1st attempt --- .../100-GnuPG-Keysigning-SEQ-KSP-WoT.puml | 121 +++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 PlantUML-ModelingTrust/GnuPG-WoT-Download/100-GnuPG-Keysigning-SEQ-KSP-WoT.puml (limited to 'PlantUML-ModelingTrust/GnuPG-WoT-Download/100-GnuPG-Keysigning-SEQ-KSP-WoT.puml') diff --git a/PlantUML-ModelingTrust/GnuPG-WoT-Download/100-GnuPG-Keysigning-SEQ-KSP-WoT.puml b/PlantUML-ModelingTrust/GnuPG-WoT-Download/100-GnuPG-Keysigning-SEQ-KSP-WoT.puml new file mode 100644 index 0000000..8ea1574 --- /dev/null +++ b/PlantUML-ModelingTrust/GnuPG-WoT-Download/100-GnuPG-Keysigning-SEQ-KSP-WoT.puml @@ -0,0 +1,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 (tsign) + +legend +Keysigning between Alice and Bob +. gpg --recv-keys 0x11F4C41EB3FBAE33 +. gpg --edit-key 0x11F4C41EB3FBAE33 +. tsign +. gpg --armor --export-options export-minimal --export 0xB3FBAE33 > 0xB3FBAE33.asc +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 -- cgit v1.2.3