Other private keys added (doc)

This commit is contained in:
NicolasCantu 2024-02-19 17:54:11 +01:00
parent f0d80be8de
commit 97f3595a6e
9 changed files with 1002 additions and 904 deletions

View File

@ -1,6 +1,6 @@
<mxfile host="Electron" modified="2024-02-19T16:16:12.104Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/23.1.5 Chrome/120.0.6099.109 Electron/28.1.0 Safari/537.36" version="23.1.5" etag="yAJ95t_-xstbQ3abDYTa" type="device">
<mxfile host="Electron" modified="2024-02-19T16:39:37.486Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/23.1.5 Chrome/120.0.6099.109 Electron/28.1.0 Safari/537.36" version="23.1.5" etag="hWCz_Zv2A0n3Khr2sVgi" type="device">
<diagram id="bWoO5ACGZIaXrIiKNTKd" name="Page-1">
<mxGraphModel dx="2849" dy="1894" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<mxGraphModel dx="1732" dy="1216" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
@ -10,26 +10,26 @@
<mxCell id="275" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="2" target="5" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="2" value="GenKey&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxCell id="2" value="&lt;b&gt;KeyRecover&lt;/b&gt;&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-761.7619217081851" y="-167" width="88.8134519572954" height="28.999999999999993" as="geometry" />
</mxCell>
<mxCell id="271" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="3" target="267" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-686" y="-18" />
<mxPoint x="-686" y="-1" />
<mxPoint x="-686" y="127" />
<mxPoint x="-686" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-307" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="3" target="270">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-744" y="-1" />
<mxPoint x="-744" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="3" value="Password&lt;br&gt;18 characters" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-772" y="-48" width="110" height="30" as="geometry" />
<mxGeometry x="-772" y="97" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="4" value="Part2&lt;br&gt;128 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-524.36" y="-127.08" width="103.81" height="29" as="geometry" />
@ -53,7 +53,7 @@
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6" value="Part2Enc" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-524.3599999999999" y="97" width="103.81" height="29" as="geometry" />
<mxGeometry x="-524.3599999999999" y="242" width="103.81" height="29" as="geometry" />
</mxCell>
<mxCell id="188" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeColor=#000000;" parent="1" source="5" target="77" edge="1">
<mxGeometry relative="1" as="geometry">
@ -66,14 +66,14 @@
<mxCell id="201" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="8" target="181" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-717" y="112" />
<mxPoint x="-717" y="257" />
</Array>
<mxPoint x="-926" y="120" as="sourcePoint" />
<mxPoint x="-717" y="130" as="targetPoint" />
<mxPoint x="-926" y="265" as="sourcePoint" />
<mxPoint x="-717" y="275" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="8" value="Part1Enc" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1028.9" y="96.99999999999997" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-1028.9" y="242" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="20" value="" style="endArrow=none;html=1;rounded=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;startArrow=classic;startFill=1;endFill=0;labelBackgroundColor=none;fontColor=#000000;" parent="1" source="276" target="5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
@ -89,15 +89,15 @@
</mxCell>
<mxCell id="23" value="" style="endArrow=none;html=1;rounded=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;startArrow=classic;startFill=1;endFill=0;labelBackgroundColor=none;fontColor=#000000;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="268" target="267" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-836.6765106217686" y="72" as="sourcePoint" />
<mxPoint x="-697" y="15" as="targetPoint" />
<mxPoint x="-836.6765106217686" y="217" as="sourcePoint" />
<mxPoint x="-697" y="160" as="targetPoint" />
<Array as="points">
<mxPoint x="-472" y="-1" />
<mxPoint x="-472" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="32" value="Shard" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-516.4195321963339" y="201" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-516.4195321963339" y="346" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="281" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" target="278" edge="1">
<mxGeometry relative="1" as="geometry">
@ -105,7 +105,7 @@
</mxGeometry>
</mxCell>
<mxCell id="77" value="ImageRevoke" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;fontStyle=1" parent="1" vertex="1">
<mxGeometry x="-772" y="-127" width="110" height="29" as="geometry" />
<mxGeometry x="-770.93" y="-127.08" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="154" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;labelBackgroundColor=none;fontColor=#000000;" parent="1" source="155" target="2" edge="1">
<mxGeometry relative="1" as="geometry" />
@ -151,10 +151,10 @@
<mxCell id="164" value="ImageRecoverUpload" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-1352.89" y="-195.21" width="115.48" height="29" as="geometry" />
</mxCell>
<mxCell id="165" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;labelBackgroundColor=none;fontColor=#000000;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="166" edge="1" target="167">
<mxCell id="165" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;labelBackgroundColor=none;fontColor=#000000;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1354.98" y="-62.21" as="sourcePoint" />
<mxPoint x="-1294.85" y="-39.999999999999964" as="targetPoint" />
<mxPoint x="-1294.28" y="-78" as="sourcePoint" />
<mxPoint x="-1294.73" y="-62" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="166" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
@ -165,194 +165,194 @@
</mxCell>
<mxCell id="179" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="270" target="276" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-914.3699999999999" y="-52.5" as="sourcePoint" />
<mxPoint x="-914.3699999999999" y="92.5" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="182" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="177" target="270" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-806" y="-20" as="targetPoint" />
<mxPoint x="-806" y="125" as="targetPoint" />
<Array as="points">
<mxPoint x="-776" y="-1" />
<mxPoint x="-776" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="273" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="177" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-716" y="163" as="targetPoint" />
<mxPoint x="-716" y="308" as="targetPoint" />
<Array as="points">
<mxPoint x="-776" y="113" />
<mxPoint x="-716" y="113" />
<mxPoint x="-776" y="258" />
<mxPoint x="-716" y="258" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="177" value="SeedRand1&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-820.37" y="32.99999999999999" width="88.8134519572954" height="28.999999999999993" as="geometry" />
<mxGeometry x="-820.37" y="178" width="88.8134519572954" height="28.999999999999993" as="geometry" />
</mxCell>
<mxCell id="180" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="178" target="267" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-659" y="-1" />
<mxPoint x="-659" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="183" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="178" target="267" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-659" y="-1" />
<mxPoint x="-659" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="272" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="178" target="181" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-659" y="113" />
<mxPoint x="-717" y="113" />
<mxPoint x="-659" y="258" />
<mxPoint x="-717" y="258" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="178" value="SeedRand2&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-703.31" y="33.00000000000001" width="88.8134519572954" height="28.999999999999993" as="geometry" />
<mxGeometry x="-703.31" y="178" width="88.8134519572954" height="28.999999999999993" as="geometry" />
</mxCell>
<mxCell id="280" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="181" target="279" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="181" value="ImageRecover" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;fontStyle=1" parent="1" vertex="1">
<mxGeometry x="-772" y="138.71" width="110" height="29" as="geometry" />
<mxGeometry x="-772" y="283.71000000000004" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="259" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="189" target="202" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1178" y="211" />
<mxPoint x="-1178" y="356" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="189" value="PreId" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1220.891944604848" y="185" width="88.8134519572954" height="28.999999999999993" as="geometry" />
<mxGeometry x="-1220.891944604848" y="330" width="88.8134519572954" height="28.999999999999993" as="geometry" />
</mxCell>
<mxCell id="190" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.56;exitY=1.01;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitPerimeter=0;" parent="1" source="258" target="189" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-367.91" y="134.15" as="targetPoint" />
<mxPoint x="-367.91" y="279.15" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="191" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;strokeColor=#999999;entryX=0.549;entryY=0.044;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="3" target="258" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-446" y="93" as="targetPoint" />
<mxPoint x="-446" y="238" as="targetPoint" />
<Array as="points">
<mxPoint x="-1171" y="-33" />
<mxPoint x="-1171" y="112" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="192" value="Shard" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-506.4195321963339" y="211" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-506.4195321963339" y="356" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="206" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="193" target="202" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1184" y="304" as="targetPoint" />
<mxPoint x="-1184" y="449" as="targetPoint" />
<Array as="points">
<mxPoint x="-449" y="270" />
<mxPoint x="-1178" y="270" />
<mxPoint x="-449" y="415" />
<mxPoint x="-1178" y="415" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="193" value="Shard" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-493.4195321963339" y="224" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-493.4195321963339" y="369" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="200" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="196" target="197" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="196" value="SharedProcessSelected" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="-269.55999999999995" y="138.71" width="170" height="30.71" as="geometry" />
<mxGeometry x="-269.55999999999995" y="283.71000000000004" width="170" height="30.71" as="geometry" />
</mxCell>
<mxCell id="197" value="SpAddress" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-230.55953219633375" y="201" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-230.55953219633375" y="346" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="198" value="SpAddress" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-220.55953219633375" y="211" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-220.55953219633375" y="356" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="205" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="199" target="202" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-166" y="270" />
<mxPoint x="-1178" y="270" />
<mxPoint x="-166" y="415" />
<mxPoint x="-1178" y="415" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-288" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="199" target="193">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-211" y="240" />
<mxPoint x="-360" y="240" />
<mxPoint x="-211" y="385" />
<mxPoint x="-360" y="385" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="199" value="SpAddress" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-210.55953219633375" y="221" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-210.55953219633375" y="366" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="202" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1254" y="369" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1254" y="514" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="203" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1235.7457165981" y="379.00000000000006" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1235.7457165981" y="524" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="233" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="204" target="228" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1199" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1199" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="234" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="204" target="230" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1158" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1158" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="235" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="204" target="231" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1119" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1119" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="236" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="204" target="232" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1080" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1080" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="204" value="RequestPrdKeyBackup" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1217.4914331962004" y="389.00000000000006" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1217.4914331962004" y="534" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="228" value="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1213.97" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1213.97" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="230" value="2" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1172.9" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1172.9" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="231" value="3" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1133.97" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1133.97" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="232" value="4" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1094.03" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1094.03" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-322" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="245" target="HEAZNrv7IqFEUBU4v7G9-308">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="245" value="Relais WS" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="-1172.9" y="483.71000000000004" width="60" height="30" as="geometry" />
<mxGeometry x="-1172.9" y="628.71" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="258" value="SHA-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-1239.46" y="129" width="125" height="30" as="geometry" />
<mxGeometry x="-1239.46" y="274" width="125" height="30" as="geometry" />
</mxCell>
<mxCell id="261" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="260" target="2" edge="1">
<mxGeometry relative="1" as="geometry">
@ -361,38 +361,38 @@
</Array>
</mxGeometry>
</mxCell>
<mxCell id="260" value="SeedRand0&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-523.15" y="-193" width="101.39" height="26" as="geometry" />
<mxCell id="260" value="SeedRand0-Spend&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-540" y="-193" width="130" height="26" as="geometry" />
</mxCell>
<mxCell id="267" value="SHA-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-614.5" y="-16" width="125" height="30" as="geometry" />
<mxGeometry x="-614.5" y="129" width="125" height="30" as="geometry" />
</mxCell>
<mxCell id="269" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="268" target="6" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="268" value="AES-GCM-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-542" y="43.000000000000014" width="137.39" height="30" as="geometry" />
<mxGeometry x="-542" y="188" width="137.39" height="30" as="geometry" />
</mxCell>
<mxCell id="270" value="SHA-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-945.3699999999999" y="-16" width="125" height="30" as="geometry" />
<mxGeometry x="-945.3699999999999" y="129" width="125" height="30" as="geometry" />
</mxCell>
<mxCell id="277" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="276" target="8" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="276" value="AES-GCM-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-1054.29" y="43.000000000000014" width="137.39" height="30" as="geometry" />
<mxGeometry x="-1054.29" y="188" width="137.39" height="30" as="geometry" />
</mxCell>
<mxCell id="278" value="Download" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="-772" y="-84" width="110" height="29" as="geometry" />
<mxGeometry x="-772" y="61" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="279" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="-769.8" y="185" width="110" height="29" as="geometry" />
<mxGeometry x="-769.8" y="330" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="284" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="282" target="32" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="282" value="Shamir Secret Sharing" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-567.45" y="141.86" width="190" height="30" as="geometry" />
<mxGeometry x="-567.45" y="286.86" width="190" height="30" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-290" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-289" target="155">
<mxGeometry relative="1" as="geometry" />
@ -431,164 +431,257 @@
<mxGeometry x="-1349.98" y="-151.07999999999998" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-308" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-1217.49" y="541" width="147.49" height="30" as="geometry" />
<mxGeometry x="-1217.49" y="686" width="147.49" height="30" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-309" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-1199.2357165981" y="551" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1199.2357165981" y="696" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-326" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.52;entryY=-0.021;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-310" target="HEAZNrv7IqFEUBU4v7G9-325">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-310" value="RequestPrdResponse" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-1180.9814331962004" y="561" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1180.9814331962004" y="706" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-356" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.129;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-312" target="HEAZNrv7IqFEUBU4v7G9-310">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-840" y="576" />
<mxPoint x="-944" y="576" />
<mxPoint x="-840" y="721" />
<mxPoint x="-944" y="721" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-311" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-877.85" y="541" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-877.85" y="686" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-312" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-859.5957165981" y="551" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-859.5957165981" y="696" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-327" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-313">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-920.0000000000002" y="651" as="targetPoint" />
<mxPoint x="-920.0000000000002" y="796" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-313" value="TxSp" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-841.3414331962005" y="561" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-841.3414331962005" y="706" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-314" value="5" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-762" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-762" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-315" value="6" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-720.9300000000001" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-720.9300000000001" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-316" value="7" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-682" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-682" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-317" value="8" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-642.06" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-642.06" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-323" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-318" target="HEAZNrv7IqFEUBU4v7G9-311">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-691" y="521" />
<mxPoint x="-802" y="521" />
<mxPoint x="-691" y="666" />
<mxPoint x="-802" y="666" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-324" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-318" target="HEAZNrv7IqFEUBU4v7G9-319">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-691" y="521" />
<mxPoint x="-586" y="521" />
<mxPoint x="-691" y="666" />
<mxPoint x="-586" y="666" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-318" value="Relais WS" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="-720.9300000000001" y="483.71000000000004" width="60" height="30" as="geometry" />
<mxGeometry x="-720.9300000000001" y="628.71" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-319" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-662.45" y="541" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-662.45" y="686" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-320" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-644.1957165981" y="551" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-644.1957165981" y="696" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-321" value="RequestPrdMessage" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-625.9414331962005" y="561" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-625.9414331962005" y="706" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-331" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-325" target="HEAZNrv7IqFEUBU4v7G9-330">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-325" value="Controls" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-999.7014331962005" y="651" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-999.7014331962005" y="796" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-328" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.52;entryY=0.034;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-321" target="HEAZNrv7IqFEUBU4v7G9-325">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-329" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-759.8" y="195" width="110" height="29" as="geometry" />
<mxGeometry x="-759.8" y="340" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-330" value="" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.start_2;whiteSpace=wrap;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;" vertex="1" parent="1">
<mxGeometry x="-933.4999999999999" y="701" width="20" height="20" as="geometry" />
<mxGeometry x="-933.4999999999999" y="846" width="20" height="20" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-335" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-332">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-184.83999999999992" y="95.28999999999996" as="targetPoint" />
<mxPoint x="-184.83999999999992" y="240.28999999999996" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-332" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-241.58999999999992" y="43" width="114.62" height="29" as="geometry" />
<mxGeometry x="-241.58999999999992" y="188" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-334" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-333">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-184.55999999999995" y="95.28999999999996" as="targetPoint" />
<mxPoint x="-184.55999999999995" y="240.28999999999996" as="targetPoint" />
<Array as="points">
<mxPoint x="-312.55999999999995" y="80" />
<mxPoint x="-184.55999999999995" y="80" />
<mxPoint x="-312.55999999999995" y="225" />
<mxPoint x="-184.55999999999995" y="225" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-333" value="SDK" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-370" y="43" width="114.62" height="29" as="geometry" />
<mxGeometry x="-370" y="188" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-337" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" target="196">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-184.83999999999992" y="126" as="sourcePoint" />
<mxPoint x="-184.83999999999992" y="271" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-336" value="SharedProcessListMerged" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
<mxGeometry x="-277.55999999999995" y="95.28999999999999" width="180" height="30.71" as="geometry" />
<mxGeometry x="-277.55999999999995" y="240.28999999999996" width="180" height="30.71" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-341" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-338" target="HEAZNrv7IqFEUBU4v7G9-340">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-853" y="320" />
<mxPoint x="-911" y="320" />
<mxPoint x="-911" y="340" />
<mxPoint x="-907" y="340" />
<mxPoint x="-853" y="465" />
<mxPoint x="-911" y="465" />
<mxPoint x="-911" y="485" />
<mxPoint x="-907" y="485" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-338" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-910.42" y="280" width="114.62" height="29" as="geometry" />
<mxGeometry x="-910.42" y="425" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-342" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-339">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-910" y="340" as="targetPoint" />
<mxPoint x="-910" y="485" as="targetPoint" />
<Array as="points">
<mxPoint x="-981" y="320" />
<mxPoint x="-981" y="465" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-339" value="SDK" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-1038.8300000000002" y="280" width="114.62" height="29" as="geometry" />
<mxGeometry x="-1038.8300000000002" y="425" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-343" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-340">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1040" y="460" as="targetPoint" />
<mxPoint x="-1040" y="605" as="targetPoint" />
<Array as="points">
<mxPoint x="-916" y="460" />
<mxPoint x="-916" y="605" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-344" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-340">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-790" y="460" as="targetPoint" />
<mxPoint x="-790" y="605" as="targetPoint" />
<Array as="points">
<mxPoint x="-916" y="460" />
<mxPoint x="-916" y="605" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-340" value="SharedPeerListMerged" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
<mxGeometry x="-1005.8499999999999" y="338.29" width="180" height="30.71" as="geometry" />
<mxGeometry x="-1005.8499999999999" y="483.29" width="180" height="30.71" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-381" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-362" target="HEAZNrv7IqFEUBU4v7G9-363">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-362" value="SeedRand0-Scan&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-1083.35" y="290.86" width="153.35" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-380" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-363">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-770" y="300" as="targetPoint" />
<Array as="points">
<mxPoint x="-810" y="300" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-363" value="&lt;b&gt;KeyScan&lt;/b&gt;&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-909.18" y="289.36" width="99.18" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-369" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-364" target="HEAZNrv7IqFEUBU4v7G9-367">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-364" value="SeedRand0-Revoke-Spend&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-964.48" y="-89" width="152.73" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-370" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-366" target="HEAZNrv7IqFEUBU4v7G9-368">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-366" value="SeedRand0-Revoke-Spend&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-964.48" y="-8" width="152.73" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-371" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-367" target="77">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-800" y="-35" />
<mxPoint x="-800" y="-113" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-367" value="&lt;b&gt;KeyRevokeSpend&lt;/b&gt;" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-949.0000000000001" y="-50" width="121.76" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-372" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-368" target="77">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-810" y="-130" as="targetPoint" />
<Array as="points">
<mxPoint x="-800" y="47" />
<mxPoint x="-800" y="-113" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-368" value="&lt;b&gt;KeyRevokeScan&lt;/b&gt;" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-949.0000000000001" y="32" width="121.76" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-383" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-374">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-910" y="346" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-374" value="SeedRand0-ScanMainnet&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-1083.35" y="333" width="153.35" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-385" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-375">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-910" y="383.7142857142858" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-375" value="SeedRand0-SpendMainnet&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-1083.35" y="370.71" width="153.35" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-379" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-376">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-772" y="300" as="targetPoint" />
<Array as="points">
<mxPoint x="-790" y="348" />
<mxPoint x="-790" y="300" />
<mxPoint x="-772" y="300" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-376" value="&lt;b&gt;KeyMainSpend&lt;/b&gt;&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-909.18" y="333" width="99.18" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-378" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.003;entryY=0.571;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-377" target="181">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-790" y="385" />
<mxPoint x="-790" y="300" />
<mxPoint x="-772" y="300" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-377" value="&lt;b&gt;KeyMainScan&lt;/b&gt;&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-909.18" y="370.71" width="99.18" height="29" as="geometry" />
</mxCell>
</root>
</mxGraphModel>

