a,b - TAINS - Tohoku University

Efficient and Secure Multiparty
Computations Using a Standard
Deck of Playing Cards
Takaaki Mizuki
Tohoku University
CANS 2016 (16:30-17:00, Nov. 15, 2016, Milan)
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND Protocol
4. Our XOR Protocol
5. Our Copy Protocol
6. Conclusion
2
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND
Protocol
1.1 Mainstream
Card-Based
Protocols
1.2 Use
a Standard
Deck of Playing Cards
4. of
Our
XOR Protocol
1.3 Our Results
5. Our Copy Protocol
6. Conclusion
3
It is known that
secure multi-party computation
can be performed using red and black cards.
? ? ? ?
4
Using two cards of different colors, we can deal with
Boolean values, based on the following encoding:
=0
=1
5
=0
=1
Based on this encoding, a player can commit his/her
private input bit to a pair of face-down cards.
a ∈{0,1}
? ?
called a commitment
a
6
=0
=1
a ∈{0,1}
? ?
a
called a commitment
if a  0
if a  1
? ?
? ?
7
NOT computation
=0
=1
? ?
? ?
a
a
8
NOT computation
? ?
=0
? ?
a
=1
? ?
a
Reverse
the order
9
AND computation
=0
=1
? ?
? ?
? ?
a
b
a∧b
There are many protocols for secure AND computation.
10
6-card AND protocol [11]
??
??
a
b
=0
=1
??????
??????
??????
??????
????
a∧b
[??? ???]
????
a∧b
[11] T. Mizuki and H. Sone, Six-Card Secure AND and Four-Card Secure XOR,
FAW 2009, LNCS 5598, pp. 358–369, 2009.
11
6-card AND protocol [11]
??
??
a
b
=0
=1
??????
??????
??????
??????
????
a∧b
[??? ???]
????
The details will be explained later. a∧b
[11] T. Mizuki and H. Sone, Six-Card Secure AND and Four-Card Secure XOR,
FAW 2009, LNCS 5598, pp. 358–369, 2009.
12
XOR computation
4-card XOR protocol [11]
? ?
? ?
? ?
a
b
a+b
=0
The details are omitted.
=1
[11] T. Mizuki and H. Sone, Six-Card Secure AND and Four-Card Secure XOR,
FAW 2009, LNCS 5598, pp. 358–369, 2009.
These protocols
cannot be executed
with a standard deck
of playing cards.
They need custom-made cards.
14
Almost all existing protocols were designed for
custom two-colored cards.
There is one exception: Niemi-Renvall protocols
[13] can be executed with standard playing cards.
[13] V. Niemi and A. Renvall,
“Solitaire zero-knowledge,”
Fundamenta Informaticae,
vol. 38, pp. 181–188, 1999
Use of a standard deck of playing cards
We assume the following deck of 52 cards
(each card has a unique natural number):
3 4
5 6
face-down ? ? ? ? ? ?
52
…
1 2
…
face-up
?
Niemi and Renvall [13] considered an encoding rule:
i < j
i j =0
i > j
i j =1
17
Niemi and Renvall [13] considered an encoding rule:
i < j =0
i > j =1
Example:
1 2 =0
2 1 =1
18
We can naturally consider a commitment as well:
1
2
i < j =0
? ?
i > j =1
{1,2}
[a]
If a  0
If a  1
? ?
? ?
1 2
2
1
We call such a set {1,2} a base of the commitment.
19
Under this encoding rule on standard playing cards:
 A NOT computation is trivial.
→ just to reverse the order
i < j =0
i > j =1
 Niemi and Renvall [13] constructed:
•
AND protocol
•
XOR protocol
20
Niemi-Renvall AND protocol [13]
5
? ?
{1,2}
[a]
? ?
{3,4}
[b]
21
Niemi-Renvall AND protocol [13]
5
? ?
? ?
{1,2}
[a]
{3,4}
[b]
5
? ?
2
3
{1,4}
[ab]
A random cut (= cyclic shuffle) is applied an
average of 9.5 times.
Rotate in a circular motion
22
# of
AND computation
Niemi-Renvall [13] (Sect. 2)
# of shuffles
cards
avg.
fixed
5
9.5
0
23
# of
AND computation
Niemi-Renvall [13] (Sect. 2)
# of shuffles
cards
avg.
fixed
5
9.5
0
4
7
0
XOR computation
Niemi-Renvall [13] (Sect. 2)
24
Our results
We will propose more efficient protocols:
 Utilizing random bisection cuts
 Simulating the existing protocols [11] + α
