blob: e1b89c61e0d95615bb69313b117ecca0789295e6 (
plain) (
blame)
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
|
// $URL$
// $Id$
// This is an attempt to capture
// http://subvert-rpki.hactrn.net/docs/prague-whiteboard-2007-03-22-23:15:01.jpg
// {arrowhead,arrowtail} shapes to use for database object relationships:
// 1- none
// m- crow
// Color code:
// Blue: visible in left-right protocol
// Green: created on the fly
digraph gsstsig_systems {
rotate=90; size="11,8.5"; splines=true; ratio=fill;
node [ shape=record ];
// Objects visible in left-to-right protocol
node [ color=blue ];
issuer [ label="Issuer cust_id" ];
parent [ label="Parent|{URL|key}" ];
repo [ label="Repository|{URL|key}" ];
child [ label="Child" ];
biz_sign [ label="Business signing context" ];
// Objects created on the fly by the RPKI engine
node [ color=green ];
ca [ label="CA|{CRL #|Last issued serial #}" ];
child_cert [ label="Child Certificate" ];
ee_cert [ label="EE certificate|{ROA}" ];
ca_key_pair [ label="CA key pair|{Latest CA certificate|Latest CRL}" ];
// One-many mappings
edge [ color=blue, arrowtail=none, arrowhead=crow ];
child -> biz_sign;
issuer -> child;
issuer -> parent;
parent -> biz_sign;
repo -> biz_sign;
repo -> parent;
// Many-many mappings
edge [ color=green, arrowtail=crow, arrowhead=crow ];
ca -> child;
// One-many mappings
edge [ color=green, arrowtail=none, arrowhead=crow ];
ca -> ca_key_pair;
child -> child_cert;
issuer -> ca;
parent -> ca;
// Weird one-many
edge [ color=green, arrowtail=none, arrowhead=crow, style=dashed ];
ca_key_pair -> child_cert;
ca_key_pair -> ee_cert;
}
// Local Variables:
// compile-command: "neato -Tps2 whiteboard-object-model.dot | ps2pdf - whiteboard-object-model.pdf"
// End:
|