soc.h (840B)
1 #ifndef _LIBSWARM_SOC_H 2 #define _LIBSWARM_SOC_H 3 4 #include "def.h" 5 #include "chunk.h" 6 #include "keystore.h" 7 8 #define SWARM_SOC_TOPIC_SIZE 20 9 #define SWARM_SOC_INDEX_SIZE SWARM_WORD_SIZE 10 #define SWARM_SOC_IDENTIFIER_SIZE SWARM_WORD_SIZE 11 12 typedef struct soc_chunk { 13 unsigned char identifier[SWARM_SOC_IDENTIFIER_SIZE]; 14 unsigned char signature[SWARM_SIGNATURE_SIZE]; 15 swarm_chunk_t data; 16 } soc_chunk_t; 17 18 int soc_identifier(unsigned char *z, const unsigned char *topic, const unsigned char *index); 19 int soc_address(unsigned char *z, const unsigned char *identifier, const unsigned char *address); 20 int soc_digest(const soc_chunk_t* chunk, unsigned char *z); 21 unsigned char* soc_serialize(const soc_chunk_t *chunk, unsigned char *z, size_t *sz); 22 int soc_verify(const soc_chunk_t *chunk, const keystore_key_t *key_cmp); 23 24 #endif // _LIBSWARM_SOC_H