Add diagram for SEIPDv2

This commit is contained in:
Paul Schaub 2023-11-27 23:39:26 +01:00 committed by Heiko Schaefer
parent 9951bcd9b2
commit c3c8cc745f
No known key found for this signature in database
GPG key ID: DAE9A9050FCCF1EB
3 changed files with 101 additions and 0 deletions

View file

@ -76,6 +76,13 @@ The [version 2 SEIPD](https://www.ietf.org/archive/id/draft-ietf-openpgp-crypto-
In version 2 SEIPD, the *session key* is transformed into a *message key*, based on a salt value in the v2 SEIPD packet.
```{figure} drawio/SEIPDv2-PKESK.png
:name: fig-encryption-seipdv2-pkesk
:alt: TODO
With SEIPDv2, the message-key is derived from the session-key in an extra step.
```
### v1 SEIPD, based on MDC
The [version 1 SEIPD](https://www.ietf.org/archive/id/draft-ietf-openpgp-crypto-refresh-12.html#version-one-seipd) mechanism is supported by all modern OpenPGP version 4 implementations. It was introduced in [RFC 4880](https://www.rfc-editor.org/rfc/rfc4880.html#section-5.13).

View file

@ -0,0 +1,94 @@
<mxfile host="app.diagrams.net" modified="2023-11-27T22:36:40.933Z" agent="Mozilla/5.0 (X11; Linux x86_64; rv:120.0) Gecko/20100101 Firefox/120.0" etag="u7uYV3Ns2F_J7Aq0dIny" version="22.1.4" type="device">
<diagram name="Seite-1" id="ocT50L08296YUH-PY7lG">
<mxGraphModel dx="1434" dy="759" 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" />
<mxCell id="_W93K0Xoa3x0vg-rA2AI-12" value="" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="380" y="60" width="160" height="400" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-2" value="Session Key" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;dashed=1;" vertex="1" parent="1">
<mxGeometry x="220" y="130" width="120" height="80" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-3" value="&lt;div&gt;PKESK #1&lt;/div&gt;0xBBBB..." style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="400" y="180" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-4" value="&lt;div&gt;PKESK #0&lt;/div&gt;0xAAAA..." style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="400" y="100" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-5" value="&lt;div&gt;Alice&#39;&lt;/div&gt;&lt;div&gt;Encryption Key&lt;/div&gt;&lt;div&gt;0xAAAA...&lt;br&gt;&lt;/div&gt;" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="70" y="100" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-6" value="&lt;pre class=&quot;code-block&quot;&gt;&lt;font face=&quot;Helvetica&quot;&gt;Bob&#39;s&lt;br&gt;Encryption Key&lt;br&gt;0xBBBB...&lt;br&gt;&lt;/font&gt;&lt;/pre&gt;" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="70" y="180" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-7" value="" style="curved=1;endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.25;exitDx=0;exitDy=0;startArrow=box;startFill=0;" edge="1" parent="1" source="_W93K0Xoa3x0vg-rA2AI-2" target="_W93K0Xoa3x0vg-rA2AI-4">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="270" y="420" as="sourcePoint" />
<mxPoint x="320" y="370" as="targetPoint" />
<Array as="points">
<mxPoint x="190" y="160" />
<mxPoint x="190" y="90" />
<mxPoint x="280" y="90" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-8" value="" style="curved=1;endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.75;exitDx=0;exitDy=0;startArrow=box;startFill=0;" edge="1" parent="1" source="_W93K0Xoa3x0vg-rA2AI-2" target="_W93K0Xoa3x0vg-rA2AI-3">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="270" y="420" as="sourcePoint" />
<mxPoint x="320" y="370" as="targetPoint" />
<Array as="points">
<mxPoint x="190" y="180" />
<mxPoint x="190" y="240" />
<mxPoint x="280" y="250" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-9" value="Plaintext" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;dashed=1;" vertex="1" parent="1">
<mxGeometry x="70" y="260" width="120" height="80" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-13" value="Encrypted Message" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="400" y="60" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-14" value="Message Key" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;dashed=1;" vertex="1" parent="1">
<mxGeometry x="220" y="270" width="120" height="80" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-17" value="" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="400" y="270" width="120" height="150" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-18" value="SEIPDv2" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="430" y="270" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-19" value="Salt: 49f8edc3" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="410" y="300" width="100" height="25" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-16" value="" style="curved=1;endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="_W93K0Xoa3x0vg-rA2AI-19" target="_W93K0Xoa3x0vg-rA2AI-14">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="400" y="300" as="sourcePoint" />
<mxPoint x="320" y="370" as="targetPoint" />
<Array as="points">
<mxPoint x="320" y="210" />
<mxPoint x="240" y="210" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-20" value="Ciphertext" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="410" y="340" width="100" height="70" as="geometry" />
</mxCell>
<mxCell id="_W93K0Xoa3x0vg-rA2AI-15" value="" style="curved=1;endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="_W93K0Xoa3x0vg-rA2AI-9" target="_W93K0Xoa3x0vg-rA2AI-20">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="270" y="420" as="sourcePoint" />
<mxPoint x="400" y="315" as="targetPoint" />
<Array as="points">
<mxPoint x="180" y="370" />
<mxPoint x="240" y="370" />
<mxPoint x="270" y="350" />
<mxPoint x="310" y="350" />
<mxPoint x="340" y="370" />
</Array>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB