ABY Framework  1.0
Arithmetic Bool Yao Framework
 All Classes Files Functions Variables Enumerations Enumerator Macros
Functions
bgp.cpp File Reference
#include "bgp.h"
Include dependency graph for bgp.cpp:

Functions

shareminNeighbor (share **d, share **fid, uint32_t id_bit_size, uint32_t num, BooleanCircuit *circ)
 
void OuterCircuit (BooleanCircuit *circ, share *custShr, share *peerShr, share *provShr, share *targetShr, uint32_t num_as, uint32_t m, uint32_t sigma, uint32_t alpha, uint32_t target_id, uint32_t d_cust, uint32_t d_prov, uint32_t **LUT, share **T_shr, share **F_shr, share **D_shr)
 
int32_t build_customer_circuit (BooleanCircuit *circ, share *custShr, share **F, share **T, share **D, share **NIdx, share *dist, share *zerogate, uint32_t num_as, uint32_t m, uint32_t d_cust, uint32_t **LUT)
 
int32_t build_peer_circuit (BooleanCircuit *circ, share *peerShr, share **F, share **T, share **D, share **NIdx, share *dist, share *max_dist, share *zero_id, uint32_t num_as, uint32_t m, uint32_t **LUT)
 
int32_t build_provider_circuit (BooleanCircuit *circ, share *provShr, share **F, share **T, share **D, share **NIdx, share *dist, share *max_dist, share *zero_id, uint32_t num_as, uint32_t m, uint32_t d_prov, uint32_t **LUT)
 
void plaintextCustomers (const relmap &relations, CBitVector *finish, map< uint32_t, uint32_t > &dist, map< uint32_t, uint32_t > &tree, const uint32_t max_neighbors)
 
BOOL verifyFinish (CBitVector *cbv, uint32_t *circOut, uint32_t num_as)
 
BOOL verifyDist (nodemap &dist, uint32_t *circOut)
 
BOOL verifyTree (nodemap &tree, uint32_t *circOut)
 
BOOL verifyTree (map< uint32_t, uint32_t > &tree, uint32_t *circOut, uint32_t id_bit_size)
 
void plaintextPeers (const relmap &relations, CBitVector *finish, map< uint32_t, uint32_t > &dist, map< uint32_t, uint32_t > &tree, const uint32_t max_neighbors)
 
void plaintextProviders (const relmap &relations, CBitVector *finish, map< uint32_t, uint32_t > &dist, map< uint32_t, uint32_t > &tree, const uint32_t max_neighbors)
 
void plaintextBGP (nodemap &tree, nodemap &dist, CBitVector *finish, const topmap &topology, const relmap &relations, const uint32_t target)
 
void plaintextBGP (nodemap &tree, nodemap &dist, CBitVector *finish, const topmap &topology, const relmap &relations, const uint32_t target, const vector< uint32_t > *oID)
 
int32_t test_bgp_circuit_debug (e_role role, char *address, seclvl seclvl, uint32_t nvals, uint32_t bitlen, uint32_t nthreads, e_mt_gen_alg mt_alg, e_sharing sharing, const topmap &topology, const relmap &relations)
 
int32_t test_bgp_circuit (e_role role, char *address, seclvl seclvl, uint32_t nvals, uint32_t bitlen, uint32_t nthreads, e_mt_gen_alg mt_alg, e_sharing sharing, const topmap &topology, const relmap &relations, const vector< uint32_t > *oID)
 

Detailed Description

Author
sreer.nosp@m.am.s.nosp@m.adasi.nosp@m.vam@.nosp@m.cased.nosp@m..de

Function Documentation

int32_t test_bgp_circuit ( e_role  role,
char *  address,
seclvl  seclvl,
uint32_t  nvals,
uint32_t  bitlen,
uint32_t  nthreads,
e_mt_gen_alg  mt_alg,
e_sharing  sharing,
const topmap &  topology,
const relmap &  relations,
const vector< uint32_t > *  oID 
)
Parameters
rolerole played by the program which can be server or client part.
addressIP Address
seclvlSecurity level
nvalsNumber of values
bitlenBit length of the inputs
nthreadsNumber of threads
mt_algThe algorithm for generation of multiplication triples
sharingSharing type object
BOOL verifyTree ( nodemap &  tree,
uint32_t *  circOut 
)
Parameters
thetree from plaintext evaluation
plaintextbyte arra from circuit output
thelength of one id in bits
BOOL verifyTree ( map< uint32_t, uint32_t > &  tree,
uint32_t *  circOut,
uint32_t  id_bit_size 
)
Parameters
thetree from plaintext evaluation
plaintextbyte arra from circuit output
thelength of one id in bits