Get desktop application:
View/edit binary Protocol Buffers messages
TTP Beaver service for semi2k only.
V1 adjust ops
input three prg buffer reconstruct all parties' share get: ra / rb / rc
What field size should be used to interpret buffer content
output adjust_c = ra * rb - rc make ra * rb = (adjust_c + rc)
element type supported: "GFMP", "RING"
if element type is "GFMP" then all ring ops will be changed to gfmp
input 2 prg buffer first is a or b [one party holds a slice, another b slice] second is c
What field size should be used to interpret buffer content
output adjust_c = a * b - rc make a * b = (adjust_c + rc)
element type supported: "GFMP", "RING"
if element type is "GFMP" then all ring ops will be changed to gfmp
input two prg buffer reconstruct all parties' share get: ra / rb
What field size should be used to interpret buffer content
output adjust_b = ra * ra - rb make ra * ra = (adjust_b + rb)
input three prg buffer reconstruct all parties' share get: ra / rb / rc
if buffer need reshaped by transpose
What field size should be used to interpret buffer content
ra's shape: (M, K), rb's shape: (K, N), rc's shape: (M, N)
output adjust_c = matmul(ra, rb) - rc make matmul(ra, rb) = (adjust_c + rc)
input three prg buffer reconstruct all parties' share get: ra / rb / rc
output adjust_c = (ra & rb) ^ rc make ra & rb = (adjust_c ^ rc)
input two prg buffer reconstruct all parties' share get: ra / rb
What field size should be used to interpret buffer content
how many bits need to truncate.
output adjust_b = (ra >> bits) - rb makes ra >> bits = (adjust_b + rb)
input two prg buffer reconstruct all parties' share get: ra / rb / rc
What field size should be used to interpret buffer content
how many bits need to truncate.
output adjust1 = ((ra << 1) >> (bits + 1)) - rb adjust2 = msb(ra) - rc make (adjust1 + rb) = (ra mod 2^(ring_size-1)) >> bits (adjust2 + rc) = msb(ra)
input one prg buffer reconstruct all parties' share get: ra
What field size should be used to interpret buffer content
output adjust_a = server generated random 0/1 array - rb make (adjust_a + ra) = random 0/1 array
input two prg buffer reconstruct all parties' share get: ra / rb
What field size should be used to interpret buffer content
output adjust_b = rb make ra(in a share) = rb(in b share)
input two prg buffer reconstruct all parties' share get: ra / rb
What field size should be used to interpret buffer content
Rand permutation
output adjust_b = (apply inverse permutation perm to ra) - rb make (adjust_b + rb) = apply inverse permutation perm to ra
Used as response type in: BeaverService.AdjustAnd, BeaverService.AdjustDot, BeaverService.AdjustEqz, BeaverService.AdjustMul, BeaverService.AdjustMulPriv, BeaverService.AdjustPerm, BeaverService.AdjustRandBit, BeaverService.AdjustSquare, BeaverService.AdjustTrunc, BeaverService.AdjustTruncPr
(message has no fields)
The type of element in the field. Match the enum in libspu/mpc/common/prg_tensor.h
Used in:
,PRG generated buffer metainfo. BeaverService replay PRG to generate same buffer using each party's prg_seed encrypted by server's public key. PrgBufferMeta represent {world_size} arithmetic/boolean shares for one random array.
Used in:
, , , , , , , , ,buffer len in bytes
Used in:
permutation size
Used in:
Certificate file in PEM format
Private key file in PEM format
The trusted CA file to verify the peer's certificate
Maximum depth of the certificate chain for verification If 0, turn off the verification
Listening port
Asymmetric crypto schema, support ["SM2"]
Configurations related to SSL