9 #ifndef NDN_ENCODING_SIGNATURE_H 10 #define NDN_ENCODING_SIGNATURE_H 13 #include "../ndn-constants.h" 142 memcpy(signature->
sig_value, sig_value, sig_size);
194 signature->
seqnum = seqnum;
206 const uint8_t* not_before,
const uint8_t* not_after)
219 static inline uint32_t
254 static inline uint32_t
300 #endif // NDN_ENCODING_SIGNATURE_H Definition: ndn-enums.h:45
The structure to represent the signature validity period.
Definition: signature.h:23
uint32_t signature_nonce
Definition: signature.h:60
Definition: ndn-enums.h:44
int ndn_signature_value_tlv_decode(ndn_decoder_t *decoder, ndn_signature_t *signature)
Decode an Signature value TLV block into an Signature structure.
Definition: signature.c:215
static void ndn_signature_set_key_locator(ndn_signature_t *signature, const ndn_name_t *key_name)
Set keylocator of the Signature.
Definition: signature.h:154
#define NDN_SEC_SHA256_HASH_SIZE
Definition: ndn-constants.h:114
uint8_t sig_type
Signature type.
Definition: signature.h:42
ndn_validity_period_t validity_period
Signature validity period.
Definition: signature.h:74
The structure to keep the state when doing NDN TLV decoding.
Definition: decoder.h:21
uint8_t sig_value[NDN_SIGNATURE_BUFFER_SIZE]
The buffer which holds signature value.
Definition: signature.h:46
#define NDN_SEC_UNSUPPORT_SIGN_TYPE
Definition: ndn-error-code.h:96
Definition: ndn-enums.h:43
struct ndn_validity_period ndn_validity_period_t
The structure to represent the signature validity period.
static void ndn_signature_set_seqnum(ndn_signature_t *signature, uint32_t seqnum)
Set SeqNum of the Signed Interest.
Definition: signature.h:191
int ndn_signature_value_tlv_encode(ndn_encoder_t *encoder, const ndn_signature_t *signature)
Encode the Signature value into wire format (TLV block) from Signature structure.
Definition: signature.c:119
static int ndn_signature_set_signature_type(ndn_signature_t *signature, uint8_t type)
Definition: signature.h:100
ndn_name_t key_locator_name
Definition: signature.h:55
uint8_t not_after[15]
Signature is valid not after.
Definition: signature.h:31
#define NDN_ASN1_ECDSA_MAX_ENCODED_SIG_SIZE
Definition: ndn-constants.h:106
uint8_t enable_KeyLocator
Key locator of the signing key.
Definition: signature.h:54
static int ndn_signature_init(ndn_signature_t *signature)
Init a Signature structure.
Definition: signature.h:86
The structure to represent the Name.
Definition: name.h:24
uint64_t seqnum
Definition: signature.h:70
#define NDN_SEC_WRONG_SIG_SIZE
Definition: ndn-error-code.h:92
static void ndn_signature_set_timestamp(ndn_signature_t *signature, uint64_t timestamp)
Set Timestamp of the Signature.
Definition: signature.h:167
The structure to represent the Signature.
Definition: signature.h:38
int ndn_signature_info_tlv_encode(ndn_encoder_t *encoder, const ndn_signature_t *signature)
Encode the Signature info into wire format (TLV block) from Signature structure.
Definition: signature.c:12
static void ndn_signature_set_signature_nonce(ndn_signature_t *signature, uint32_t nonce)
Set Nonce of the Signed Interest.
Definition: signature.h:179
static uint32_t encoder_probe_block_size(uint32_t type, uint32_t payload_size)
Probe the size of a TLV block.
Definition: encoder.h:82
uint8_t enable_Timestamp
The signature timestamp.
Definition: signature.h:64
uint32_t sig_size
Signature value size.
Definition: signature.h:50
static void ndn_signature_set_validity_period(ndn_signature_t *signature, const uint8_t *not_before, const uint8_t *not_after)
Set validity period of the Signature.
Definition: signature.h:205
uint8_t not_before[15]
Signature is valid not before.
Definition: signature.h:27
static uint32_t ndn_name_probe_block_size(const ndn_name_t *name)
Probe the size of a Name TLV block before encoding it from a Name structure.
Definition: name.h:102
uint8_t enable_ValidityPeriod
Definition: signature.h:75
static int ndn_signature_set_signature(ndn_signature_t *signature, const uint8_t *sig_value, size_t sig_size)
Set signature value of the Signature.
Definition: signature.h:127
static int encoder_probe_uint_length(uint64_t value)
Probe the length of a non-negative int as the value (V).
Definition: encoder.h:243
int ndn_signature_info_tlv_decode(ndn_decoder_t *decoder, ndn_signature_t *signature)
Decode an Signature info TLV block into an Signature structure.
Definition: signature.c:132
#define NDN_OVERSIZE
The object given is larger than expected.
Definition: ndn-error-code.h:33
The structure to keep the state when doing NDN TLV encoding.
Definition: encoder.h:31
static uint32_t ndn_signature_value_probe_block_size(const ndn_signature_t *signature)
Probe the size of a Signature value TLV block before encoding it from a Signature structure.
Definition: signature.h:255
#define NDN_SIGNATURE_BUFFER_SIZE
Definition: ndn-constants.h:36
uint8_t enable_SignatureNonce
The signature info nonce.
Definition: signature.h:59
uint64_t timestamp
Definition: signature.h:65
struct ndn_signature ndn_signature_t
The structure to represent the Signature.
uint8_t enable_Seqnum
The signature sequence number.
Definition: signature.h:69
static uint32_t ndn_signature_info_probe_block_size(const ndn_signature_t *signature)
Probe the size of a Signature info TLV block before encoding it from a Signature structure.
Definition: signature.h:220