Tor 0.4.9.3-alpha-dev
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Data Fields
hs_desc_plaintext_data_t Struct Reference

#include <hs_descriptor.h>

Data Fields

uint32_t version
 
uint32_t lifetime_sec
 
tor_cert_tsigning_key_cert
 
ed25519_public_key_t signing_pubkey
 
ed25519_public_key_t blinded_pubkey
 
uint64_t revision_counter
 
uint8_t * superencrypted_blob
 
size_t superencrypted_blob_size
 

Detailed Description

Plaintext data that is unencrypted information of the descriptor.

Definition at line 208 of file hs_descriptor.h.

Field Documentation

◆ blinded_pubkey

ed25519_public_key_t blinded_pubkey

Blinded public key used for this descriptor derived from the master identity key and generated for a specific replica number.

Definition at line 226 of file hs_descriptor.h.

Referenced by build_service_desc_plaintext(), cache_dir_desc_new(), consider_sending_introduce1(), decrypt_desc_layer(), desc_decode_plaintext_v3(), encode_superencrypted_data(), hs_control_hspost_command(), and pick_needed_intro_points().

◆ lifetime_sec

uint32_t lifetime_sec

The lifetime of the descriptor in seconds.

Definition at line 214 of file hs_descriptor.h.

Referenced by build_service_desc_plaintext(), desc_decode_plaintext_v3(), and desc_encode_v3().

◆ revision_counter

uint64_t revision_counter

Revision counter is incremented at each upload, regardless of whether the descriptor has changed. This avoids leaking whether the descriptor has changed. Spec specifies this as a 8 bytes positive integer.

Definition at line 231 of file hs_descriptor.h.

Referenced by build_secret_input(), cache_store_v3_as_dir(), desc_decode_plaintext_v3(), desc_encode_v3(), set_descriptor_revision_counter(), and upload_descriptor_to_hsdir().

◆ signing_key_cert

tor_cert_t* signing_key_cert

Certificate with the short-term ed22519 descriptor signing key for the replica which is signed by the blinded public key for that replica.

Definition at line 218 of file hs_descriptor.h.

Referenced by build_desc_signing_key_cert(), desc_decode_plaintext_v3(), desc_encode_v3(), hs_desc_plaintext_data_free_contents(), and hs_desc_plaintext_obj_size().

◆ signing_pubkey

ed25519_public_key_t signing_pubkey

Signing public key which is used to sign the descriptor. Same public key as in the signing key certificate.

Definition at line 222 of file hs_descriptor.h.

Referenced by build_service_desc_plaintext(), decode_intro_legacy_key(), decode_introduction_point(), desc_decode_plaintext_v3(), and get_inner_encrypted_layer_plaintext().

◆ superencrypted_blob

uint8_t* superencrypted_blob

Decoding only: The b64-decoded superencrypted blob from the descriptor

Definition at line 234 of file hs_descriptor.h.

Referenced by decrypt_desc_layer(), desc_decode_plaintext_v3(), hs_desc_decode_superencrypted(), and hs_desc_plaintext_data_free_contents().

◆ superencrypted_blob_size

size_t superencrypted_blob_size

Decoding only: Size of the superencrypted_blob

Definition at line 237 of file hs_descriptor.h.

Referenced by decrypt_desc_layer(), desc_decode_plaintext_v3(), and hs_desc_plaintext_obj_size().

◆ version

uint32_t version

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