|
ABY Framework
1.0
Arithmetic Bool Yao Framework
|
#include <arithmeticcircuits.h>


Public Member Functions | |
| ArithmeticCircuit (ABYCircuit *aby, e_sharing context, e_role myrole, uint32_t bitlen) | |
| void | Init () |
| void | Cleanup () |
| void | Reset () |
| uint32_t | PutMULGate (uint32_t left, uint32_t right) |
| uint32_t | PutADDGate (uint32_t left, uint32_t right) |
| uint32_t | PutINGate (uint32_t nvals, e_role src) |
| share * | PutINGate (uint32_t nvals, uint64_t val, uint32_t bitlen, e_role role) |
| share * | PutINGate (uint32_t nvals, uint8_t *val, uint32_t bitlen, e_role role) |
| share * | PutINGate (uint32_t nvals, uint32_t *val, uint32_t bitlen, e_role role) |
| template<class T > | |
| uint32_t | PutINGate (uint32_t nvals, T val) |
| template<class T > | |
| uint32_t | PutINGate (uint32_t nvals, T val, e_role role) |
| uint32_t | PutOUTGate (uint32_t parent, e_role dst) |
| share * | PutOUTGate (share *parent, e_role dst) |
| share * | PutCallbackGate (share *in, uint32_t rounds, void(*callback)(GATE *, void *), void *infos, uint32_t nvals) |
| uint32_t | PutINVGate (uint32_t parentid) |
| uint32_t | PutCONVGate (vector< uint32_t > &parentids) |
| share * | PutADDGate (share *ina, share *inb) |
| share * | PutSUBGate (share *ina, share *inb) |
| share * | PutANDGate (share *ina, share *inb) |
| share * | PutXORGate (share *ina, share *inb) |
| share * | PutSubGate (share *ina, share *inb) |
| share * | PutMULGate (share *ina, share *inb) |
| share * | PutGEGate (share *ina, share *inb) |
| share * | PutEQGate (share *ina, share *inb) |
| share * | PutMUXGate (share *ina, share *inb, share *sel) |
| share * | PutY2BGate (share *ina) |
| share * | PutB2YGate (share *ina) |
| share * | PutA2YGate (share *ina) |
| share * | PutANDVecGate (share *ina, share *inb) |
| uint32_t | PutB2AGate (vector< uint32_t > ina) |
| share * | PutB2AGate (share *ina) |
| uint32_t | GetNumMULGates () |
| uint32_t | GetNumCONVGates () |
| share * | PutCONSGate (uint32_t nvals, UGATE_T val, uint32_t bitlen) |
| share * | PutCONSGate (uint32_t nvals, uint8_t *val, uint32_t bitlen) |
| share * | PutCONSGate (uint32_t nvals, uint32_t *val, uint32_t bitlen) |
| uint32_t | PutConstantGate (UGATE_T val, uint32_t nvals=1) |
| uint32_t | GetMaxCommunicationRounds () |
Public Member Functions inherited from Circuit | |
| Circuit (ABYCircuit *aby, e_sharing context, e_role myrole, uint32_t bitlen, e_circuit circ) | |
| virtual | ~Circuit () |
| void | Init () |
| void | Cleanup () |
| void | Reset () |
| uint32_t | GetShareBitLen () |
| uint32_t | GetMaxDepth () |
| deque< uint32_t > | GetLocalQueueOnLvl (uint32_t lvl) |
| deque< uint32_t > | GetInteractiveQueueOnLvl (uint32_t lvl) |
| uint32_t | GetNumLocalLayers () |
| uint32_t | GetNumInteractiveLayers () |
| uint32_t | GetNumInputBitsForParty (e_role party) |
| uint32_t | GetNumOutputBitsForParty (e_role party) |
| deque< uint32_t > | GetInputGatesForParty (e_role party) |
| deque< uint32_t > | GetOutputGatesForParty (e_role party) |
| e_sharing | GetContext () |
| uint32_t | GetNumGates () |
| UGATE_T * | GetOutputGateValue (uint32_t gateid) |
| uint32_t | GetOutputGateValue (uint32_t gateid, UGATE_T *&outval) |
| template<class T > | |
| void | GetOutputGateValue (uint32_t gateid, T &val) |
| uint32_t | GetNumVals (uint32_t gateid) |
| share * | PutCombinerGate (share *ina) |
| share * | PutSplitterGate (share *ina) |
| share * | PutRepeaterGate (uint32_t nvals, share *ina) |
| template<class T > | |
| uint32_t | PutINGate (uint32_t nvals, T val) |
| template<class T > | |
| uint32_t | PutINGate (uint32_t nvals, T val, e_role role) |
| e_circuit | GetCircuitType () |
Additional Inherited Members | |
Protected Member Functions inherited from Circuit | |
| void | UpdateInteractiveQueue (share *gateid) |
| void | UpdateLocalQueue (share *gateid) |
Protected Attributes inherited from Circuit | |
| ABYCircuit * | m_cCircuit |
| GATE * | m_pGates |
| e_sharing | m_eContext |
| e_circuit | m_eCirctype |
| e_role | m_eMyRole |
| uint32_t | m_nShareBitLen |
| uint32_t | m_nMaxDepth |
| vector< deque< uint32_t > > | m_vLocalQueueOnLvl |
| vector< deque< uint32_t > > | m_vInteractiveQueueOnLvl |
| vector< deque< uint32_t > > | m_vInputGates |
| vector< deque< uint32_t > > | m_vOutputGates |
| vector< uint32_t > | m_vInputBits |
| vector< uint32_t > | m_vOutputBits |
| uint32_t | m_nMULs |
| uint32_t | m_nCONVGates |
| uint32_t | m_nGates |
| uint32_t | m_nRoundsAND |
| uint32_t | m_nRoundsXOR |
| vector< uint32_t > | m_nRoundsIN |
| vector< uint32_t > | m_nRoundsOUT |
| const deque< uint32_t > | EMPTYQUEUE |
Arithmetic Circuit class.
1.8.8