File diff suppressed because it is too large Load Diff

View File

@ -106,7 +106,7 @@ La création d'un `RequestPcd` suit plusieurs étapes :
| `RequestPrdResponse` | waiting `sig_value` | Yes | No | See Received | No | No | Yes |
| `RequestPrdConfirm` | (option) Waiting `code_confirm_enc_by_shared_secret` | Yes | No | See Received | No | No | No |
| `RequestPrdKeyBackup` | No | No | No | all the members of the `SharedProcess` | No | Yes | No |
| `RequestPrdKeyHello` | No | Yes | No | all the members of all `Role` into to `ItemProcess` | Yes | Yes | Yes |
| `RequestPrdKeyHello` | No | No | No | all the members of all `Role` into to `ItemProcess` | Yes | Yes | Yes |
### 5.2. <a name='Rception-1'></a>Réception
@ -189,9 +189,9 @@ La réception d'un `RequestPcd` suit plusieurs étapes :
4. Recherche des `RequestPrd` en relation via `request_prd_reference_hash` et `request_prd_origin_hash` et attente si nécessaire et traitement de ceux ci.
5. Vérification de la conformité des `RequestPrd` en relation.
6. Recherche de l'`Item` associé via `item_reference_hash` et attente si nécessaire et traitement de celui ci.
7. (Sauf `RequestPRDKeyBackup`) Déchiffrage des attributs confidentiels notés `<attribut>_enc_by_shared_secret` depuis la `KeyConfidential` de la`transaction SP` correspondante via hash du `RequestPrd` dans l'output `2` de la transaction.
7. (Sauf `RequestPRDKeyBackup` et `RequestPrdKeyHello`) Déchiffrage des attributs confidentiels notés `<attribut>_enc_by_shared_secret` depuis la `KeyConfidential` de la`transaction SP` correspondante via hash du `RequestPrd` dans l'output `2` de la transaction.
8. Mise à jour du cache pour les traitement des RequestPrd.
9. Voir `RequestPrdConfirm` création et envoi (sauf pour les `RequestPrdConfirm` et les `RequestPrdKeyBackup` et les `RequestPrdMessage` ayant un `raw_transaction_list` non vide).
9. Voir `RequestPrdConfirm` création et envoi (sauf pour les `RequestPrdConfirm` et les `RequestPrdKeyBackup` et les `RequestPrdKeyHello` et les `RequestPrdMessage` ayant un `raw_transaction_list` non vide).
10. Validation des conditions définies dans le `ItemProcess` pour ce d'`Item` avec le `Role` correspondant dans le `ItemProcess` et dans ce rôles les conditions pour ce type de `RequestPrd` (dans l'attribut `request_prd_type`) telles que définies dans [Specs-Process-Roles-Specs.md](Specs-Process-Roles-Specs.md).
11. Traitements spécifiques au type de RequestPrd.

