myl7/fss 2.0.0
Function secret sharing (FSS) primitives including distributed point/comparison function (DPF/DCF)
Loading...
Searching...
No Matches
fss::HalfTreeGrottoDcf< in_bits, Hash, In >::ParityTreeView Struct Reference

Borrowed, read-only packed leaves and their block-parity tree. More...

Public Attributes

const int4 * blocks
 Borrowed array of B packed output blocks.
const bool * p
 Borrowed array of 2*B-1 block-parity entries.

Detailed Description

template<int in_bits, typename Hash, typename In = uint>
struct fss::HalfTreeGrottoDcf< in_bits, Hash, In >::ParityTreeView

Borrowed, read-only packed leaves and their block-parity tree.

For B = 2^kDepth, blocks[j] holds 128 DPF output-share bits in increasing input order. p has 2*B-1 entries in level order. Its leaf p[B-1+j] is the XOR of all bits in blocks[j]. Each internal entry is its children's XOR. The arrays contain B int4 entries and 2*B-1 bool entries per party. Their combined payload is B * sizeof(int4) + (2*B-1) * sizeof(bool) bytes. Keeping both parties' trees uses twice that amount. For in_bits = 8, kDepth = 1, so B = 2 and the arrays contain two int4 entries and three bool entries per party. Keys, evaluation outputs, allocator overhead, and temporary storage used internally by GPU full-domain evaluation are separate. Neither storage is owned or transferred between host and device by the view.


The documentation for this struct was generated from the following file: