1 #ifndef LIBGARBLE_GARBLE_GATE_PRIVACY_FREE_H 2 #define LIBGARBLE_GARBLE_GATE_PRIVACY_FREE_H 31 AES_ecb_encrypt_blks(&tmp, 1, key);
35 *((
char *) &HA) |= 0x01;
39 *((
char *) &HA) &= 0xfe;
54 if ((*((
char *) &A0) & 0x01) == 1
55 || (*((
char *) &B0) & 0x01) == 1
56 || (*((
char *) &A1) & 0x01) == 0
57 || (*((
char *) &B1) & 0x01) == 0) {
58 assert(
false &&
"invalid lsb in block");
71 block masks[2], keys[2];
75 memcpy(masks, keys,
sizeof keys);
76 AES_ecb_encrypt_blks(keys, 2, key);
80 *((
char *) &HA0) &= 0xfe;
81 *((
char *) &HA1) |= 0x01;
#define garble_lsb(x)
Definition: block.h:15
#define garble_make_block(X, Y)
Definition: block.h:16
__m128i block
Definition: block.h:8
garble_gate_type_e
Definition: garble.h:25
#define garble_double(B)
Definition: block.h:17
#define garble_xor(x, y)
Definition: block.h:10