FD.io VPP
v20.05.1-6-gf53edbc3b
Vector Packet Processing
|
Usage: More...
Data Fields | |
u8 | id: 1 |
u8 | valid: 1 |
u8 | in_use: 1 |
u64 | random |
u8 | validator |
u64 | secret_key |
u64 | secret_share |
u64 | prime |
u64 | lpc |
u64 | poly_pre_eval |
u64 | bit_mask |
u64 | limit |
double | primeinv |
u64 | total_pkts_using_this_profile |
Usage:
On any node that participates in Proof of Transit:
Step 1: Initialize this library by calling pot_init() Step 2: Setup a proof of transit profile that contains all the parameters needed to compute cumulative: Call these functions: pot_profile_find pot_profile_create pot_profile_set_bit_mask - To setup how large we want the numbers used in the computation and random number <= 64 bits Step 2a: For validator do this: pot_set_validator Step 2b: On initial node enable the profile to be used: pot_profile_set_active / pot_profile_get_active will return the profile Step 3a: At the initial node to generate Random number that will be read by all other nodes: pot_generate_random Step 3b: At all nodes including initial and verifier call this to compute cumulative: pot_update_cumulative Step 4: At the verifier: pot_validate
Definition at line 54 of file pot_util.h.
u64 pot_profile_::bit_mask |
Definition at line 66 of file pot_util.h.
u8 pot_profile_::id |
Definition at line 56 of file pot_util.h.
u8 pot_profile_::in_use |
Definition at line 58 of file pot_util.h.
u64 pot_profile_::limit |
Definition at line 67 of file pot_util.h.
u64 pot_profile_::lpc |
Definition at line 64 of file pot_util.h.
u64 pot_profile_::poly_pre_eval |
Definition at line 65 of file pot_util.h.
u64 pot_profile_::prime |
Definition at line 63 of file pot_util.h.
double pot_profile_::primeinv |
Definition at line 68 of file pot_util.h.
u64 pot_profile_::random |
Definition at line 59 of file pot_util.h.
u64 pot_profile_::secret_key |
Definition at line 61 of file pot_util.h.
u64 pot_profile_::secret_share |
Definition at line 62 of file pot_util.h.
u64 pot_profile_::total_pkts_using_this_profile |
Definition at line 69 of file pot_util.h.
u8 pot_profile_::valid |
Definition at line 57 of file pot_util.h.
u8 pot_profile_::validator |
Definition at line 60 of file pot_util.h.