View File

@ -36,7 +36,7 @@ La`transaction SP` a aussi une fonction d'horodate et de preuve de publication d
Les `RequestPrdConfirm` qui sont des accusés automatiques de réception des `RequestPrd` sont aussi associés à une transaction Silent Payment SP, ce qui permet d'ajouter les preuves de réception des demandes et des validations (ou non).
Il y a une `transactions SP` pour tous les types de `RequestPrd` sauf pour les `RequestPrdKeyBackup` et les `RequestPrdKeyMessage` ayant l'attribut `raw_transaction_list` non vide.
Il y a une `transactions SP` pour tous les types de `RequestPrd` sauf pour les `RequestPrdKeyBackup` et les `RequestPrdKeyHello` et les `RequestPrdKeyMessage` ayant l'attribut `raw_transaction_list` non vide.
## 5. <a name='Structuredesoutputs'></a> Structure des outputs

View File

@ -88,7 +88,7 @@ Les `RequestPcd` et les `RequestPrd` sont envoyés aux relais dans des enveloppe
Ces enveloppent communique les `RequestPcd` et les `RequestPrd` de façon chiffrée par la `ProcessKey`. Ainsi les messages sont rendus fongibles sur le réseau de relais.
Tous les `RequestPrd` (sauf les `RequestPrdKeyBackup`), sont confirmés par un et chiffrent les clés transamises par une `KeyConfiditial`.
Tous les `RequestPrd` (sauf les `RequestPrdKeyBackup` et les `RequestPrdKeyHello`), sont confirmés par un et chiffrent les clés transamises par une `KeyConfiditial`.
Les relais peuvent déchiffrer les enveloppes avec la `ProcessKey`, le contenu étant chiffré en plus en fonction des niveaux de confidentialité. L'objectif du chiffrage des enveloppe est de donner, un temps, un coût et une complexité aux analyses systématiques des flux.

