diff --git a/directions/system_diagram_with_secureusb.svg b/directions/system_diagram_with_secureusb.svg
index ba3e723..3c30ca1 100644
--- a/directions/system_diagram_with_secureusb.svg
+++ b/directions/system_diagram_with_secureusb.svg
@@ -82,9 +82,9 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="1"
- inkscape:cx="343.15669"
- inkscape:cy="477.58302"
+ inkscape:zoom="0.70710679"
+ inkscape:cx="239.57751"
+ inkscape:cy="699.28303"
inkscape:document-units="mm"
inkscape:current-layer="layer2"
showgrid="false"
@@ -137,839 +137,841 @@
style="opacity:1;">
+ style="opacity:1;vector-effect:none;fill:#fffde9;fill-opacity:1;stroke:none;stroke-width:0.55275005;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:1.10550008, 1.10550008;stroke-dashoffset:0;stroke-opacity:1"
+ transform="translate(0,-11.90625)">
+ style="opacity:1;vector-effect:none;fill:#fffde9;fill-opacity:1;stroke:none;stroke-width:0.55275005;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:1.10550008, 1.10550008;stroke-dashoffset:0;stroke-opacity:1" />
+ style="opacity:1;vector-effect:none;fill:#fffde9;fill-opacity:1;stroke:none;stroke-width:0.55275005;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:1.10550008, 1.10550008;stroke-dashoffset:0;stroke-opacity:1" />
+ style="opacity:1;vector-effect:none;fill:#fffde9;fill-opacity:1;stroke:none;stroke-width:0.55275005;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:1.10550008, 1.10550008;stroke-dashoffset:0;stroke-opacity:1" />
+ style="stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
+ transform="translate(0,-11.90625)">
@@ -983,46 +985,46 @@
style="opacity:1;vector-effect:none;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ style="opacity:1;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
@@ -1170,120 +1172,120 @@
+ style="opacity:1;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
@@ -1291,241 +1293,241 @@
+ style="opacity:1;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.14081717;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
@@ -1535,29 +1537,29 @@
inkscape:connector-curvature="0"
id="path1412-7-7-1-4"
d="m 70.026691,44.53516 27.241102,3.31463 v 5.930119"
- style="opacity:1;fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none" />
+ style="opacity:1;fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;vector-effect:none;fill:#dbdbdb;fill-opacity:1;stroke:none;stroke-width:0.22569351;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.45138701, 0.45138701;stroke-dashoffset:0;stroke-opacity:1" />
+ style="opacity:1;vector-effect:none;fill:#fffde9;fill-opacity:1;stroke:none;stroke-width:0.55275005;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:1.10550008, 1.10550008;stroke-dashoffset:0;stroke-opacity:1"
+ transform="translate(0,-11.90625)">
+ style="opacity:1;vector-effect:none;fill:#fffde9;fill-opacity:1;stroke:none;stroke-width:0.55275005;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:1.10550008, 1.10550008;stroke-dashoffset:0;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:1.5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
+ transform="translate(0,-11.90625)">
Physical layout Switch matrix Keyboard controller USB host/USB host/crypto controller crypto controller USB host controller USB host controller OS kernel OS kernel Forwarding daemon Forwarding daemon Decryption daemon Decryption daemon USB device controller USB device controller GUI stack GUI stack Applications
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'Source Serif Pro';-inkscape-font-specification:'Source Serif Pro';text-align:end;text-anchor:end;fill:#ffffff;stroke:#ffffff;stroke-width:5.6692915;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">Applications
+ style="opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.22569351;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.45138701, 0.45138701;stroke-dashoffset:0;stroke-opacity:1" />
+ transform="matrix(0.93422266,0,0,0.93422266,28.982289,-57.616496)">
@@ -2618,13 +2622,14 @@
+ id="g4134"
+ transform="translate(0,-11.90625)">
@@ -2684,7 +2689,7 @@
xml:space="preserve"
id="flowRoot2440"
style="font-style:normal;font-weight:normal;font-size:16px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- transform="matrix(0.26458333,0,0,0.26458333,-46.247238,-31.788433)">Physical layout Switch matrix
+ transform="matrix(0.92637134,0,0,0.92637134,-26.555068,-65.029072)">
+ id="g3320">
+ transform="translate(2.1118436,-1.3224913)">
+ transform="translate(1.0583333,-0.52916667)">
+ id="g3019">
+ id="g3012">
+ transform="translate(-0.64492187,0.42994792)">
+ id="g2548-0">
+ id="g2548-0-2">
+ id="g2548-0-1">
+ id="g2548-0-4">
+ id="g2548-0-0">
+ id="g2548-0-7">
+ id="g2548-0-19">
+ transform="translate(-16.288412,-2.199349)">
+ transform="translate(-14.253753,-1.9083899)">
+ transform="translate(-12.21909,-1.6174304)">
+ transform="translate(-10.184432,-1.3264608)">
+ transform="translate(-8.1497749,-1.0355073)">
+ transform="translate(-6.1151129,-0.7445526)">
+ transform="translate(-4.0804541,-0.45356936)">
+ transform="translate(-2.045793,-0.16259991)">
+ transform="translate(-0.01113126,0.12834473)">
Keyboard controller
+ transform="matrix(0.93422265,0,0,0.93422265,37.616373,-45.622969)">
+ id="g1707-7-6">
+ transform="matrix(0.93422265,0,0,0.93422265,35.631973,-44.022626)">
+ id="g1707-7-5">
+ transform="matrix(0.93422265,0,0,0.93422265,33.647568,-42.422268)">
+ id="g1707-7">
+ transform="matrix(0.93422265,0,0,0.93422265,31.663168,-40.821929)">
+ id="g1707">
@@ -4811,8 +4788,9 @@
+ d="m 130.5157,128.55907 a 5.7041769,2.6883736 0 0 1 -5.70418,2.68837 5.7041769,2.6883736 0 0 1 -5.70417,-2.68837 5.7041769,2.6883736 0 0 1 5.70417,-2.68838 5.7041769,2.6883736 0 0 1 5.70418,2.68838 z"
+ id="path5729"
+ inkscape:connector-curvature="0" />
+ transform="translate(0,-36.789043)">
USB host/crypto controller
+ style="opacity:1;fill:#ffffff;stroke:#ffffff;stroke-width:2.15896153;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
@@ -4968,409 +4946,409 @@
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.34345388;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ style="fill:#ffffff;stroke:#ffffff;stroke-width:3.34345388;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none">
+ transform="matrix(0.64572789,0,0,0.64572789,82.139951,54.961885)">
+ id="g3150-4-4">
+ id="g3150-2">
+ id="g3019-7">
+ id="g3012-1">
+ id="g2548-4">
+ transform="translate(-1.887981,1.4543859)">
+ transform="translate(-3.1310473,2.478818)">
+ transform="translate(-4.3741077,3.5032548)">
+ transform="translate(-5.6171681,4.5276916)">
+ transform="translate(-6.8602285,5.5521285)">
+ transform="translate(-8.103293,6.5765653)">
+ transform="translate(-9.3463534,7.6010021)">
+ id="g2852-09">
+ id="g2852-2-5">
+ id="g2852-4-2">
+ id="g2852-6-0">
+ id="g2852-23-1">
+ id="g2852-7-8">
+ id="g2852-0-7">
+ id="g2852-9-8">
+ id="g2852-91-6">
+ transform="matrix(0.75821879,0,0,0.75821879,19.686192,-11.526834)">
+ transform="matrix(0.75821878,0,0,0.75821878,19.685833,-11.523238)">
+ transform="matrix(0.53620753,0,0,0.53620753,42.018159,55.089372)">
+ transform="translate(0,26.353369)">
@@ -6723,7 +6676,7 @@
inkscape:connector-curvature="0" />
@@ -6733,7 +6686,7 @@
style="font-style:normal;font-weight:normal;font-size:16px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot2440-9-8-4-31"
xml:space="preserve"
- transform="matrix(0.26458333,0,0,0.26458333,-25.564826,113.3129)">Decryption daemon
+ transform="matrix(0.64572789,0,0,0.64572789,82.139951,54.961885)">
+ id="g3150-4-4-7">
+ id="g3150-2-5">
+ id="g3019-7-0">
+ id="g3012-1-6">
+ id="g2548-4-4">
+ transform="translate(-1.887981,1.4543859)">
+ transform="translate(-3.1310473,2.478818)">
+ transform="translate(-4.3741077,3.5032548)">
+ transform="translate(-5.6171681,4.5276916)">
+ transform="translate(-6.8602285,5.5521285)">
+ transform="translate(-8.103293,6.5765653)">
+ transform="translate(-9.3463534,7.6010021)">
+ id="g2852-09-1">
+ id="g2852-2-5-8">
+ id="g2852-4-2-3">
+ id="g2852-6-0-5">
+ id="g2852-23-1-0">
+ id="g2852-7-8-4">
+ id="g2852-0-7-5">
+ id="g2852-9-8-8">
+ id="g2852-91-6-5">
+ transform="translate(-2.9934187,-11.90625)">
+ transform="translate(-0.59793094,13.257151)">
USB device controller
+ transform="matrix(0.64572789,0,0,0.64572789,82.139951,54.961885)">
+ id="g3150-4-4-4">
+ id="g3150-2-8">
+ id="g3019-7-08">
+ id="g3012-1-64">
+ id="g2548-4-5">
+ transform="translate(-1.887981,1.4543859)">
+ transform="translate(-3.1310473,2.478818)">
+ transform="translate(-4.3741077,3.5032548)">
+ transform="translate(-5.6171681,4.5276916)">
+ transform="translate(-6.8602285,5.5521285)">
+ transform="translate(-8.103293,6.5765653)">
+ transform="translate(-9.3463534,7.6010021)">
+ id="g2852-09-7">
+ id="g2852-2-5-9">
+ id="g2852-4-2-7">
+ id="g2852-6-0-8">
+ id="g2852-23-1-1">
+ id="g2852-7-8-0">
+ id="g2852-0-7-2">
+ id="g2852-9-8-0">
+ id="g2852-91-6-54">
+ transform="matrix(0.75821879,0,0,0.75821879,19.685832,51.183012)">
+ style="fill:#bfbfbf;stroke:#fffde9;stroke-width:2.45964575;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
+ style="opacity:1;vector-effect:none;fill:#bfbfbf;fill-opacity:1;fill-rule:evenodd;stroke:#fffde9;stroke-width:2.45964575;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ style="opacity:1;fill:#bfbfbf;fill-rule:evenodd;stroke:#fffde9;stroke-width:2.45964575;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:#bfbfbf;fill-rule:evenodd;stroke:#fffde9;stroke-width:2.45964575;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
@@ -10027,81 +9935,81 @@
inkscape:connector-curvature="0"
id="path5043-3-0"
d="M 78.150444,111.66528 74.2742,113.91035"
- style="opacity:1;fill:#bfbfbf;fill-rule:evenodd;stroke:#fffde9;stroke-width:2.45964567;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:#bfbfbf;fill-rule:evenodd;stroke:#fffde9;stroke-width:2.45964575;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ style="opacity:1;fill:#bfbfbf;fill-rule:evenodd;stroke:#fffde9;stroke-width:2.45964575;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ transform="matrix(0.75821879,0,0,0.75821879,19.685832,51.183011)">
+ transform="matrix(0.53620753,0,0,0.53620753,42.018159,55.089372)">
Applications
+
+ style="stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none"
+ transform="translate(0,-11.90625)">
+
+
+
+
+
+ inkscape:export-ydpi="1280">
+ transform="matrix(0.8395554,0,0,0.8395554,-5.4374857,-3.2733875)">
+ transform="matrix(0.93546514,0,0,0.93546514,-1.0854549,1.4271834)">
+ transform="matrix(0.48951256,0,0,0.48951256,88.891965,102.1085)"
+ style="opacity:1;stroke:#ffffff;stroke-width:4.08569717;stroke-miterlimit:4;stroke-dasharray:none">
+ style="stroke:#ffffff;stroke-width:4.08569717;stroke-miterlimit:4;stroke-dasharray:none">
+ id="g6094">
@@ -10504,7 +10434,7 @@
transform="matrix(0.26458333,0,0,0.26458333,145.6944,119.77935)">
SecureHID device RegularUSB Keyboard QubesOS machine
+ y="123.30882" />
+ transform="matrix(-1,0,0,1,186.55741,-11.90625)">
Authenticated, encrypted tunnel traverses untrusted USB setup
+ transform="rotate(9.0393804,249.77685,150.27836)">
Untrusted USB setup may be attacked by malicious devices
diff --git a/directions/system_diagram_without_secureusb.svg b/directions/system_diagram_without_secureusb.svg
new file mode 100644
index 0000000..f2ec8ff
--- /dev/null
+++ b/directions/system_diagram_without_secureusb.svg
@@ -0,0 +1,7061 @@
+
+
+
+