Data
Attesters define the data system for their application on top of the UniRep protocol. There are FIELD_COUNT
data fields. It composes of two kinds of operations: addition field and replacement field.
Addition field
The elements in addition field are combined with addition and modulo by SNARK_SCALAR_FIELD
. E.g. data[0] = (old_data[0] + new_data[0]) % SNARK_SCALAR_FIELD
. There are SUM_FIELD_COUNT
addition fields.
Replacement field
The elements in replacement field are combined by replacement. Each replacement field contains 2 parts:
- 205 bits data (upper bits)
- 48 bits index (lower bits)
The maximum value that can be stored in a replacement field is 2**205-1
. The index
value is used by the protocol to order the attestations. Because the index is stored as the higher order bits data field attestation can be sorted without bit operations.
There are FIELD_COUNT - SUM_FIELD_COUNT
replacement fields.