Guardtime KSI c SDK
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Typedefs | Enumerations | Functions
hashchain.h File Reference
#include <time.h>
#include "hash.h"
#include "types.h"

Go to the source code of this file.

Typedefs

typedef enum
KSI_HashChainLinkIdentityType_en 
KSI_HashChainLinkIdentityType
 

Enumerations

enum  KSI_HashChainLinkIdentityType_en { KSI_IDENTITY_TYPE_LEGACY_ID, KSI_IDENTITY_TYPE_METADATA, KSI_IDENTITY_TYPE_UNKNOWN }
 

Functions

int KSI_HashChain_aggregate (KSI_CTX *, KSI_LIST(KSI_HashChainLink)*chain, const KSI_DataHash *inputHash, int startLevel, KSI_HashAlgorithm algo_id, int *endLevel, KSI_DataHash **outputHash)
 
int KSI_HashChain_aggregateCalendar (KSI_CTX *, KSI_LIST(KSI_HashChainLink)*chain, const KSI_DataHash *inputHash, KSI_DataHash **outputHash)
 
void KSI_HashChainLink_free (KSI_HashChainLink *t)
 
int KSI_HashChainLink_new (KSI_CTX *ctx, KSI_HashChainLink **t)
 
int KSI_HashChainLink_getIsLeft (const KSI_HashChainLink *t, int *isLeft)
 
int KSI_HashChainLink_getLevelCorrection (const KSI_HashChainLink *t, KSI_Integer **levelCorrection)
 
int KSI_HashChainLink_getLegacyId (const KSI_HashChainLink *t, KSI_OctetString **legacyId)
 
int KSI_HashChainLink_getMetaData (const KSI_HashChainLink *t, KSI_MetaDataElement **metaData)
 
int KSI_HashChainLink_getImprint (const KSI_HashChainLink *t, KSI_DataHash **imprint)
 
int KSI_HashChainLink_setIsLeft (KSI_HashChainLink *t, int isLeft)
 
int KSI_HashChainLink_setLevelCorrection (KSI_HashChainLink *t, KSI_Integer *levelCorrection)
 
int KSI_HashChainLink_setLegacyId (KSI_HashChainLink *t, KSI_OctetString *legacyId)
 
int KSI_HashChainLink_setMetaData (KSI_HashChainLink *t, KSI_MetaDataElement *metaData)
 
int KSI_HashChainLink_setImprint (KSI_HashChainLink *t, KSI_DataHash *imprint)
 
int KSI_HashChainLink_fromTlv (KSI_TLV *tlv, KSI_HashChainLink **o)
 
int KSI_HashChainLink_toTlv (KSI_CTX *ctx, const KSI_HashChainLink *o, unsigned tag, int isNonCritical, int isForward, KSI_TLV **tlv)
 
int KSI_HashChainLink_LegacyId_fromTlv (KSI_TLV *tlv, KSI_OctetString **legacyId)
 
int KSI_HashChainLink_LegacyId_toTlv (KSI_CTX *ctx, const KSI_OctetString *legacyId, unsigned tag, int isNonCritical, int isForward, KSI_TLV **tlv)
 
int KSI_CalendarHashChainLink_fromTlv (KSI_TLV *tlv, KSI_CalendarHashChainLink **o)
 
int KSI_CalendarHashChainLink_toTlv (KSI_CTX *ctx, const KSI_CalendarHashChainLink *o, unsigned tag, int isNonCritical, int isForward, KSI_TLV **tlv)
 
void KSI_CalendarHashChain_free (KSI_CalendarHashChain *t)
 
int KSI_CalendarHashChain_new (KSI_CTX *ctx, KSI_CalendarHashChain **t)
 
int KSI_CalendarHashChain_aggregate (KSI_CalendarHashChain *chain, KSI_DataHash **hsh)
 
int KSI_CalendarHashChain_calculateAggregationTime (const KSI_CalendarHashChain *chain, time_t *aggrTime)
 
int KSI_CalendarHashChain_getPublicationTime (const KSI_CalendarHashChain *t, KSI_Integer **publicationTime)
 
int KSI_CalendarHashChain_getAggregationTime (const KSI_CalendarHashChain *t, KSI_Integer **aggregationTime)
 
int KSI_CalendarHashChain_getInputHash (const KSI_CalendarHashChain *t, KSI_DataHash **inputHash)
 
int KSI_CalendarHashChain_getHashChain (const KSI_CalendarHashChain *t, KSI_LIST(KSI_HashChainLink)**hashChain)
 
int KSI_CalendarHashChain_setPublicationTime (KSI_CalendarHashChain *t, KSI_Integer *publicationTime)
 
int KSI_CalendarHashChain_setAggregationTime (KSI_CalendarHashChain *t, KSI_Integer *aggregationTime)
 