View File

@ -1,6 +1,6 @@
<mxfile host="Electron" modified="2024-02-19T16:24:27.822Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/23.1.5 Chrome/120.0.6099.109 Electron/28.1.0 Safari/537.36" version="23.1.5" etag="iHD-0Guw8O3POKPEOkNA" type="device">
<mxfile host="Electron" modified="2024-02-19T16:39:41.018Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/23.1.5 Chrome/120.0.6099.109 Electron/28.1.0 Safari/537.36" version="23.1.5" etag="W8uscAhUOcLbwdENHDs5" type="device">
<diagram id="bWoO5ACGZIaXrIiKNTKd" name="Page-1">
<mxGraphModel dx="2849" dy="1894" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<mxGraphModel dx="2473" dy="1666" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
@ -16,20 +16,20 @@
<mxCell id="271" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="3" target="267" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-686" y="-18" />
<mxPoint x="-686" y="-1" />
<mxPoint x="-686" y="127" />
<mxPoint x="-686" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-307" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="3" target="270">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-744" y="-1" />
<mxPoint x="-744" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="3" value="Password&lt;br&gt;18 characters" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-772" y="-48" width="110" height="30" as="geometry" />
<mxGeometry x="-772" y="97" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="4" value="Part2&lt;br&gt;128 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-524.36" y="-127.08" width="103.81" height="29" as="geometry" />
@ -53,7 +53,7 @@
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6" value="Part2Enc" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-524.3599999999999" y="97" width="103.81" height="29" as="geometry" />
<mxGeometry x="-524.3599999999999" y="242" width="103.81" height="29" as="geometry" />
</mxCell>
<mxCell id="188" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeColor=#000000;" parent="1" source="5" target="77" edge="1">
<mxGeometry relative="1" as="geometry">
@ -66,14 +66,14 @@
<mxCell id="201" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="8" target="181" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-717" y="112" />
<mxPoint x="-717" y="257" />
</Array>
<mxPoint x="-926" y="120" as="sourcePoint" />
<mxPoint x="-717" y="130" as="targetPoint" />
<mxPoint x="-926" y="265" as="sourcePoint" />
<mxPoint x="-717" y="275" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="8" value="Part1Enc" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1028.9" y="96.99999999999997" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-1028.9" y="242" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="20" value="" style="endArrow=none;html=1;rounded=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;startArrow=classic;startFill=1;endFill=0;labelBackgroundColor=none;fontColor=#000000;" parent="1" source="276" target="5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
@ -89,15 +89,15 @@
</mxCell>
<mxCell id="23" value="" style="endArrow=none;html=1;rounded=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;startArrow=classic;startFill=1;endFill=0;labelBackgroundColor=none;fontColor=#000000;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="268" target="267" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-836.6765106217686" y="72" as="sourcePoint" />
<mxPoint x="-697" y="15" as="targetPoint" />
<mxPoint x="-836.6765106217686" y="217" as="sourcePoint" />
<mxPoint x="-697" y="160" as="targetPoint" />
<Array as="points">
<mxPoint x="-472" y="-1" />
<mxPoint x="-472" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="32" value="Shard" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-516.4195321963339" y="201" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-516.4195321963339" y="346" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="281" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" target="278" edge="1">
<mxGeometry relative="1" as="geometry">
@ -105,7 +105,7 @@
</mxGeometry>
</mxCell>
<mxCell id="77" value="ImageRevoke" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;fontStyle=1" parent="1" vertex="1">
<mxGeometry x="-772" y="-127" width="110" height="29" as="geometry" />
<mxGeometry x="-770.93" y="-127.08" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="154" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;labelBackgroundColor=none;fontColor=#000000;" parent="1" source="155" target="2" edge="1">
<mxGeometry relative="1" as="geometry" />
@ -151,10 +151,10 @@
<mxCell id="164" value="ImageRecoverUpload" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-1352.89" y="-195.21" width="115.48" height="29" as="geometry" />
</mxCell>
<mxCell id="165" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;labelBackgroundColor=none;fontColor=#000000;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="166" edge="1" target="167">
<mxCell id="165" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;labelBackgroundColor=none;fontColor=#000000;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1354.98" y="-62.21" as="sourcePoint" />
<mxPoint x="-1294.85" y="-39.999999999999964" as="targetPoint" />
<mxPoint x="-1294.28" y="-78" as="sourcePoint" />
<mxPoint x="-1294.73" y="-62" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="166" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
@ -165,194 +165,194 @@
</mxCell>
<mxCell id="179" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="270" target="276" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-914.3699999999999" y="-52.5" as="sourcePoint" />
<mxPoint x="-914.3699999999999" y="92.5" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="182" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="177" target="270" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-806" y="-20" as="targetPoint" />
<mxPoint x="-806" y="125" as="targetPoint" />
<Array as="points">
<mxPoint x="-776" y="-1" />
<mxPoint x="-776" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="273" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="177" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-716" y="163" as="targetPoint" />
<mxPoint x="-716" y="308" as="targetPoint" />
<Array as="points">
<mxPoint x="-776" y="113" />
<mxPoint x="-716" y="113" />
<mxPoint x="-776" y="258" />
<mxPoint x="-716" y="258" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="177" value="SeedRand1&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-820.37" y="32.99999999999999" width="88.8134519572954" height="28.999999999999993" as="geometry" />
<mxGeometry x="-820.37" y="178" width="88.8134519572954" height="28.999999999999993" as="geometry" />
</mxCell>
<mxCell id="180" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="178" target="267" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-659" y="-1" />
<mxPoint x="-659" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="183" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="178" target="267" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-659" y="-1" />
<mxPoint x="-659" y="144" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="272" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="178" target="181" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-659" y="113" />
<mxPoint x="-717" y="113" />
<mxPoint x="-659" y="258" />
<mxPoint x="-717" y="258" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="178" value="SeedRand2&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-703.31" y="33.00000000000001" width="88.8134519572954" height="28.999999999999993" as="geometry" />
<mxGeometry x="-703.31" y="178" width="88.8134519572954" height="28.999999999999993" as="geometry" />
</mxCell>
<mxCell id="280" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="181" target="279" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="181" value="ImageRecover" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;fontStyle=1" parent="1" vertex="1">
<mxGeometry x="-772" y="138.71" width="110" height="29" as="geometry" />
<mxGeometry x="-772" y="283.71000000000004" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="259" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="189" target="202" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1178" y="211" />
<mxPoint x="-1178" y="356" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="189" value="PreId" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1220.891944604848" y="185" width="88.8134519572954" height="28.999999999999993" as="geometry" />
<mxGeometry x="-1220.891944604848" y="330" width="88.8134519572954" height="28.999999999999993" as="geometry" />
</mxCell>
<mxCell id="190" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.56;exitY=1.01;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitPerimeter=0;" parent="1" source="258" target="189" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-367.91" y="134.15" as="targetPoint" />
<mxPoint x="-367.91" y="279.15" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="191" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;strokeColor=#999999;entryX=0.549;entryY=0.044;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="3" target="258" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-446" y="93" as="targetPoint" />
<mxPoint x="-446" y="238" as="targetPoint" />
<Array as="points">
<mxPoint x="-1171" y="-33" />
<mxPoint x="-1171" y="112" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="192" value="Shard" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-506.4195321963339" y="211" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-506.4195321963339" y="356" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="206" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="193" target="202" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1184" y="304" as="targetPoint" />
<mxPoint x="-1184" y="449" as="targetPoint" />
<Array as="points">
<mxPoint x="-449" y="270" />
<mxPoint x="-1178" y="270" />
<mxPoint x="-449" y="415" />
<mxPoint x="-1178" y="415" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="193" value="Shard" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-493.4195321963339" y="224" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-493.4195321963339" y="369" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="200" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="196" target="197" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="196" value="SharedProcessSelected" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="-269.55999999999995" y="138.71" width="170" height="30.71" as="geometry" />
<mxGeometry x="-269.55999999999995" y="283.71000000000004" width="170" height="30.71" as="geometry" />
</mxCell>
<mxCell id="197" value="SpAddress" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-230.55953219633375" y="201" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-230.55953219633375" y="346" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="198" value="SpAddress" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-220.55953219633375" y="211" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-220.55953219633375" y="356" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="205" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="199" target="202" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-166" y="270" />
<mxPoint x="-1178" y="270" />
<mxPoint x="-166" y="415" />
<mxPoint x="-1178" y="415" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-288" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="199" target="193">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-211" y="240" />
<mxPoint x="-360" y="240" />
<mxPoint x="-211" y="385" />
<mxPoint x="-360" y="385" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="199" value="SpAddress" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="-210.55953219633375" y="221" width="88.8134519572954" height="30.709999999999994" as="geometry" />
<mxGeometry x="-210.55953219633375" y="366" width="88.8134519572954" height="30.709999999999994" as="geometry" />
</mxCell>
<mxCell id="202" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1254" y="369" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1254" y="514" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="203" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1235.7457165981" y="379.00000000000006" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1235.7457165981" y="524" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="233" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="204" target="228" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1199" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1199" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="234" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="204" target="230" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1158" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1158" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="235" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="204" target="231" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1119" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1119" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="236" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="204" target="232" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-1140" y="418" />
<mxPoint x="-1140" y="436" />
<mxPoint x="-1080" y="436" />
<mxPoint x="-1140" y="563" />
<mxPoint x="-1140" y="581" />
<mxPoint x="-1080" y="581" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="204" value="RequestPrdKeyBackup" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="-1217.4914331962004" y="389.00000000000006" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1217.4914331962004" y="534" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="228" value="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1213.97" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1213.97" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="230" value="2" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1172.9" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1172.9" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="231" value="3" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1133.97" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1133.97" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="232" value="4" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fontColor=#333333;fillColor=#f5f5f5;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="-1094.03" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-1094.03" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-322" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="245" target="HEAZNrv7IqFEUBU4v7G9-308">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="245" value="Relais WS" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="-1172.9" y="483.71000000000004" width="60" height="30" as="geometry" />
<mxGeometry x="-1172.9" y="628.71" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="258" value="SHA-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-1239.46" y="129" width="125" height="30" as="geometry" />
<mxGeometry x="-1239.46" y="274" width="125" height="30" as="geometry" />
</mxCell>
<mxCell id="261" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="260" target="2" edge="1">
<mxGeometry relative="1" as="geometry">
@ -361,38 +361,38 @@
</Array>
</mxGeometry>
</mxCell>
<mxCell id="260" value="SeedRand0&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-523.15" y="-193" width="101.39" height="26" as="geometry" />
<mxCell id="260" value="SeedRand0-Spend&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" parent="1" vertex="1">
<mxGeometry x="-540" y="-193" width="130" height="26" as="geometry" />
</mxCell>
<mxCell id="267" value="SHA-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-614.5" y="-16" width="125" height="30" as="geometry" />
<mxGeometry x="-614.5" y="129" width="125" height="30" as="geometry" />
</mxCell>
<mxCell id="269" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="268" target="6" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="268" value="AES-GCM-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-542" y="43.000000000000014" width="137.39" height="30" as="geometry" />
<mxGeometry x="-542" y="188" width="137.39" height="30" as="geometry" />
</mxCell>
<mxCell id="270" value="SHA-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-945.3699999999999" y="-16" width="125" height="30" as="geometry" />
<mxGeometry x="-945.3699999999999" y="129" width="125" height="30" as="geometry" />
</mxCell>
<mxCell id="277" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="276" target="8" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="276" value="AES-GCM-256" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-1054.29" y="43.000000000000014" width="137.39" height="30" as="geometry" />
<mxGeometry x="-1054.29" y="188" width="137.39" height="30" as="geometry" />
</mxCell>
<mxCell id="278" value="Download" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="-772" y="-84" width="110" height="29" as="geometry" />
<mxGeometry x="-772" y="61" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="279" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="-769.8" y="185" width="110" height="29" as="geometry" />
<mxGeometry x="-769.8" y="330" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="284" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="282" target="32" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="282" value="Shamir Secret Sharing" style="label;whiteSpace=wrap;html=1;image=img/clipart/Gear_128x128.png" parent="1" vertex="1">
<mxGeometry x="-567.45" y="141.86" width="190" height="30" as="geometry" />
<mxGeometry x="-567.45" y="286.86" width="190" height="30" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-290" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-289" target="155">
<mxGeometry relative="1" as="geometry" />
@ -431,164 +431,257 @@
<mxGeometry x="-1349.98" y="-151.07999999999998" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-308" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-1217.49" y="541" width="147.49" height="30" as="geometry" />
<mxGeometry x="-1217.49" y="686" width="147.49" height="30" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-309" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-1199.2357165981" y="551" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1199.2357165981" y="696" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-326" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.52;entryY=-0.021;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-310" target="HEAZNrv7IqFEUBU4v7G9-325">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-310" value="RequestPrdResponse" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-1180.9814331962004" y="561" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-1180.9814331962004" y="706" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-356" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.129;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-312" target="HEAZNrv7IqFEUBU4v7G9-310">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-840" y="576" />
<mxPoint x="-944" y="576" />
<mxPoint x="-840" y="721" />
<mxPoint x="-944" y="721" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-311" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-877.85" y="541" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-877.85" y="686" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-312" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-859.5957165981" y="551" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-859.5957165981" y="696" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-327" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-313">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-920.0000000000002" y="651" as="targetPoint" />
<mxPoint x="-920.0000000000002" y="796" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-313" value="TxSp" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-841.3414331962005" y="561" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-841.3414331962005" y="706" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-314" value="5" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-762" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-762" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-315" value="6" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-720.9300000000001" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-720.9300000000001" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-316" value="7" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-682" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-682" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-317" value="8" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;container=0;rounded=1;labelBackgroundColor=none;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="-642.06" y="452.78" width="28.93" height="28.93" as="geometry" />
<mxGeometry x="-642.06" y="597.78" width="28.93" height="28.93" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-323" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-318" target="HEAZNrv7IqFEUBU4v7G9-311">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-691" y="521" />
<mxPoint x="-802" y="521" />
<mxPoint x="-691" y="666" />
<mxPoint x="-802" y="666" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-324" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-318" target="HEAZNrv7IqFEUBU4v7G9-319">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-691" y="521" />
<mxPoint x="-586" y="521" />
<mxPoint x="-691" y="666" />
<mxPoint x="-586" y="666" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-318" value="Relais WS" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="-720.9300000000001" y="483.71000000000004" width="60" height="30" as="geometry" />
<mxGeometry x="-720.9300000000001" y="628.71" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-319" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-662.45" y="541" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-662.45" y="686" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-320" value="PRDKeyBackip" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-644.1957165981" y="551" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-644.1957165981" y="696" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-321" value="RequestPrdMessage" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-625.9414331962005" y="561" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-625.9414331962005" y="706" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-331" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-325" target="HEAZNrv7IqFEUBU4v7G9-330">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-325" value="Controls" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-999.7014331962005" y="651" width="152.39494830511973" height="28.99999999999996" as="geometry" />
<mxGeometry x="-999.7014331962005" y="796" width="152.39494830511973" height="28.99999999999996" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-328" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.52;entryY=0.034;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-321" target="HEAZNrv7IqFEUBU4v7G9-325">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-329" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-759.8" y="195" width="110" height="29" as="geometry" />
<mxGeometry x="-759.8" y="340" width="110" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-330" value="" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.start_2;whiteSpace=wrap;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;" vertex="1" parent="1">
<mxGeometry x="-933.4999999999999" y="701" width="20" height="20" as="geometry" />
<mxGeometry x="-933.4999999999999" y="846" width="20" height="20" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-335" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-332">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-184.83999999999992" y="95.28999999999996" as="targetPoint" />
<mxPoint x="-184.83999999999992" y="240.28999999999996" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-332" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-241.58999999999992" y="43" width="114.62" height="29" as="geometry" />
<mxGeometry x="-241.58999999999992" y="188" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-334" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-333">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-184.55999999999995" y="95.28999999999996" as="targetPoint" />
<mxPoint x="-184.55999999999995" y="240.28999999999996" as="targetPoint" />
<Array as="points">
<mxPoint x="-312.55999999999995" y="80" />
<mxPoint x="-184.55999999999995" y="80" />
<mxPoint x="-312.55999999999995" y="225" />
<mxPoint x="-184.55999999999995" y="225" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-333" value="SDK" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-370" y="43" width="114.62" height="29" as="geometry" />
<mxGeometry x="-370" y="188" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-337" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" target="196">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-184.83999999999992" y="126" as="sourcePoint" />
<mxPoint x="-184.83999999999992" y="271" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-336" value="SharedProcessListMerged" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
<mxGeometry x="-277.55999999999995" y="95.28999999999999" width="180" height="30.71" as="geometry" />
<mxGeometry x="-277.55999999999995" y="240.28999999999996" width="180" height="30.71" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-341" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-338" target="HEAZNrv7IqFEUBU4v7G9-340">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-853" y="320" />
<mxPoint x="-911" y="320" />
<mxPoint x="-911" y="340" />
<mxPoint x="-907" y="340" />
<mxPoint x="-853" y="465" />
<mxPoint x="-911" y="465" />
<mxPoint x="-911" y="485" />
<mxPoint x="-907" y="485" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-338" value="Cache" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-910.42" y="280" width="114.62" height="29" as="geometry" />
<mxGeometry x="-910.42" y="425" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-342" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-339">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-910" y="340" as="targetPoint" />
<mxPoint x="-910" y="485" as="targetPoint" />
<Array as="points">
<mxPoint x="-981" y="320" />
<mxPoint x="-981" y="465" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-339" value="SDK" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
<mxGeometry x="-1038.8300000000002" y="280" width="114.62" height="29" as="geometry" />
<mxGeometry x="-1038.8300000000002" y="425" width="114.62" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-343" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-340">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1040" y="460" as="targetPoint" />
<mxPoint x="-1040" y="605" as="targetPoint" />
<Array as="points">
<mxPoint x="-916" y="460" />
<mxPoint x="-916" y="605" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-344" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-340">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-790" y="460" as="targetPoint" />
<mxPoint x="-790" y="605" as="targetPoint" />
<Array as="points">
<mxPoint x="-916" y="460" />
<mxPoint x="-916" y="605" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-340" value="SharedPeerListMerged" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
<mxGeometry x="-1005.8499999999999" y="338.29" width="180" height="30.71" as="geometry" />
<mxGeometry x="-1005.8499999999999" y="483.29" width="180" height="30.71" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-381" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-362" target="HEAZNrv7IqFEUBU4v7G9-363">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-362" value="SeedRand0-Scan&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-1083.35" y="290.86" width="153.35" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-380" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-363">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-770" y="300" as="targetPoint" />
<Array as="points">
<mxPoint x="-810" y="300" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-363" value="&lt;b&gt;KeyScan&lt;/b&gt;&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-909.18" y="289.36" width="99.18" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-369" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-364" target="HEAZNrv7IqFEUBU4v7G9-367">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-364" value="SeedRand0-Revoke-Spend&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-964.48" y="-89" width="152.73" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-370" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-366" target="HEAZNrv7IqFEUBU4v7G9-368">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-366" value="SeedRand0-Revoke-Spend&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-964.48" y="-8" width="152.73" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-371" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-367" target="77">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-800" y="-35" />
<mxPoint x="-800" y="-113" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-367" value="&lt;b&gt;KeyRevokeSpend&lt;/b&gt;" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-949.0000000000001" y="-50" width="121.76" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-372" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-368" target="77">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-810" y="-130" as="targetPoint" />
<Array as="points">
<mxPoint x="-800" y="47" />
<mxPoint x="-800" y="-113" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-368" value="&lt;b&gt;KeyRevokeScan&lt;/b&gt;" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-949.0000000000001" y="32" width="121.76" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-383" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-374">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-910" y="346" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-374" value="SeedRand0-ScanMainnet&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-1083.35" y="333" width="153.35" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-385" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-375">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-910" y="383.7142857142858" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-375" value="SeedRand0-SpendMainnet&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
<mxGeometry x="-1083.35" y="370.71" width="153.35" height="26" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-379" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-376">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-772" y="300" as="targetPoint" />
<Array as="points">
<mxPoint x="-790" y="348" />
<mxPoint x="-790" y="300" />
<mxPoint x="-772" y="300" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-376" value="&lt;b&gt;KeyMainSpend&lt;/b&gt;&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-909.18" y="333" width="99.18" height="29" as="geometry" />
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-378" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.003;entryY=0.571;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="HEAZNrv7IqFEUBU4v7G9-377" target="181">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="-790" y="385" />
<mxPoint x="-790" y="300" />
<mxPoint x="-772" y="300" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="HEAZNrv7IqFEUBU4v7G9-377" value="&lt;b&gt;KeyMainScan&lt;/b&gt;&lt;br&gt;256 bits" style="rounded=1;whiteSpace=wrap;html=1;labelBackgroundColor=none;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="-909.18" y="370.71" width="99.18" height="29" as="geometry" />
</mxCell>
</root>
</mxGraphModel>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 KiB

After

Width:  |  Height:  |  Size: 295 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 386 KiB

After

Width:  |  Height:  |  Size: 362 KiB