PIVX Core  5.6.99
P2P Digital Currency
Macros | Typedefs
sapling.h File Reference
#include <array>
Include dependency graph for sapling.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ZC_NUM_JS_INPUTS   2
 
#define ZC_NUM_JS_OUTPUTS   2
 
#define INCREMENTAL_MERKLE_TREE_DEPTH   29
 
#define INCREMENTAL_MERKLE_TREE_DEPTH_TESTING   4
 
#define SAPLING_INCREMENTAL_MERKLE_TREE_DEPTH   32
 
#define NOTEENCRYPTION_AUTH_BYTES   16
 
#define ZC_NOTEPLAINTEXT_LEADING   1
 
#define ZC_V_SIZE   8
 
#define ZC_RHO_SIZE   32
 
#define ZC_R_SIZE   32
 
#define ZC_MEMO_SIZE   512
 
#define ZC_DIVERSIFIER_SIZE   11
 
#define ZC_JUBJUB_POINT_SIZE   32
 
#define ZC_JUBJUB_SCALAR_SIZE   32
 
#define ZC_NOTEPLAINTEXT_SIZE   (ZC_NOTEPLAINTEXT_LEADING + ZC_V_SIZE + ZC_RHO_SIZE + ZC_R_SIZE + ZC_MEMO_SIZE)
 
#define ZC_SAPLING_ENCPLAINTEXT_SIZE   (ZC_NOTEPLAINTEXT_LEADING + ZC_DIVERSIFIER_SIZE + ZC_V_SIZE + ZC_R_SIZE + ZC_MEMO_SIZE)
 
#define ZC_SAPLING_OUTPLAINTEXT_SIZE   (ZC_JUBJUB_POINT_SIZE + ZC_JUBJUB_SCALAR_SIZE)
 
#define ZC_SAPLING_ENCCIPHERTEXT_SIZE   (ZC_SAPLING_ENCPLAINTEXT_SIZE + NOTEENCRYPTION_AUTH_BYTES)
 
#define ZC_SAPLING_OUTCIPHERTEXT_SIZE   (ZC_SAPLING_OUTPLAINTEXT_SIZE + NOTEENCRYPTION_AUTH_BYTES)
 

Typedefs

typedef std::array< unsigned char, ZC_DIVERSIFIER_SIZEdiversifier_t
 

Macro Definition Documentation

◆ INCREMENTAL_MERKLE_TREE_DEPTH

#define INCREMENTAL_MERKLE_TREE_DEPTH   29

Definition at line 13 of file sapling.h.

◆ INCREMENTAL_MERKLE_TREE_DEPTH_TESTING

#define INCREMENTAL_MERKLE_TREE_DEPTH_TESTING   4

Definition at line 14 of file sapling.h.

◆ NOTEENCRYPTION_AUTH_BYTES

#define NOTEENCRYPTION_AUTH_BYTES   16

Definition at line 18 of file sapling.h.

◆ SAPLING_INCREMENTAL_MERKLE_TREE_DEPTH

#define SAPLING_INCREMENTAL_MERKLE_TREE_DEPTH   32

Definition at line 16 of file sapling.h.

◆ ZC_DIVERSIFIER_SIZE

#define ZC_DIVERSIFIER_SIZE   11

Definition at line 25 of file sapling.h.

◆ ZC_JUBJUB_POINT_SIZE

#define ZC_JUBJUB_POINT_SIZE   32

Definition at line 26 of file sapling.h.

◆ ZC_JUBJUB_SCALAR_SIZE

#define ZC_JUBJUB_SCALAR_SIZE   32

Definition at line 27 of file sapling.h.

◆ ZC_MEMO_SIZE

#define ZC_MEMO_SIZE   512

Definition at line 24 of file sapling.h.

◆ ZC_NOTEPLAINTEXT_LEADING

#define ZC_NOTEPLAINTEXT_LEADING   1

Definition at line 20 of file sapling.h.

◆ ZC_NOTEPLAINTEXT_SIZE

#define ZC_NOTEPLAINTEXT_SIZE   (ZC_NOTEPLAINTEXT_LEADING + ZC_V_SIZE + ZC_RHO_SIZE + ZC_R_SIZE + ZC_MEMO_SIZE)

Definition at line 29 of file sapling.h.

◆ ZC_NUM_JS_INPUTS

#define ZC_NUM_JS_INPUTS   2

Definition at line 11 of file sapling.h.

◆ ZC_NUM_JS_OUTPUTS

#define ZC_NUM_JS_OUTPUTS   2

Definition at line 12 of file sapling.h.

◆ ZC_R_SIZE

#define ZC_R_SIZE   32

Definition at line 23 of file sapling.h.

◆ ZC_RHO_SIZE

#define ZC_RHO_SIZE   32

Definition at line 22 of file sapling.h.

◆ ZC_SAPLING_ENCCIPHERTEXT_SIZE

#define ZC_SAPLING_ENCCIPHERTEXT_SIZE   (ZC_SAPLING_ENCPLAINTEXT_SIZE + NOTEENCRYPTION_AUTH_BYTES)

Definition at line 34 of file sapling.h.

◆ ZC_SAPLING_ENCPLAINTEXT_SIZE

#define ZC_SAPLING_ENCPLAINTEXT_SIZE   (ZC_NOTEPLAINTEXT_LEADING + ZC_DIVERSIFIER_SIZE + ZC_V_SIZE + ZC_R_SIZE + ZC_MEMO_SIZE)

Definition at line 31 of file sapling.h.

◆ ZC_SAPLING_OUTCIPHERTEXT_SIZE

#define ZC_SAPLING_OUTCIPHERTEXT_SIZE   (ZC_SAPLING_OUTPLAINTEXT_SIZE + NOTEENCRYPTION_AUTH_BYTES)

Definition at line 35 of file sapling.h.

◆ ZC_SAPLING_OUTPLAINTEXT_SIZE

#define ZC_SAPLING_OUTPLAINTEXT_SIZE   (ZC_JUBJUB_POINT_SIZE + ZC_JUBJUB_SCALAR_SIZE)

Definition at line 32 of file sapling.h.

◆ ZC_V_SIZE

#define ZC_V_SIZE   8

Definition at line 21 of file sapling.h.

Typedef Documentation

◆ diversifier_t

typedef std::array<unsigned char, ZC_DIVERSIFIER_SIZE> diversifier_t

Definition at line 38 of file sapling.h.