<mxfile host="Electron" modified="2023-05-27T09:01:03.525Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/21.2.8 Chrome/112.0.5615.165 Electron/24.2.0 Safari/537.36" etag="i1G7JcC5oAzEir4ObBjE" version="21.2.8" type="device" pages="2">
  <diagram name="Original" id="FqI_Uc18MdwrZK0Q_-od">
    <mxGraphModel dx="1418" dy="820" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="srHxRr0k3Ldft_vYDwRU-5" value="" style="endArrow=none;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=1;shadow=1;dashed=1;dashPattern=1 4;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" parent="1" source="iEmX1L-yPPLDDzFzQw0k-1" target="srHxRr0k3Ldft_vYDwRU-2" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="420" y="1240" as="sourcePoint" />
            <mxPoint x="710" y="180" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-6" value="" style="endArrow=none;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=1;shadow=1;dashed=1;dashPattern=1 4;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" parent="1" source="iEmX1L-yPPLDDzFzQw0k-3" target="srHxRr0k3Ldft_vYDwRU-4" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="1070" y="1220" as="sourcePoint" />
            <mxPoint x="380" y="170" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-8" value="" style="endArrow=none;html=1;strokeWidth=1;rounded=0;shadow=1;dashed=1;dashPattern=1 4;exitX=0.75;exitY=0;exitDx=0;exitDy=0;entryX=0.75;entryY=1;entryDx=0;entryDy=0;" parent="1" source="JSmUGyYpVkCtsX9PmTqF-1" target="srHxRr0k3Ldft_vYDwRU-3" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="810" y="1220" as="sourcePoint" />
            <mxPoint x="810" y="190" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-27" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-21" target="srHxRr0k3Ldft_vYDwRU-11" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="670.62" y="310" as="sourcePoint" />
            <mxPoint x="720.62" y="260" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-28" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-24" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="670.62" y="540" as="sourcePoint" />
            <mxPoint x="815" y="580" as="targetPoint" />
            <Array as="points">
              <mxPoint x="615.62" y="580" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-29" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;DATA REQ. TO HIE-CM&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="640.62" y="570" width="120" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-31" value="" style="endArrow=classic;html=1;rounded=1;edgeStyle=elbowEdgeStyle;shadow=1;" parent="1" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="770" y="580" as="sourcePoint" />
            <mxPoint x="1070" y="250" as="targetPoint" />
            <Array as="points">
              <mxPoint x="940" y="420" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-32" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;DATA REQ. FORWARDED TO HIP(s)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="830" y="528" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-36" value="" style="endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;shadow=1;" parent="1" target="srHxRr0k3Ldft_vYDwRU-35" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="1050" y="250" as="sourcePoint" />
            <mxPoint x="840" y="280" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-53" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-38" target="srHxRr0k3Ldft_vYDwRU-39" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-54" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-40" target="srHxRr0k3Ldft_vYDwRU-41" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-55" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-42" target="srHxRr0k3Ldft_vYDwRU-45" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-56" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-46" target="srHxRr0k3Ldft_vYDwRU-48" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-57" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-50" target="srHxRr0k3Ldft_vYDwRU-51" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-60" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-52" target="srHxRr0k3Ldft_vYDwRU-58" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="850" as="sourcePoint" />
            <mxPoint x="910" y="800" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-62" value="" style="endArrow=classic;html=1;rounded=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;edgeStyle=orthogonalEdgeStyle;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-21" target="srHxRr0k3Ldft_vYDwRU-61" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="150" as="sourcePoint" />
            <mxPoint x="910" y="100" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-63" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;PERSISTENCE&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="332" y="290" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-66" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;dashed=1;dashPattern=1 2;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-64" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="850" as="sourcePoint" />
            <mxPoint x="815" y="1050" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-67" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-59" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="1050" as="sourcePoint" />
            <mxPoint x="420" y="1170" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-68" value="" style="endArrow=classic;html=1;rounded=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;edgeStyle=orthogonalEdgeStyle;shadow=1;" parent="1" target="srHxRr0k3Ldft_vYDwRU-65" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="420" y="1170" as="sourcePoint" />
            <mxPoint x="750" y="1000" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-71" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;dashed=1;dashPattern=1 2;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-58" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="970" as="sourcePoint" />
            <mxPoint x="815" y="1070" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-72" value="" style="endArrow=classic;html=1;rounded=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;edgeStyle=orthogonalEdgeStyle;dashed=1;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-61" target="srHxRr0k3Ldft_vYDwRU-70" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="550" y="670" as="sourcePoint" />
            <mxPoint x="600" y="620" as="targetPoint" />
            <Array as="points">
              <mxPoint x="40" y="240" />
              <mxPoint x="40" y="970" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-81" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-64" target="srHxRr0k3Ldft_vYDwRU-70" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-82" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-69" target="srHxRr0k3Ldft_vYDwRU-76" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-83" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-75" target="srHxRr0k3Ldft_vYDwRU-74" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-84" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-73" target="srHxRr0k3Ldft_vYDwRU-78" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-85" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-77" target="srHxRr0k3Ldft_vYDwRU-80" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-86" value="" style="endArrow=classic;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;edgeStyle=orthogonalEdgeStyle;dashed=1;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-65" target="srHxRr0k3Ldft_vYDwRU-80" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
            <Array as="points">
              <mxPoint x="410" y="1100" />
              <mxPoint x="410" y="430" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-87" value="" style="endArrow=classic;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;edgeStyle=orthogonalEdgeStyle;dashed=1;shadow=1;" parent="1" source="srHxRr0k3Ldft_vYDwRU-38" target="srHxRr0k3Ldft_vYDwRU-52" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="1000" y="670" as="sourcePoint" />
            <mxPoint x="1050" y="620" as="targetPoint" />
            <Array as="points">
              <mxPoint x="1450" y="300" />
              <mxPoint x="1450" y="970" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-88" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;ACKNOWLEDGEMENT&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="542" y="1040" width="120" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-90" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;ACKNOWLEDGEMENT&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="880" y="1060" width="120" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-91" value="&lt;font color=&quot;#4d4d4d&quot; style=&quot;font-size: 18px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;&lt;b&gt;HEALTH INFORMATION DATA FLOW BETWEEN HIP &amp;amp; HIU · ABDM&lt;/b&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;gradientColor=#b3b3b3;strokeColor=#666666;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="440" y="40" width="640" height="40" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-61" value="HIU Database" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="290" y="200" width="70" height="80" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-9" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Key Material Generation · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU generates an ECDH private, public keypair; and&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;a 32-byte&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; nonce.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="440.62" y="200" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-21" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIU Key Material: DHSK(U), DHPK(U), RAND(U)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="450.62" y="290" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-51" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; HI Data Encryption · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP encrypts the prepared HI data using the AES encryption&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; key and the IV generated in the prior steps.&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1090" y="870" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-52" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Encrypted HI Data: Encrypt(AES Key, IV, HI Data)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1100" y="960" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-58" value="&lt;font style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 12px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&lt;b&gt;&amp;nbsp; Health Information Response · HIP&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;blockquote style=&quot;margin: 0 0 0 40px; border: none; padding: 0px;&quot;&gt;&lt;br&gt;&lt;/blockquote&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP sends the HI (health information) data response payload&lt;br&gt;&amp;nbsp; — containing its public key material, and the&amp;nbsp;&lt;/span&gt;encrypted&amp;nbsp;health&lt;br&gt;&amp;nbsp; information data — to the &quot;Data Push URL&quot; sent by the HIU.&lt;br&gt;&amp;nbsp; Aditionally, HIP sends an acknowledgement of this response to&lt;br&gt;&amp;nbsp; HIE-CM." style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1089.38" y="1000" width="350.62" height="140" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-59" value="&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Fira Code&amp;quot;; background-color: initial;&quot;&gt;&lt;b&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;HI DATA RESPONSE PAYLOAD&lt;/font&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;ol style=&quot;&quot;&gt;&lt;b&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIP Public Key Material (DHPK(P), RAND(P))&lt;/font&gt;&lt;/li&gt;&lt;li style=&quot;&quot;&gt;Encrypted HI Data&lt;/li&gt;&lt;/b&gt;&lt;/ol&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#FFE6CC;strokeColor=#d6b656;align=left;shadow=1;gradientColor=none;gradientDirection=west;" parent="1" vertex="1">
          <mxGeometry x="1099.69" y="1130" width="330" height="80" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-48" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Encryption Key Generation · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP generates a 32-byte AES encryption key for the session&lt;br&gt;&amp;nbsp; with a HKDF (hash-based key derivation function) using the&lt;br&gt;&amp;nbsp; SALT and the Shared Secret (generated above).&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1090" y="740" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-50" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;AES Key · SK(U,P): HKDF(SALT, Shared Secret)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1100" y="830" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-45" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; XOR of Nonces · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP performs a XOR op. between HIU&#39;s nonce and its own, to&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; derive the SALT (used in generating the encryption key) and&lt;br&gt;&amp;nbsp; IV (used in the encryption process).&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1090" y="590" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-46" value="&lt;font style=&quot;font-size: 11px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;SALT: First 20 bytes of XOR(RAND(P), RAND(U))&lt;br&gt;&lt;/font&gt;IV: Last 12 bytes of XOR(RAND(P), RAND(U))&lt;/font&gt;&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;br&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1100" y="680" width="330" height="40" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-41" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Shared Secret Generation · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP generates a shared secret using its private key, and&lt;br&gt;&amp;nbsp; HIU&#39;s public key.&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1090" y="460" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-42" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Shared Secret · DHK(U,P): DHPK(U) ^ DHSK(P)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1100" y="550" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-39" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Key Material Generation · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP generates an ECDH private, public keypair; and&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;a 32-byte&lt;br&gt;&amp;nbsp; nonce.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1090" y="330" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-40" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIP Key Material: DHSK(P), DHPK(P), RAND(P)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1100" y="420" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-35" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Consent Artefact Validation &amp;amp; HI Data Prep. · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP ensures that it has the valid consent artefact,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;and fetches&lt;br&gt;&amp;nbsp; appropriate HI data against the consent in FHIR format.&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1090" y="200" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-38" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Health Information Data · FHIR Bundle&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="1100" y="290" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-10" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;START&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="460" y="190" width="50" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-79" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; HI Data Decryption · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU decrypts the received HI data using the AES decryption&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; key, and the IV generated in the prior steps.&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="50" y="330" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-80" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Decrypted HI Data: Decrypt(AES Key, IV, HI Data)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="60" y="420" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-92" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;END&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fillStyle=solid;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="70" y="320" width="50" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-11" value="&lt;font style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 12px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&lt;b&gt;&amp;nbsp; Health Information Request · HIU&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;blockquote style=&quot;margin: 0 0 0 40px; border: none; padding: 0px;&quot;&gt;&lt;br&gt;&lt;/blockquote&gt;&amp;nbsp; HIU sends a HI (health information) data request payload&lt;br&gt;&amp;nbsp; —&amp;nbsp;&lt;span style=&quot;background-color: initial;&quot;&gt;containing its public key material,&amp;nbsp;&lt;/span&gt;the consent artefact ID&lt;br&gt;&amp;nbsp; against which health information is being requested, and an&lt;br&gt;&amp;nbsp; endpoint URL where the encrypted HI data is expected to be&lt;br&gt;&amp;nbsp; pushed by a HIP — to HIE-CM, which then forwards it to the&lt;br&gt;&amp;nbsp; corresponding HIP(s)." style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="440" y="330" width="350.62" height="140" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-24" value="&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Fira Code&amp;quot;; background-color: initial;&quot;&gt;&lt;b&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;HI DATA REQUEST PAYLOAD&lt;/font&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;ol style=&quot;&quot;&gt;&lt;b&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIU Public Key Material (DHPK(U), RAND(U))&lt;/font&gt;&lt;/li&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Consent Artefact ID&lt;/font&gt;&lt;/li&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Data Push URL&lt;/font&gt;&lt;/li&gt;&lt;/b&gt;&lt;/ol&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#FFE6CC;strokeColor=#d6b656;align=left;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="450.62" y="460" width="330" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-77" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Decryption Key Generation · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU generates a 32-byte AES decryption key for the session&lt;br&gt;&amp;nbsp; with a HKDF (hash key derivation function) using the SALT,&lt;br&gt;&amp;nbsp; and the Shared Secret (generated above) as its parameters.&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="50" y="460" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-78" value="&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot; style=&quot;font-size: 11px;&quot;&gt;AES Key · SK(U,P): HKDF(SALT, Shared Secret)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="60" y="550" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-73" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; XOR of Nonces · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU performs a XOR op. between HIP&#39;s nonce and its own, to&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; derive the SALT (used in generating the decryption key) and&lt;br&gt;&amp;nbsp; IV (used in the decryption process).&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="50" y="590" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-74" value="&lt;font style=&quot;font-size: 11px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;SALT: First 20 bytes of XOR(RAND(U), RAND(P))&lt;br&gt;&lt;/font&gt;IV: Last 12 bytes of XOR(RAND(U), RAND(P))&lt;/font&gt;&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;br&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="60" y="680" width="330" height="40" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-75" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Shared Secret Generation · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU generates a shared secret using its private key, and&lt;br&gt;&amp;nbsp; HIP&#39;s public key.&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="50" y="740" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-76" value="&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot; style=&quot;font-size: 11px;&quot;&gt;Shared Secret · DHK(U,P): DHPK(U) ^ DHSK(P)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="60" y="830" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-69" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Key Material Retrieval · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU retrieves the required key material that it generated for this&lt;br&gt;&amp;nbsp; request&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;from its database.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="50" y="870" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-70" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Required HIU Key Material: DHSK(U), RAND(U)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="60" y="960" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-64" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Encrypted HI Data Reception · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU receives the encrypted HI data from the HIP, and&lt;br&gt;&amp;nbsp; acknowledges its receipt to HIE-CM&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;.&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="50" y="1000" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-65" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Encrypted Health Information Data&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="60" y="1090" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="iEmX1L-yPPLDDzFzQw0k-1" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIU&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information User&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="330" y="1240" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="iEmX1L-yPPLDDzFzQw0k-3" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIP&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Provider&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="980" y="1240" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-2" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIU&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information User&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="330" y="120" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-4" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIP&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Provider&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="980" y="120" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="srHxRr0k3Ldft_vYDwRU-3" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIE-CM&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Exchange Consent Manager&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="590.62" y="120" width="300" height="40" as="geometry" />
        </mxCell>
        <mxCell id="JSmUGyYpVkCtsX9PmTqF-1" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIE-CM&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Exchange Consent Manager&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="590.62" y="1240" width="300" height="40" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
  <diagram name="FIDELIUS CLI" id="YumbqaU7gHxeSeoS4Gxb">
    <mxGraphModel dx="1418" dy="820" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
      <root>
        <mxCell id="azn7bowIbez47tp5E7rw-0" />
        <mxCell id="azn7bowIbez47tp5E7rw-1" parent="azn7bowIbez47tp5E7rw-0" />
        <mxCell id="azn7bowIbez47tp5E7rw-2" value="" style="endArrow=none;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=1;shadow=1;dashed=1;dashPattern=1 4;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-67" target="azn7bowIbez47tp5E7rw-69" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="420" y="1240" as="sourcePoint" />
            <mxPoint x="710" y="180" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-3" value="" style="endArrow=none;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=1;shadow=1;dashed=1;dashPattern=1 4;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-68" target="azn7bowIbez47tp5E7rw-70" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="1070" y="1220" as="sourcePoint" />
            <mxPoint x="380" y="170" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-4" value="" style="endArrow=none;html=1;strokeWidth=1;rounded=0;shadow=1;dashed=1;dashPattern=1 4;exitX=0.75;exitY=0;exitDx=0;exitDy=0;entryX=0.75;entryY=1;entryDx=0;entryDy=0;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-72" target="azn7bowIbez47tp5E7rw-71" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="810" y="1220" as="sourcePoint" />
            <mxPoint x="810" y="190" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-5" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-36" target="azn7bowIbez47tp5E7rw-55" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="670.62" y="310" as="sourcePoint" />
            <mxPoint x="720.62" y="260" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-6" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-56" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="670.62" y="540" as="sourcePoint" />
            <mxPoint x="815" y="580" as="targetPoint" />
            <Array as="points">
              <mxPoint x="615.62" y="580" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-7" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;DATA REQ. TO HIE-CM&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="640.62" y="570" width="120" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-8" value="" style="endArrow=classic;html=1;rounded=1;edgeStyle=elbowEdgeStyle;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="770" y="580" as="sourcePoint" />
            <mxPoint x="1070" y="250" as="targetPoint" />
            <Array as="points">
              <mxPoint x="940" y="420" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-9" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;DATA REQ. FORWARDED TO HIP(s)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="830" y="528" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-10" value="" style="endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" target="azn7bowIbez47tp5E7rw-49" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="1050" y="250" as="sourcePoint" />
            <mxPoint x="840" y="280" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-11" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-50" target="azn7bowIbez47tp5E7rw-47" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-12" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-48" target="azn7bowIbez47tp5E7rw-45" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-13" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-46" target="azn7bowIbez47tp5E7rw-43" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-14" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-44" target="azn7bowIbez47tp5E7rw-41" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-15" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-42" target="azn7bowIbez47tp5E7rw-37" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="570" as="sourcePoint" />
            <mxPoint x="910" y="520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-16" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-38" target="azn7bowIbez47tp5E7rw-39" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="850" as="sourcePoint" />
            <mxPoint x="910" y="800" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-17" value="" style="endArrow=classic;html=1;rounded=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;edgeStyle=orthogonalEdgeStyle;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-36" target="azn7bowIbez47tp5E7rw-34" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="860" y="150" as="sourcePoint" />
            <mxPoint x="910" y="100" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-18" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;PERSISTENCE&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="332" y="290" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-19" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;dashed=1;dashPattern=1 2;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-65" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="850" as="sourcePoint" />
            <mxPoint x="815" y="1050" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-20" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-40" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="1050" as="sourcePoint" />
            <mxPoint x="420" y="1170" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-21" value="" style="endArrow=classic;html=1;rounded=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;edgeStyle=orthogonalEdgeStyle;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" target="azn7bowIbez47tp5E7rw-66" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="420" y="1170" as="sourcePoint" />
            <mxPoint x="750" y="1000" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-22" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;dashed=1;dashPattern=1 2;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-39" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="970" as="sourcePoint" />
            <mxPoint x="815" y="1070" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-23" value="" style="endArrow=classic;html=1;rounded=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;edgeStyle=orthogonalEdgeStyle;dashed=1;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-34" target="azn7bowIbez47tp5E7rw-64" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="550" y="670" as="sourcePoint" />
            <mxPoint x="600" y="620" as="targetPoint" />
            <Array as="points">
              <mxPoint x="40" y="240" />
              <mxPoint x="40" y="970" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-24" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-65" target="azn7bowIbez47tp5E7rw-64" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-25" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-63" target="azn7bowIbez47tp5E7rw-62" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-26" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-61" target="azn7bowIbez47tp5E7rw-60" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-27" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-59" target="azn7bowIbez47tp5E7rw-58" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-28" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-57" target="azn7bowIbez47tp5E7rw-53" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-29" value="" style="endArrow=classic;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;edgeStyle=orthogonalEdgeStyle;dashed=1;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-66" target="azn7bowIbez47tp5E7rw-53" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="700" y="770" as="sourcePoint" />
            <mxPoint x="750" y="720" as="targetPoint" />
            <Array as="points">
              <mxPoint x="410" y="1100" />
              <mxPoint x="410" y="430" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-30" value="" style="endArrow=classic;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;edgeStyle=orthogonalEdgeStyle;dashed=1;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" source="azn7bowIbez47tp5E7rw-50" target="azn7bowIbez47tp5E7rw-38" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="1000" y="670" as="sourcePoint" />
            <mxPoint x="1050" y="620" as="targetPoint" />
            <Array as="points">
              <mxPoint x="1450" y="300" />
              <mxPoint x="1450" y="970" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-31" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;ACKNOWLEDGEMENT&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="542" y="1040" width="120" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-32" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;ACKNOWLEDGEMENT&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="880" y="1060" width="120" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-33" value="&lt;font color=&quot;#4d4d4d&quot; style=&quot;font-size: 18px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;&lt;b&gt;HEALTH INFORMATION DATA FLOW BETWEEN HIP &amp;amp; HIU · ABDM&lt;/b&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;gradientColor=#b3b3b3;strokeColor=#666666;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="440" y="40" width="640" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-34" value="HIU Database" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="290" y="200" width="70" height="80" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-35" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Key Material Generation · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU generates an ECDH private, public keypair; and&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;a 32-byte&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; nonce.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="440.62" y="200" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-36" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIU Key Material: DHSK(U), DHPK(U), RAND(U)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="450.62" y="290" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-37" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; HI Data Encryption · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP encrypts the prepared HI data using the AES encryption&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; key and the IV generated in the prior steps.&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1090" y="870" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-38" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Encrypted HI Data: Encrypt(AES Key, IV, HI Data)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1100" y="960" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-39" value="&lt;font style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 12px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&lt;b&gt;&amp;nbsp; Health Information Response · HIP&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;blockquote style=&quot;margin: 0 0 0 40px; border: none; padding: 0px;&quot;&gt;&lt;br&gt;&lt;/blockquote&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP sends the HI (health information) data response payload&lt;br&gt;&amp;nbsp; — containing its public key material, and the&amp;nbsp;&lt;/span&gt;encrypted&amp;nbsp;health&lt;br&gt;&amp;nbsp; information data — to the &quot;Data Push URL&quot; sent by the HIU.&lt;br&gt;&amp;nbsp; Aditionally, HIP sends an acknowledgement of this response to&lt;br&gt;&amp;nbsp; HIE-CM." style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1089.38" y="1000" width="350.62" height="140" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-40" value="&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Fira Code&amp;quot;; background-color: initial;&quot;&gt;&lt;b&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;HI DATA RESPONSE PAYLOAD&lt;/font&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;ol style=&quot;&quot;&gt;&lt;b&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIP Public Key Material (DHPK(P), RAND(P))&lt;/font&gt;&lt;/li&gt;&lt;li style=&quot;&quot;&gt;Encrypted HI Data&lt;/li&gt;&lt;/b&gt;&lt;/ol&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#FFE6CC;strokeColor=#d6b656;align=left;shadow=1;gradientColor=none;gradientDirection=west;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1099.69" y="1130" width="330" height="80" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-41" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Encryption Key Generation · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP generates a 32-byte AES encryption key for the session&lt;br&gt;&amp;nbsp; with a HKDF (hash-based key derivation function) using the&lt;br&gt;&amp;nbsp; SALT and the Shared Secret (generated above).&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1090" y="740" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-42" value="&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot; style=&quot;font-size: 11px;&quot;&gt;AES Key · SK(U,P): HKDF(SALT, Shared Secret)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1100" y="830" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-43" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; XOR of Nonces · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP performs a XOR op. between HIU&#39;s nonce and its own, to&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; derive the SALT (used in generating the encryption key) and&lt;br&gt;&amp;nbsp; IV (used in the encryption process).&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1090" y="590" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-44" value="&lt;font style=&quot;font-size: 11px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;SALT: First 20 bytes of XOR(RAND(P), RAND(U))&lt;br&gt;&lt;/font&gt;IV: Last 12 bytes of XOR(RAND(P), RAND(U))&lt;/font&gt;&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;br&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1100" y="680" width="330" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-45" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Shared Secret Generation · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP generates a shared secret using its private key, and&lt;br&gt;&amp;nbsp; HIU&#39;s public key.&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1090" y="460" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-46" value="&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot; style=&quot;font-size: 11px;&quot;&gt;Shared Secret · DHK(U,P): DHPK(U) ^ DHSK(P)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1100" y="550" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-47" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Key Material Generation · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP generates an ECDH private, public keypair; and&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;a 32-byte&lt;br&gt;&amp;nbsp; nonce.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1090" y="330" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-48" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIP Key Material: DHSK(P), DHPK(P), RAND(P)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1100" y="420" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-49" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Consent Artefact Validation &amp;amp; HI Data Prep. · HIP&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIP ensures that it has the valid consent artefact,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;and fetches&lt;br&gt;&amp;nbsp; appropriate HI data against the consent in FHIR format.&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1090" y="200" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-50" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Health Information Data · FHIR Bundle&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1100" y="290" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-51" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;START&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="460" y="190" width="50" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-52" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; HI Data Decryption · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU decrypts the received HI data using the AES decryption&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; key, and the IV generated in the prior steps.&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="50" y="330" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-53" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Decrypted HI Data: Decrypt(AES Key, IV, HI Data)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="60" y="420" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-54" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;END&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="70" y="320" width="50" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-55" value="&lt;font style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 12px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&lt;b&gt;&amp;nbsp; Health Information Request · HIU&lt;/b&gt;&lt;/span&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;blockquote style=&quot;margin: 0 0 0 40px; border: none; padding: 0px;&quot;&gt;&lt;br&gt;&lt;/blockquote&gt;&amp;nbsp; HIU sends a HI (health information) data request payload&lt;br&gt;&amp;nbsp; —&amp;nbsp;&lt;span style=&quot;background-color: initial;&quot;&gt;containing its public key material,&amp;nbsp;&lt;/span&gt;the consent artefact ID&lt;br&gt;&amp;nbsp; against which health information is being requested, and an&lt;br&gt;&amp;nbsp; endpoint URL where the encrypted HI data is expected to be&lt;br&gt;&amp;nbsp; pushed by a HIP — to HIE-CM, which then forwards it to the&lt;br&gt;&amp;nbsp; corresponding HIP(s)." style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="440" y="330" width="350.62" height="140" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-56" value="&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Fira Code&amp;quot;; background-color: initial;&quot;&gt;&lt;b&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;HI DATA REQUEST PAYLOAD&lt;/font&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;ol style=&quot;&quot;&gt;&lt;b&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;HIU Public Key Material (DHPK(U), RAND(U))&lt;/font&gt;&lt;/li&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Consent Artefact ID&lt;/font&gt;&lt;/li&gt;&lt;li style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Data Push URL&lt;/font&gt;&lt;/li&gt;&lt;/b&gt;&lt;/ol&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#FFE6CC;strokeColor=#d6b656;align=left;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="450.62" y="460" width="330" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-57" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Decryption Key Generation · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU generates a 32-byte AES decryption key for the session&lt;br&gt;&amp;nbsp; with a HKDF (hash key derivation function) using the SALT,&lt;br&gt;&amp;nbsp; and the Shared Secret (generated above) as its parameters.&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="50" y="460" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-58" value="&lt;font style=&quot;font-size: 11px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;AES Key · SK(U,P): HKDF(SALT, Shared Secret)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="60" y="550" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-59" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; XOR of Nonces · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU performs a XOR op. between HIP&#39;s nonce and its own, to&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; derive the SALT (used in generating the decryption key) and&lt;br&gt;&amp;nbsp; IV (used in the decryption process).&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="50" y="590" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-60" value="&lt;font style=&quot;font-size: 11px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;&lt;font style=&quot;font-size: 11px;&quot;&gt;SALT: First 20 bytes of XOR(RAND(U), RAND(P))&lt;br&gt;&lt;/font&gt;IV: Last 12 bytes of XOR(RAND(U), RAND(P))&lt;/font&gt;&lt;font data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;&lt;br&gt;&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="60" y="680" width="330" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-61" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Shared Secret Generation · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU generates a shared secret using its private key, and&lt;br&gt;&amp;nbsp; HIP&#39;s public key.&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="50" y="740" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-62" value="&lt;font style=&quot;font-size: 11px;&quot; data-font-src=&quot;https://fonts.googleapis.com/css?family=Fira+Code&quot; face=&quot;Fira Code&quot;&gt;Shared Secret · DHK(U,P): DHPK(U) ^ DHSK(P)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="60" y="830" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-63" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Key Material Retrieval · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU retrieves the required key material that it generated for this&lt;br&gt;&amp;nbsp; request&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;from its database.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="50" y="870" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-64" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Required HIU Key Material: DHSK(U), RAND(U)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="60" y="960" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-65" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;br&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&amp;nbsp; Encrypted HI Data Reception · HIU&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&lt;br&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;&amp;nbsp; HIU receives the encrypted HI data from the HIP, and&lt;br&gt;&amp;nbsp; acknowledges its receipt to HIE-CM&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;.&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;" style="rounded=1;whiteSpace=wrap;html=1;align=left;fillColor=#dae8fc;strokeColor=#6c8ebf;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="50" y="1000" width="350" height="100" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-66" value="&lt;font style=&quot;font-size: 11px;&quot; face=&quot;Fira Code&quot;&gt;Encrypted Health Information Data&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;align=center;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="60" y="1090" width="330" height="20" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-67" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIU&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information User&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="330" y="1240" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-68" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIP&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Provider&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="980" y="1240" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-69" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIU&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information User&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="330" y="120" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-70" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIP&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Provider&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="980" y="120" width="180" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-71" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIE-CM&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Exchange Consent Manager&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="590.62" y="120" width="300" height="40" as="geometry" />
        </mxCell>
        <mxCell id="azn7bowIbez47tp5E7rw-72" value="&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;HIE-CM&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Health Information Exchange Consent Manager&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="590.62" y="1240" width="300" height="40" as="geometry" />
        </mxCell>
        <mxCell id="4tA2Wn9HzmzV3IXHI6PG-0" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (gkm)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1270" y="320" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-0" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (e)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1270" y="450" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-1" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (e)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1270" y="580" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-2" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (e)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1270" y="730" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-3" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (e)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="1270" y="860" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-5" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (gkm)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="620.62" y="190" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-6" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (d)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="230" y="320" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-7" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (d)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="230" y="450" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-9" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (d)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="230" y="580" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="vQL3ngxYylt3x_XI825H-10" value="&lt;font style=&quot;font-size: 10px;&quot;&gt;HANDLED BY FIDELIUS CLI (d)&lt;/font&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=none;fillStyle=solid;shadow=1;" parent="azn7bowIbez47tp5E7rw-1" vertex="1">
          <mxGeometry x="230" y="730" width="170" height="20" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
