-
Notifications
You must be signed in to change notification settings - Fork 0
/
SPDZ-sacrifice.drawio
131 lines (131 loc) · 12.3 KB
/
SPDZ-sacrifice.drawio
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
<mxfile host="app.diagrams.net" modified="2021-05-27T03:32:57.792Z" agent="5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" etag="f5_EEsQ0ZuS3K_pz17Dz" version="14.7.1" type="github">
<diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
<mxGraphModel dx="946" dy="536" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="1" shadow="0">
<root>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="vKn0vAI7lJOk2YTOMezV-2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-0" target="vKn0vAI7lJOk2YTOMezV-1" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-0" value="预处理:生成秘密共享和Beaver三元组" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.terminator;whiteSpace=wrap;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="280" y="200" width="130" height="70" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-4" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-1" target="vKn0vAI7lJOk2YTOMezV-3" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-1" value="输入:消耗秘密共享<br>\([r]\)将输入转换成<br>新的秘密共享" style="shape=parallelogram;html=1;strokeWidth=2;perimeter=parallelogramPerimeter;whiteSpace=wrap;rounded=1;arcSize=12;size=0.23;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="252.5" y="300" width="185" height="80" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-37" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-3" target="vKn0vAI7lJOk2YTOMezV-34" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-38" value="是" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-37" vertex="1" connectable="0">
<mxGeometry x="0.0069" y="-1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-42" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-3" target="vKn0vAI7lJOk2YTOMezV-6" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-43" value="否" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-42" vertex="1" connectable="0">
<mxGeometry x="0.1" y="-2" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-3" value="运算结束?" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.decision;whiteSpace=wrap;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="295" y="440" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-10" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-6" target="vKn0vAI7lJOk2YTOMezV-7" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-11" value="秘密加法,常数运算" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-10" vertex="1" connectable="0">
<mxGeometry x="-0.1805" y="-4" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-12" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-6" target="vKn0vAI7lJOk2YTOMezV-8" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-13" value="秘密乘法" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-12" vertex="1" connectable="0">
<mxGeometry x="-0.2" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-14" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-6" target="vKn0vAI7lJOk2YTOMezV-9" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-15" value="公开" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-14" vertex="1" connectable="0">
<mxGeometry x="0.3796" y="3" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-6" value="运算种类?" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.decision;whiteSpace=wrap;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="295" y="630" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-23" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-7" target="vKn0vAI7lJOk2YTOMezV-3" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-7" value="本地运算" style="rounded=0;whiteSpace=wrap;html=1;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="110" y="810" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-16" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-8" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="345" y="850" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-41" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-8" target="vKn0vAI7lJOk2YTOMezV-17" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-8" value="消耗Beaver三元组运算秘密乘法" style="rounded=0;whiteSpace=wrap;html=1;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="285" y="810" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-21" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-9" target="vKn0vAI7lJOk2YTOMezV-18" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-22" value="验证失败" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-21" vertex="1" connectable="0">
<mxGeometry x="-0.04" y="-4" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-27" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-9" target="vKn0vAI7lJOk2YTOMezV-3" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="480" y="500" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-28" value="验证成功" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-27" vertex="1" connectable="0">
<mxGeometry x="-0.1352" y="-1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-9" value="通过两轮广播验证" style="rounded=0;whiteSpace=wrap;html=1;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="490" y="800" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-19" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-17" target="vKn0vAI7lJOk2YTOMezV-18" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-20" value="验证失败" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-19" vertex="1" connectable="0">
<mxGeometry x="-0.0118" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-24" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="vKn0vAI7lJOk2YTOMezV-17" target="vKn0vAI7lJOk2YTOMezV-3" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-25" value="验证<br style="font-size: 13px;">成功" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=13;" parent="vKn0vAI7lJOk2YTOMezV-24" vertex="1" connectable="0">
<mxGeometry x="-0.5859" y="-3" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-17" value="使用sacrifice<br style="font-size: 13px;">验证秘密乘法" style="rounded=0;whiteSpace=wrap;html=1;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="285" y="930" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-18" value="停止协议" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.terminator;whiteSpace=wrap;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="500" y="930" width="100" height="60" as="geometry" />
</mxCell>
<mxCell id="vKn0vAI7lJOk2YTOMezV-34" value="得到结果" style="strokeWidth=2;html=1;shape=mxgraph.flowchart.terminator;whiteSpace=wrap;fontSize=13;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="120" y="530" width="100" height="60" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>