forked from cfrg/draft-irtf-cfrg-hash-to-curve
-
Notifications
You must be signed in to change notification settings - Fork 0
/
diag.xml
195 lines (195 loc) · 23.5 KB
/
diag.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="www.draw.io" modified="2020-03-13T19:20:13.063Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" version="12.8.4" etag="Ww6k23z50dNlUMM5W-z9">
<diagram id="5uv0sLZd1CG-Yo4jPqLn" name="Page-1">
<mxGraphModel dx="817" dy="588" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1100" pageHeight="850" math="1" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="hH6OWWwSYyNsOQdXuhbv-38" value="" style="rounded=0;whiteSpace=wrap;html=1;fontColor=#333333;fillColor=#CCE5FF;strokeColor=#666666;" parent="1" vertex="1">
<mxGeometry x="279.99999999999994" y="130" width="680" height="76" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-23" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#EDF7F6;strokeColor=#006600;" parent="1" vertex="1">
<mxGeometry x="279.99999999999994" y="254.5" width="680" height="140" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-1" value="Start" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.start_1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="23" y="224.5" width="52" height="30" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-2" value="Hashing to Elliptic Curves" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=28;fontStyle=1" parent="1" vertex="1">
<mxGeometry x="28" y="15" width="360" height="40" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-12" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;fontSize=12;strokeWidth=2;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="e5kPCjj8kIqCvvov5xjr-10" target="hH6OWWwSYyNsOQdXuhbv-65" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="270" y="330" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-10" value="Random <br>oracle<br>&nbsp;model?" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.decision;whiteSpace=wrap;fontSize=12;verticalAlign=middle;fillColor=#FFE599;strokeColor=#23445d;" parent="1" vertex="1">
<mxGeometry x="176.5" y="198.25" width="93.5" height="82.5" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-14" value="msg&nbsp;<span style="font-size: 12px ; text-align: left ; white-space: normal">∈&nbsp;</span>{0,1}*" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=14;fontStyle=1" parent="1" vertex="1">
<mxGeometry x="72" y="214.5" width="100" height="20" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-20" value="No<br>" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="210.5" y="145" width="30" height="20" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-21" value="Yes, or <br>not sure" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="195.5" y="335" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-33" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontSize=12;exitX=1;exitY=0.5;exitDx=0;exitDy=0;strokeWidth=2;" parent="1" source="e5kPCjj8kIqCvvov5xjr-23" target="e5kPCjj8kIqCvvov5xjr-32" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="598" y="169" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-23" value="<div style="text-align: left"></div><span style="text-align: left">u</span><sub style="text-align: left">0</sub><span style="text-align: left">&nbsp;= hash_to_field(</span><b style="text-align: left">msg</b><span style="text-align: left">, 1)<br></span><span style="text-align: left">s.t. u</span><sub style="text-align: left">0</sub><span style="text-align: left">&nbsp;</span><span style="text-align: left">∈ F</span><sub style="text-align: left"><br></sub>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;verticalAlign=middle;fillColor=#e1d5e7;strokeColor=#9673a6;" parent="1" vertex="1">
<mxGeometry x="308" y="146.00000000000003" width="187" height="44" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-32" value="<div style="text-align: left">Q = map_to_curve(u<sub>0</sub>)</div><span><div style="text-align: left"><span>&nbsp; &nbsp; =&nbsp;</span><span>(x,y)</span><span>&nbsp;∈ E(F)</span></div></span>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;verticalAlign=middle;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="580" y="144.50000000000014" width="130" height="47" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-48" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fontSize=12;strokeWidth=2;" parent="1" source="e5kPCjj8kIqCvvov5xjr-32" target="e5kPCjj8kIqCvvov5xjr-51" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="648" y="171" as="sourcePoint" />
<mxPoint x="699" y="169" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-41" value="Q" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="760" y="144.99999999999994" width="20" height="20" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-46" value="End" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.terminator;whiteSpace=wrap;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="1030" y="224.50000000000006" width="50" height="30" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-47" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontColor=#0000FF;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=2;" parent="1" source="e5kPCjj8kIqCvvov5xjr-51" target="e5kPCjj8kIqCvvov5xjr-46" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1048" y="202.5" as="targetPoint" />
<Array as="points">
<mxPoint x="980" y="168" />
<mxPoint x="980" y="240" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-51" value="P = clear_cofactor(Q)<br>s.t. P&nbsp;<span>∈ G</span>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;verticalAlign=middle;fillColor=#fff2cc;strokeColor=#d6b656;" parent="1" vertex="1">
<mxGeometry x="830" y="144.50000000000014" width="122" height="47" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-58" value="<b style="font-size: 14px">P&nbsp;<span>∈ G</span></b>" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="980" y="214.5" width="60" height="20" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-59" value="R = Q<sub>0&nbsp;</sub>+ Q<sub>1</sub>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="687" y="311" width="80" height="30" as="geometry" />
</mxCell>
<UserObject label="<a href="https://datatracker.ietf.org/doc/draft-irtf-cfrg-hash-to-curve/" style="font-size: 17px;"><font color="#3333ff" style="font-size: 17px;">https://datatracker.ietf.org/doc/draft-irtf-cfrg-hash-to-curve/</font></a>" id="e5kPCjj8kIqCvvov5xjr-76">
<mxCell style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=17;fontColor=#0000FF;" parent="1" vertex="1">
<mxGeometry x="615" y="20" width="450" height="30" as="geometry" />
</mxCell>
</UserObject>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-70" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;strokeWidth=2;fontSize=12;fontColor=#000000;" parent="1" source="hH6OWWwSYyNsOQdXuhbv-4" target="e5kPCjj8kIqCvvov5xjr-59" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-4" value="<div style="text-align: left">Q<sub>0&nbsp;</sub>= map_to_curve(u<sub>0</sub>)</div><div style="text-align: left">&nbsp; &nbsp; &nbsp;= (x<sub>0</sub>,y<sub>0</sub>)&nbsp;∈ E(F)</div>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;verticalAlign=middle;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="535" y="266.75" width="140" height="47" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-71" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=2;fontSize=12;fontColor=#000000;" parent="1" source="hH6OWWwSYyNsOQdXuhbv-7" target="e5kPCjj8kIqCvvov5xjr-59" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-7" value="<div style="text-align: left">Q<sub>1&nbsp;</sub>= map_to_curve(u<sub>1</sub>)</div><div style="text-align: left">&nbsp; &nbsp; &nbsp;= (x<sub>1</sub>,y<sub>1</sub>)&nbsp;∈ E(F)</div>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;verticalAlign=middle;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
<mxGeometry x="535" y="338.25" width="140" height="47" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-46" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;fontColor=#0000FF;strokeWidth=2;" parent="1" source="hH6OWWwSYyNsOQdXuhbv-8" target="e5kPCjj8kIqCvvov5xjr-46" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="980" y="326" />
<mxPoint x="980" y="240" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-8" value="P = clear_cofactor(R)<br>s.t. P&nbsp;<span>∈ G</span>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;verticalAlign=middle;fillColor=#fff2cc;strokeColor=#d6b656;" parent="1" vertex="1">
<mxGeometry x="829" y="302.5" width="123" height="47" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-15" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fontSize=12;strokeWidth=2;" parent="1" source="e5kPCjj8kIqCvvov5xjr-59" target="hH6OWWwSYyNsOQdXuhbv-8" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="758" y="364.5" as="sourcePoint" />
<mxPoint x="818" y="364.5" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-16" value="R" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="787" y="302.5" width="20" height="20" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-24" value="u<sub>0</sub>" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="493" y="266.75000000000006" width="30" height="20" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-25" value="u<sub>1</sub>" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="493" y="365.00000000000006" width="30" height="20" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-26" value="Q<sub>0</sub>" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="684" y="266.75" width="30" height="20" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-27" value="Q<sub>1</sub>" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="684" y="365" width="30" height="20" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-29" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontSize=12;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;strokeWidth=2;" parent="1" source="e5kPCjj8kIqCvvov5xjr-1" target="e5kPCjj8kIqCvvov5xjr-10" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="60" y="142.5" as="sourcePoint" />
<mxPoint x="105" y="312.5" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-39" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontSize=12;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;exitPerimeter=0;strokeWidth=2;" parent="1" source="e5kPCjj8kIqCvvov5xjr-10" target="e5kPCjj8kIqCvvov5xjr-23" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="141" y="140.25" as="sourcePoint" />
<mxPoint x="228.5" y="140" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-41" value="<font color="#000000" size="1"><b style="font-size: 16px">Parameters</b></font>" style="text;html=1;strokeColor=#d6b656;fillColor=#fff2cc;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="720" y="461" width="100" height="30" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-44" value="<font color="#000000" size="1"><b style="font-size: 16px">Encode to Curve</b></font>" style="text;html=1;strokeColor=#10739e;fillColor=#CCE5FF;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="540" y="100" width="160" height="30" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-45" value="<font color="#000000" size="1"><b style="font-size: 16px">Hash to Curve</b></font>" style="text;html=1;strokeColor=#006600;fillColor=#EDF7F6;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="539.9999999999998" y="224.5" width="160" height="30" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-51" value="<font color="#000000">A&nbsp;<b>suite</b>&nbsp;is a concrete set of <br>algorithms and&nbsp;parameters<br>for an elliptic curve group.</font>" style="text;html=1;fontSize=17;fontColor=#0000FF;" parent="1" vertex="1">
<mxGeometry x="80" y="527" width="220" height="66.5" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-52" value="<font style="font-size: 19px">suite</font>" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.document2;whiteSpace=wrap;size=0.25;fillColor=#cce5ff;fontSize=28;strokeColor=#36393d;" parent="1" vertex="1">
<mxGeometry x="80" y="451.4999999999999" width="82" height="49" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-53" value="The document provides a set<br>of suites for encoding or hashing<br>messages into elliptic curve points." style="text;html=1;fontSize=17;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="373" y="523.5" width="270" height="70" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-54" value="" style="group" parent="1" vertex="1" connectable="0">
<mxGeometry x="373" y="435.99999999999983" width="90" height="80" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-79" value="" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.document2;whiteSpace=wrap;size=0.25;fillColor=#cce5ff;fontSize=28;strokeColor=#36393d;" parent="hH6OWWwSYyNsOQdXuhbv-54" vertex="1">
<mxGeometry width="65.73913043478261" height="38.88888888888889" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-80" value="" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.document2;whiteSpace=wrap;size=0.25;fillColor=#cce5ff;fontSize=28;strokeColor=#36393d;" parent="hH6OWWwSYyNsOQdXuhbv-54" vertex="1">
<mxGeometry x="7.826086956521739" y="10.88888888888889" width="65.73913043478261" height="38.88888888888889" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-81" value="" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.document2;whiteSpace=wrap;size=0.25;fillColor=#cce5ff;fontSize=28;strokeColor=#36393d;" parent="hH6OWWwSYyNsOQdXuhbv-54" vertex="1">
<mxGeometry x="16.434782608695652" y="21.77777777777778" width="65.73913043478261" height="38.88888888888889" as="geometry" />
</mxCell>
<mxCell id="e5kPCjj8kIqCvvov5xjr-77" value="<font style="font-size: 19px">suite</font>" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.document2;whiteSpace=wrap;size=0.25;fillColor=#cce5ff;fontSize=28;strokeColor=#36393d;" parent="hH6OWWwSYyNsOQdXuhbv-54" vertex="1">
<mxGeometry x="25.83" y="31.89" width="64.17" height="48.11" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-60" value="<b>&nbsp;F</b>&nbsp;: A finite field.<br><b>&nbsp;E</b>&nbsp;: An elliptic curve defined over F.<br><b>&nbsp;E(F)</b>&nbsp;: The group of points generated by E.<br><b>&nbsp;G&nbsp;</b>: A prime order subgroup of E(F)." style="text;html=1;fontSize=17;fontColor=#000000;strokeColor=none;" parent="1" vertex="1">
<mxGeometry x="720" y="501" width="340" height="92.5" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-61" value="<div class="author" style="color: rgb(51 , 51 , 51) ; font-family: &#34;helvetica neue&#34; , &#34;open sans&#34; , &#34;helvetica&#34; , &#34;calibri&#34; , sans-serif ; font-size: 13px"><div class="author-name">A. Faz-Hernandez,&nbsp;<span>S. Scott,&nbsp;</span><span>N. Sullivan,&nbsp;</span><span>R. S. Wahby,&nbsp;</span><span>C. A. Wood</span><span>.</span></div></div>" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=12;fontColor=#000000;" parent="1" vertex="1">
<mxGeometry x="683" y="42" width="390" height="30" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-62" value="u<sub>0</sub>" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=12;" parent="1" vertex="1">
<mxGeometry x="520" y="144.9999999999999" width="30" height="20" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-67" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeWidth=2;fontSize=12;fontColor=#000000;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="hH6OWWwSYyNsOQdXuhbv-65" target="hH6OWWwSYyNsOQdXuhbv-4" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-68" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeWidth=2;fontSize=12;fontColor=#000000;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="hH6OWWwSYyNsOQdXuhbv-65" target="hH6OWWwSYyNsOQdXuhbv-7" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="515" y="230" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="hH6OWWwSYyNsOQdXuhbv-65" value="<div style="text-align: left"></div><span style="text-align: left">(u</span><sub style="text-align: left">0</sub><span style="text-align: left">, u<sub>1</sub>)&nbsp;</span><span style="text-align: left">= hash_to_field(</span><b style="text-align: left">msg</b><span style="text-align: left">, 2)<br></span><span style="text-align: left">s.t. u</span><sub style="text-align: left">0</sub><span style="text-align: left">, u<sub>1</sub></span><span style="text-align: left">&nbsp;</span><span style="text-align: left">∈ F</span><sub style="text-align: left"><br></sub>" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;arcSize=14;strokeWidth=2;fontSize=12;verticalAlign=middle;fillColor=#e1d5e7;strokeColor=#9673a6;" parent="1" vertex="1">
<mxGeometry x="308" y="304" width="187" height="44" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>