based on custommade cards
[11] T. Mizuki and H. Sone, Six-Card Secure AND and Four-Card Secure XOR,
FAW 2009, LNCS 5598, pp. 358–369, 2009.
25
Our results
We will propose more efficient protocols:
 Utilizing random bisection cuts
 Simulating the existing protocols [11] + α
Switch two halves randomly
26
# of
AND computation
Niemi-Renvall [13] (Sect. 2)
# of shuffles
cards
avg.
fixed
5
9.5
0
4
7
0
XOR computation
Niemi-Renvall [13] (Sect. 2)
27
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
4
7
0
AND computation
XOR computation
Niemi-Renvall [13] (Sect. 2)
28
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
29
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
Fewer shuffles and
finite-runtime
30
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
Minor issue:
we have 52 cards!
31
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND Protocol
4. Our XOR Protocol
5. Our Copy Protocol
6. Conclusion
32
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
33
Niemi-Renvall AND protocol [13]
5
? ?
{1,2}
[a]
? ?
{3,4}
[b]
34
Niemi-Renvall AND protocol [13]
5
? ?
{1,2}
[a]
5 ????
5 ????
? ?
{3,4}
[b]
(a,b)
(0,0)
(0,1)
(1,0)
(1,1)
seq. of cards
5 1 3 2 4
5 1 4 2 3
5 2 3 1 4
5 2 4 1 3
35
Niemi-Renvall AND protocol [13]
5 ????
5 ????
(a,b)
(0,0)
(0,1)
(1,0)
(1,1)
sequence
5 1 3 2 4
5 1 4 2 3
5 2 3 1 4
5 2 4 1 3
If we somehow
deleted 2 and 3 :
(a,b)
(0,0)
(0,1)
(1,0)
(1,1)
sequence
5 1 3 2 4
5 1 4 2 3
5 2 3 1 4
5 2 4 1 3
36
Niemi-Renvall AND protocol [13]
If we somehow
deleted 2 and 3 :
(a,b)
(0,0)
(0,1)
(1,0)
(1,1)
sequence
5 1 3 2 4
5 1 4 2 3
5 2 3 1 4
5 2 4 1 3
1 4 =0
4 1 =1
5 ? ?
{1,4}
[ab]
…we would get a
desired commitment!
37
Niemi-Renvall AND protocol [13]
5
? ?
{1,2}
[a]
? ?
{3,4}
[b]
5 ????
5 ????
Thus, we want to delete 2 and 3 so that the two
cards following 5 will be a desired commitment.
→ Utilizing a random cut (= cyclic shuffle)
38
Niemi-Renvall AND protocol [13]
5 ????
Rotate in a circular motion
5 ????
?????
Apply a random cut and reveal the first card. Unless
the face-up card is 2 or 3 , turn over the card, apply
a random cut, and reveal the first card again.
39
Niemi-Renvall AND protocol [13]
5 ????
5 ????
?????
Delete 2 and 3 (Avg. # of 6.5 trials)
???
40
Niemi-Renvall AND protocol [13]
5 ????
5 ????
?????
Delete 2 and 3 (Avg. # of 6.5 trials)
???
Search 5 ( Avg. # of 3 trials )
5 ??
41
Niemi-Renvall AND protocol [13]
5 ????
5
5 ????
? ?
? ?
{1,2}
[a]
{3,4}
[b]
?????
Delete 2 and 3 (Avg. # of 6.5 trials)
???
5 ??
Search 5 ( Avg.
of ?
3 trials )
5 #?
{1,4}
[ab]
42
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
43
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
44
Niemi-Renvall XOR protocol [13]
? ?
{1,2}
[a]
? ?
{3,4}
[b]
4
? ?
3
{1,2}
[ab]
A random cut (= cyclic shuffle) is applied an
average of 7 times.
Omit the details
45
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
46
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND Protocol
4. Our XOR Protocol
5. Our Copy Protocol
Let me explain
“XOR” first.
6. Conclusion
47
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND Protocol
4. Our XOR Protocol
5. Our Copy Protocol
6. Conclusion
48
Idea
 Simulating the 4-custom-card XOR protocol [11]
? ?
? ?
? ?
a
b
a+b
=0
=1
[11] T. Mizuki and H. Sone, Six-Card Secure AND and Four-Card Secure XOR,
FAW 2009, LNCS 5598, pp. 358–369, 2009.
49
????
{1,2}
[a]
????
{3,4}
[b]
????
????
????
1 2 ??
{3,4}
[ab]
2 1 ??
[??
??]
{3,4}
[ab]
50
????
{1,2}
[a]
????
{3,4}
[b]
????
????
????
Input commitments
? ?
{1,2}
[a]
? ?
1 2 ??
{3,4}
[b]
{3,4}
[ab]
2 1 ??
[??
??]
{3,4}
[ab]
51
????
{1,2}
[a]
????
{3,4}
[b]
????
????
????
Rearrange the
sequence:
? ? ? ?
1 2 ??
{3,4}
[ab]
[??
??]
? ? ? ?
2 1 ??
{3,4}
[ab]
52
cut:
???? Apply a random bisection
????
{1,2}
[a]
{3,4}
[b]
[
????prob. of 1/2
????
]
? ? ? ?
????
? ?? ?
prob. of 1/2
1 2 ??
? ? ? ?
{3,4}
[ab]
(a)
[??
??]
(b)
2 1 ??
{3,4}
[ab]
53
????
{1,2}
[a]
????
{3,4}
[b]
????
Rearrange the sequence:
????
(a)
????
? ? ??
(b)
? ? ??
1 2 ??
{3,4}
[ab]
2 1 ??
??]
? ? ??
{3,4}
[??
[ab]
? ? ??
54
????
{1,2}
[a]
????
{3,4}
[b]
????
????
(a)
1 2 ??
? ? ?{3?
,4}
????
[ab]
? ?
[??
??{]1,2}
[a]
??
{3,4}
[b]
2 1 ??
(b)
{3,4}
[ab]
? ? ??
55
????
{1,2}
[a]
????
{3,4}
[b]
(a)
? ?
????
??
{1,2}
[a]
????
????
{3,4}
[b]
{3,4}
[ab]
(b)
[??
? ?
??]
1 2 ??
??
2 1 ??
{3,4}
[ab]
{1,2}
[a]
{3,4}
[b ]
56
????
(no information leaks)
Reveal
{1,2}
????
{3,4}
[a(a)
] [b]
????
? ?
??
????
{1,2}
[a]
{3,4}
[b]
????
(b)
{3,4}
[ab]
? ?
??
[?? ??]
{1,2}
[a]
1 2 ??
2 1 ??
{3,4}
[ab]
{3,4}
[b ]
57
????
Reveal
{1,2}
????
{3,4}
[a(a)
] [b]
????
? ?
??
????
{1,2}
[a]
1
2
{3,4}
[b]
1 2 ??
????
(b)
{3,4}
[ab]
? ?
??
[?? ??]
{1,2}
[a]
? ?
2
1
2 1 ??
? ?
{3,4}
[ab]
{3,4}
[b ]
58
????
Reveal
{1,2}
????
{3,4}
[a(a)
] [b]
????
? ?
??
????
{1,2}
[a]
a=0
1
{3,4}
[b]
0
????
(b)
[a]
? ?
1 2 ??
{3,4}
[ab]
? ?
??
[?? ??]
{1,2}
2
2
1
2 1 ??
? ? {3,4}
[ab]
{3,4}
[b ]
59
????
Reveal
{1,2}
????
{3,4}
[a(a)
] [b]
????
? ?
??
????
{1,2}
[a]
a=0
1
{3,4}
[b]
{3,4}
1 2 ??
{3,4}
[ab]
? ?
??
[?? ??]
[a]
? ?
[ab]
0
????
(b)
{1,2}
2
2
1
2 1 ??
? ? {3,4}
[ab]
{3,4}
[b ]
60
????
Reveal
{1,2}
????
{3,4}
[a(a)
] [b]
????
? ?
??
????
{1,2}
[a]
a=0
1
{3,4}
[b]
{3,4}
1 2 ??
{3,4}
[ab]
? ?
??
[?? ??]
[a]
? ?
[ab]
0
????
(b)
{1,2}
2
{3,4}
[b ]
a=1
2
1
2 1 ??
? ? {3,4}
[ab]
1
{3,4}
[ab]
61
????
Reveal
{1,2}
????
{3,4}
[(a)
a] [b]
????
? ?
??
????
{1,2}
[a]
{3,4}
a=1
1
[b]
2
0
????
1 2 ??
{3,4}
[ab]
(b)
? ?
??
[?? ??]
{1,2}
[a]
? ?
{3,4}
[b ]
2
1
2 1 ??
? ? {3,4}
[ab]
1
62
????
Reveal
{1,2}
????
{3,4}
[(a)
a] [b]
????
? ?
??
????
{1,2}
[a]
{3,4}
a=1
1
[b]
2
0
????
[ab]
{3,4}
[ab]
? ?
??
[?? ??]
[a]
{3,4}
1 2 ??
(b)
{1,2}
? ?
{3,4}
[b ]
2
1
2 1 ??
? ? {3,4}
[ab]
1
{3,4}
[ab]
63
????
{1,2}
[a]
????
{3,4}
[b]
????
1
2
??
????
{3,4}
[ab]
????
1 2 ??
{3,4}
[ab]
2
[?? ??]
1
2 1 ??
??
{3,4}
{3,4}
[ab]
[ab]
64
????
{1,2}
[a]
????
{3,4}
[b]
? ?
????
? ?
{1,2}
[a]
????
{3,4}
[b]
????
1 2 ??
{3,4}
[ab]
[??
??]
2 1 ??
??
{3,4}
[ab]
{3,4}
[ab]
65
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
66
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND Protocol
4. Our XOR Protocol
5. Our Copy Protocol
6. Conclusion
67
Outline
 Simulating the 6-custom-card AND protocol [11]
 Straightforward simulation does not work; we
need some modification.
? ?
? ?
? ?
a
b
a∧b
=0
=1
68
6-custom-card AND protocol [11]
??
??
a
b
???? ??
a
0
=0
=1
??????
??????
b
??????
????
??????
[??? ???]
a∧b
????
a∧b
69
??
??
a
b
=0
??????
???? ??
a
0
=1
??????
b
??????
? ?
? ? ? ? ????
??????
[???
???]
a
0
a∧b
b
????
a∧b
70
??
??
a
b
???? ??
a
0
b
??????
=0
=1
??????
??????
Rearrange the sequence:
? ? ? ? ? ?
????
??????
[???
???]
a∧b
? ? ? ? ? ?
????
a∧b
71
??
a
= 0 cut:= 1
Apply a random bisection
??
? ? ? ? ?
?
b
??????
[
???? ??
of 1/2
a
b
0 prob.
? ? ? ?? ?
??????
(a)
??????
[???
???]
]
??????
prob. of 1/2
? ? ? ?? ?
????
(b)
a∧b
????
a∧b
72
??
??
a
b
??????
??????
???? ??
a
b
0Rearrange
the sequence:
(a)
??????
? ? ? ?? ?
??????
? ? ? ?? ?
[??? ???]
(b)
? ? ? ?? ?
????
a∧b
????
? ? ? ?? ?
a∧b
73
??
??
a
b
??????
??????
???? ??
a
0
(a)
b
? ? ? ?? ?
??????
? ? ? ?? ?
??????
a
[???
0
???]
b
a
0
b
????
(b)
a∧b
? ? ? ?? ?
????
a-
a∧b
b
0
74
??
??
a
b
=0
??????
Reveal
???? ??
(a)
a
0
=1
??????
b
? ? ? ?? ?
??????
a
0
b
(b)
??????
? ? ? ?? ?
[???
a-
??
b ?] 0
????
a∧b
????
a∧b
75
??
??
a
b
??????
??????
Reveal
????(a)
??
a
0
b
? ? ? ?? ?
? ?? ?
a
??????
0
b
(b)
??????
? ? ? ?? ?
b ?] 0
a
[??? ??
????
a∧b
? ?? ?
????
a∧b
76
??
??
a
b
Reveal
????(a)
??
a
0
??????
??????
a=0
b
=0
=1
? ?? ?
? ? ? ?? ?
a
??????
0
b
(b)
??????
? ? ? ?? ?
b ?] 0
a
[??? ??
a=1
????
a∧b
? ?? ?
????
a∧b
77
??
??
a
b
Reveal
????(a)
??
a
0
??????
??????
a=0
b
=0
=1
? ? ? ?? ?
? ?? ?
a
??????
0
b
a∧b
(b)
??????
? ? ? ?? ?
b ?] 0
a
[??? ??
a=1
????
a∧b
? ?? ?
????
a∧b
a∧b
78
??
??
a
b
Reveal
????(a)
??
a
0
??????
??????
a=1
b
=0
=1
? ?? ?
? ? ? ?? ?
a
??????
0
b
(b)
??????
? ? ? ?? ?
b ?] 0
a
[??? ??
a=0
????
a∧b
? ?? ?
????
a∧b
79
??
??
a
b
Reveal
????(a)
??
a
0
??????
??????
a=1
b
=0
=1
? ? ? ?? ?
? ?? ?
a
??????
0
b
a∧b
(b)
??????
? ? ? ?? ?
b ?] 0
a
[??? ??
a=0
????
a∧b
? ?? ?
????
a∧b
a∧b
80
??
??
a
b
=0
??????
???? ??
? ?? ?
a
0
=1
??????
b
a∧b
????
??????
? ?? ?
??????
a∧b
[???
???]
a∧b
????
a∧b
81
??
??
a
b
???? ??
a
0
=0
=1
??????
??????
b
??????
????
a∧b
??????
????
[???
???]
a∧b
What if we apply this to a
standard deck of cards?
82
? ?
5
{1,2}
[a]
6
? ?
{3,4}
[b]
straightforward simulation
83
? ?
5
6
? ?
{1,2}
{3,4}
[a]
1
2
[b]
? ? ? ?
{5,6}
[ab]
or
1
2
? ? ? ?
{3,4}
[ab]
84
? ?
5
6
? ?
{1,2}
{3,4}
[a]
1
2
[b]
? ? ? ?
{5,6}
[ab]
a=0
or
1
2
? ? ? ?
{3,4}
[ab]
a=1
When the base of the commitment is known,
the value of a leaks.
→ needs some modification
85
Use 8 cards:
? ?
{1,2}
[a]
? ?
5
6 7
8
{3,4}
[b]
86
? ?
{1,2}
[a]
? ?
6 7
5
8
{3,4}
[b]
? ?
{5,6}
[0]
? ?
{7,8}
[0]
87
? ?
{1,2}
[a]
? ?
6 7
5
8
{3,4}
[b]
? ?
{5,6}
[0]
[
? ?
{7,8}
[0]
? ? ? ?
]
88
? ?
{1,2}
[a]
6 7
5
? ?
8
{3,4}
[b]
? ?
{5,6}
[0]
[
{7,8}
[0]
? ? ? ?
? ?
{5,6},{7,8}
[0]
? ?
]
? ?
{5,6},{7,8}
[0]
89
? ?
{1,2}
[a]
6 7
5
? ?
8
{3,4}
[b]
We call this an
opaque
commitment
pair.
? ?
{5,6}
[0]
[
{7,8}
[0]
? ? ? ?
? ?
{5,6},{7,8}
[0]
? ?
]
? ?
{5,6},{7,8}
[0]
90
? ?
{1,2}
[a]
? ?
{3,4}
[b]
? ?
{5,6},{7,8}
[0]
? ?
{5,6},{7,8}
[0]
91
? ?
{1,2}
[a]
? ?
{3,4}
[b]
? ?
{5,6},{7,8}
[0]
? ?
{5,6},{7,8}
[0]
Make the base of the commitment to b opaque.
92
? ?
? ?
{1,2}
{5,6},{7,8}
[a]
[0]
Make the base of the commitment to b opaque.
? ?
{3,4}
[b]
? ?
{5,6},{7,8}
[0]
93
? ?
? ?
{1,2}
{5,6},{7,8}
[a]
[0]
Make the base of the commitment to b opaque.
? ?
{3,4}
[b]
? ?
{5,6},{7,8}
[0]
Apply the
procedure of the
XOR protocol
94
? ?
? ?
{1,2}
{5,6},{7,8}
[a]
[0]
Make the base of the commitment to b opaque.
? ?
{3,4}
[b]
3
? ?
{5,6},{7,8}
[0]
XOR
? ?
4
{5,6},{7,8}
[b]
95
? ?
{1,2}
[a]
? ?
{5,6},{7,8}
[0]
? ?
{5,6},{7,8}
[b]
We got an opaque commitment pair to 0 and b .
96
? ?
? ?
{1,2}
[a]
{5,6},{7,8}
[0]
? ?
{5,6},{7,8}
[b]
Apply the procedure of the existing AND
protocol [11] (introduced before) :
??????
??????
[??? ???]
??????
??????
97
Then,
? ?
? ?
{1,2}
[a]
1
2
{5,6},{7,8}
{5,6},{7,8}
[b]
[0]
? ? ? ?
{5,6},{7,8}
[ab]
? ?
or
2
1
? ? ? ?
{5,6},{7,8}
[ab]
98
Reveal the two cards after shuffling them.
1
2
? ? ? ?
or
2
1
? ? ? ?
{5,6},{7,8}
{5,6},{7,8}
[ab]
[ab]
The base of the commitment is found, and we have:
? ?
{5,6}
[ab]
or
? ?
{7,8}
[ab]
99
How many shuffles (random bisection cuts)?
1. Producing an opaque commitment pair
2. Changing the base
3. Applying the existing AND protocol [11]
4. Finding the base
→ 4 shuffles in total
100
# of
# of shuffles
cards
avg.
fixed
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
Ours (Sect. 3)
8
0
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
Ours (Sect. 4)
4
0
1
AND computation
XOR computation
101
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND Protocol
4. Our XOR Protocol
5. Our Copy Protocol
6. Conclusion
102
Niemi-Renvall copy protocol [13]
5
? ?
6
{1,2}
[a]
3
4
5
? ?
6
{1,2}
[a]
? ?
{3,4}
[a]
A random cut (= cyclic shuffle) is applied an
average of 4.5 times + fixed 1 time.
We omit the details.
103
# of
# of shuffles
cards
avg.
fixed
total
6
4.5
1
5.5
Secure copy
Niemi-Renvall [13] (Sect. 2)
104
?? ?? ??
{1,2}
[a]
{3,4}
[0]
??????
{5,6}
[0]
??????
??????
??????
?? ??
{3,4}
[a]
[??? ???]
{5,6}
[a]
?? ??
{3,4}
[a]
{5,6}
[a]
# of
# of shuffles
cards
avg.
fixed
total
Niemi-Renvall [13] (Sect. 2)
6
4.5
1
5.5
Ours (Sect. 5)
6
0
1
1
Secure copy
106
# of
# of shuffles
cards
avg.
fixed
total
Niemi-Renvall [13] (Sect. 2)
5
9.5
0
9.5
Ours (Sect. 3)
8
0
4
4
Niemi-Renvall [13] (Sect. 2)
4
7
0
7
Ours (Sect. 4)
4
0
1
1
Niemi-Renvall [13] (Sect. 2)
6
4.5
1
5.5
Ours (Sect. 5)
6
0
1
1
AND computation
XOR computation
Secure copy
107
Combining AND/XOR/NOT/copy protocols, one
can construct a protocol for any function.
x1
x2
x3
x4
x5
??
MAJ(x1, x2, x3, x4, x5)
Contents
1. Introduction
2. Niemi-Renvall Protocols
3. Our AND Protocol
4. Our XOR Protocol
5. Our Copy Protocol
6. Conclusion
109
Conclusion
 MPC can be done with standard playing cards.
 We reduced the number of required shuffles.
110
111
仕切りカードや輪ゴムを用い
How to implement
a random bisection cut?
RBCを実現する手法
Spinning throw
with a separator and a rubber band:
[Ueda, et al.,TPNC 2016]
112