TrustCore SDK Crypto Interface API reference  version 2.0
crypto_interface_qs_sig.h
Go to the documentation of this file.
1 /*
2  * crypto_interface_qs_sig.h
3  *
4  * Cryptographic Interface header file for declaring Signature based authentication methods.
5  *
6  * Copyright 2019-2024 DigiCert, Inc. All Rights Reserved.
7  * Proprietary and Confidential Material.
8  *
9  */
10 
17 #ifndef __CRYPTO_INTERFACE_QS_SIG_HEADER__
18 #define __CRYPTO_INTERFACE_QS_SIG_HEADER__
19 
20 #include "../crypto_interface/crypto_interface_qs.h"
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
40 MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_getSignatureLen(QS_CTX *pCtx, ubyte4 *pSigLen);
41 
60 MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_signMessage(QS_CTX *pCtx, RNGFun rngFun, void *pRngFunArg, ubyte *pMessage, ubyte4 messageLen,
61  ubyte *pSignature, ubyte4 sigBufferLen, ubyte4 *pActualSigLen);
62 
82 MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_signMessageAlloc(QS_CTX *pCtx, RNGFun rngFun, void *pRngFunArg, ubyte *pMessage, ubyte4 messageLen,
83  ubyte **ppSignature, ubyte4 *pSignatureLen);
84 
105 MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_verifyMessage(QS_CTX *pCtx, ubyte *pMessage, ubyte4 messageLen,
106  ubyte *pSignature, ubyte4 signatureLen, ubyte4 *pVerifyStatus);
107 
108 #ifdef __cplusplus
109 }
110 #endif
111 
112 #endif /* __CRYPTO_INTERFACE_QS_SIG_HEADER__ */
MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_verifyMessage(QS_CTX *pCtx, ubyte *pMessage, ubyte4 messageLen, ubyte *pSignature, ubyte4 signatureLen, ubyte4 *pVerifyStatus)
Performs the signature verification algorithm.
Context structure to hold the appropriate quantum safe asymmetric keys.
Definition: crypto_interface_qs.h:49
MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_signMessage(QS_CTX *pCtx, RNGFun rngFun, void *pRngFunArg, ubyte *pMessage, ubyte4 messageLen, ubyte *pSignature, ubyte4 sigBufferLen, ubyte4 *pActualSigLen)
Performs the signature generation algorithm.
MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_getSignatureLen(QS_CTX *pCtx, ubyte4 *pSigLen)
Gets the length or maximum length of a signature associated with a QS context in bytes.
MOC_EXTERN MSTATUS CRYPTO_INTERFACE_QS_SIG_signMessageAlloc(QS_CTX *pCtx, RNGFun rngFun, void *pRngFunArg, ubyte *pMessage, ubyte4 messageLen, ubyte **ppSignature, ubyte4 *pSignatureLen)
Performs the signature generation algorithm.