// This file is under BSD License 2.0
|
|
|
|
// Distribution protocol for p≡p
|
|
// Copyright (c) 2019-2021, p≡p foundation
|
|
|
|
// Written by Volker Birk
|
|
|
|
include ./fsm.yml2
|
|
|
|
protocol Distribution 2 {
|
|
|
|
// this protocol is stateless
|
|
fsm KeyReset 1 {
|
|
version 1, 0;
|
|
|
|
message Commands 2 {
|
|
auto Version version;
|
|
list Command commandlist {
|
|
field Identity ident;
|
|
field Hash newkey;
|
|
}
|
|
}
|
|
}
|
|
|
|
// this protocol is stateless
|
|
fsm ManagedGroup 2 {
|
|
version 1, 0;
|
|
|
|
message GroupInvite 2, security=untrusted {
|
|
field Identity groupIdentity;
|
|
field Identity manager;
|
|
}
|
|
|
|
message GroupAdopted 3, security=untrusted {
|
|
field Identity groupIdentity;
|
|
field Identity member;
|
|
}
|
|
|
|
message GroupDissolve 4, security=untrusted {
|
|
field Identity groupIdentity;
|
|
field Identity manager;
|
|
}
|
|
}
|
|
|
|
fsm Exploration 3 {
|
|
version 1, 0;
|
|
|
|
message ExploreRequest 2, security=unencrypted {
|
|
field TID challenge;
|
|
field Identity forward;
|
|
}
|
|
|
|
message ExploreAnswer 3, security=untrusted {
|
|
field TID challenge;
|
|
field Identity forward;
|
|
field Identity back;
|
|
}
|
|
|
|
message ExploreChallenge 4, security=untrusted {
|
|
field TID challenge;
|
|
field Identity forward;
|
|
field Identity back;
|
|
}
|
|
|
|
message ExploreResponse 5, security=untrusted {
|
|
field TID challenge;
|
|
field Identity forward;
|
|
field Identity back;
|
|
}
|
|
}
|
|
}
|
|
|