Accelerating Greater Than-Strong Conditional Oblivious Transfer Multiparty Protocol Using GPU
Transcript of Accelerating Greater Than-Strong Conditional Oblivious Transfer Multiparty Protocol Using GPU
-
7/28/2019 Accelerating Greater Than-Strong Conditional Oblivious Transfer Multiparty Protocol Using GPU
1/1
Accelerating the Greater Than-Strong Conditional Oblivious Transfer multiparty protocol using Graphics
Processing Units
Axel Y. Rivera, Prarthana L. Gowda, Nikhil Vidyadhar & Mary HallSchool of Computing, University of Utah
Abstract
Greater Than-Strong Conditional Oblivious Transfer (GT-SCOT) is a protocol
used for sharing data between two parties without revealing any private
information. Due to the large number of iterative operations computed
sequentially and the increase in size of the input, the algorithm is
computationally intensive, and hence cannot be used for large credentials or
secure database mining. This work presents an implementation ofGT-SCOT
using Graphics Processing Units (GPU) in order to accelerate the operations
and be able to handle large message sizes. Results show that GPU
implementation achieved a speed up of 7x for messages with size of 1024 bits
using 64 bits of encryption for each bit of the message.
Background
Oblivious Transfer (OT) Secure Multiparty Protocol:
Receiver (R) has a single input X; Sender (S) has two input strings s0 and s1S solves a predicate and sends the result to R
R just learns the secret of his choice linked to the result of computation, sx,
while sender S learns nothing
Homomorphism:
Uses Paillier encryption scheme, which is additively homomorphic
Additive properties:
Multiplicative properties:
Greater Than Conditional Oblivious Transfer (GT-SCOT) Protocol:
Uses the Greater Than (a b) inequality predicate to obliviously exchange
secrets between two users
Algorithm:
m1 and m2 are encrypted
m1 encrypted, m2 plaintext
m1 encrypted, m2 plaintext
m1 encrypted, k constant
$150 $200
100101101 1100100010
93578708349723
56430784933981
.
32677843402389
Operate on theencrypted values
usingHomomorphic
transformations
If > send S0
If 0
if (exponent & 1) equals 1:
result = (result * base) mod modulus
exponent := exponent >> 1
base = (base * base) mod modulus
return result
Arithmetic Operations+, -, x, /
Comparison operations