int KSI_CalendarHashChain_setInputHash (KSI_CalendarHashChain *t, KSI_DataHash *inputHash)
 
int KSI_CalendarHashChain_setHashChain (KSI_CalendarHashChain *t, KSI_LIST(KSI_HashChainLink)*hashChain)
 
int KSI_CalendarHashChain_verifyCompatibilityTo (const KSI_CalendarHashChain *a, const KSI_CalendarHashChain *b)
 
KSI_CalendarHashChainKSI_CalendarHashChain_ref (KSI_CalendarHashChain *o)
 
int KSI_CalendarHashChain_writeBytes (KSI_CalendarHashChain *o, unsigned char *buf, size_t buf_size, size_t *buf_len, int opt)
 
void KSI_HashChainLinkIdentity_free (KSI_HashChainLinkIdentity *identity)
 
int KSI_HashChainLinkIdentity_getType (const KSI_HashChainLinkIdentity *o, KSI_HashChainLinkIdentityType *v)
 
int KSI_HashChainLinkIdentity_getClientId (const KSI_HashChainLinkIdentity *o, KSI_Utf8String **v)
 
int KSI_HashChainLinkIdentity_getMachineId (const KSI_HashChainLinkIdentity *o, KSI_Utf8String **v)
 
int KSI_HashChainLinkIdentity_getSequenceNr (const KSI_HashChainLinkIdentity *o, KSI_Integer **v)
 
int KSI_HashChainLinkIdentity_getRequestTime (const KSI_HashChainLinkIdentity *o, KSI_Integer **v)
 
KSI_HashChainLinkIdentityKSI_HashChainLinkIdentity_ref (KSI_HashChainLinkIdentity *o)
 
int KSI_AggregationHashChain_getIdentity (const KSI_AggregationHashChain *aggr, KSI_HashChainLinkIdentityList **identity)
 
void KSI_AggregationHashChain_free (KSI_AggregationHashChain *aggr)
 
int KSI_AggregationHashChain_new (KSI_CTX *ctx, KSI_AggregationHashChain **out)
 
int KSI_Signature_appendAggregationChain (KSI_Signature *sig, KSI_AggregationHashChain *aggr)
 
int KSI_AggregationHashChain_aggregate (KSI_AggregationHashChain *aggr, int startLevel, int *endLevel, KSI_DataHash **root)
 
int KSI_AggregationHashChain_calculateShape (const KSI_AggregationHashChain *chn, KSI_uint64_t *shape)
 
int KSI_AggregationHashChain_compare (const KSI_AggregationHashChain **left, const KSI_AggregationHashChain **right)
 
int KSI_AggregationHashChain_getAggregationTime (const KSI_AggregationHashChain *aggr, KSI_Integer **aggregationTime)
 
int KSI_AggregationHashChain_getChainIndex (const KSI_AggregationHashChain *aggr, KSI_LIST(KSI_Integer)**chainIndex)
 
int KSI_AggregationHashChain_getInputData (const KSI_AggregationHashChain *aggr, KSI_OctetString **inputData)
 
int KSI_AggregationHashChain_getInputHash (const KSI_AggregationHashChain *aggr, KSI_DataHash **inputHash)
 
int KSI_AggregationHashChain_getAggrHashId (const KSI_AggregationHashChain *aggr, KSI_Integer **aggrHashId)
 
int KSI_AggregationHashChain_getChain (const KSI_AggregationHashChain *aggr, KSI_LIST(KSI_HashChainLink)**chain)
 
int KSI_AggregationHashChain_setAggregationTime (KSI_AggregationHashChain *aggr, KSI_Integer *aggregationTime)
 
int KSI_AggregationHashChain_setChainIndex (KSI_AggregationHashChain *aggr, KSI_LIST(KSI_Integer)*chainIndex)
 
int KSI_AggregationHashChain_setInputData (KSI_AggregationHashChain *aggr, KSI_OctetString *inputData)
 
int KSI_AggregationHashChain_setInputHash (KSI_AggregationHashChain *aggr, KSI_DataHash *inputHash)
 
int KSI_AggregationHashChain_setAggrHashId (KSI_AggregationHashChain *aggr, KSI_Integer *aggrHashId)
 
int KSI_AggregationHashChain_setChain (KSI_AggregationHashChain *aggr, KSI_LIST(KSI_HashChainLink)*chain)
 
KSI_AggregationHashChainKSI_AggregationHashChain_ref (KSI_AggregationHashChain *o)
 
int KSI_AggregationHashChain_writeBytes (KSI_AggregationHashChain *o, unsigned char *buf, size_t buf_size, size_t *buf_len, int opt)
 
int KSI_AggregationHashChainList_aggregate (KSI_AggregationHashChainList *chainList, KSI_CTX *ctx, int level, KSI_DataHash **outputHash)