medcrypt::guardian::SecureOperation
Named standalone operation.
#include <SecureOperation.h>
Public Functions
Name
~SecureOperation() The destructor.
Sign(const char in_data, const size_t & in_data_size, char out_signature, size_t * io_signature_size) Create signature.
Verify(const char in_data, const size_t & in_data_size, const char in_signature, const size_t & in_signature_size, bool * out_is_verified) Verify existing signature.
SignatureMultipartInit(const bool & in_force =true) Prepare for multipart sign/verify.
SignatureMultipartUpdate(const char * in_data, const size_t & in_data_size) Add data to multipart sign/verify operation.
SignatureMultipartSignFinal(char out_signature, size_t io_signature_size) Create signature from previously provided data.
SignatureMultipartVerifyFinal(const char in_signature, const size_t & in_signature_size, bool out_is_verified) Verify signature from previously provided data.
Public Functions Documentation
function ~SecureOperation
~SecureOperation()The destructor.
Parameters:
none
Return: none
The destructor will return the contained object to the main Guardian Run thread.
function Sign
Create signature.
Parameters:
in_data binary data buffer
in_data_size bytes in in_data
out_signature binary data buffer
io_signature_size provide size of out_signature buffer, on return is set to size of the data in out_signature or the required size of out_signature
Returns:
OK out_signature populated with the signature
FAIL general failure, check the log
BADPARAM a provided parameter is nullptr or a size is 0
MISCONFIGURED this secure operation is not configured for signatures
OUTOFMEMORY out_signature is too small, see io_signature_size for required size
Return: medcrypt::guardian::Status
Signature created based on loaded profile.
function Verify
Verify existing signature.
Parameters:
in_data binary data buffer
in_data_size bytes in in_data
in_signature binary data buffer
in_signature_size bytes in in_signature
out_is_verified true if in_data matches in_signature
Returns:
OK signature checked against data, see out_is_verified for if signature matched the data
FAIL general failure
BADPARAM a provided parameter is nullptr or a size is 0
MISCONFIGURED this secure operation is not configured for signatures
Return: medcrypt::guardian::Status
Verification based on loaded profile.
Note: return value will be OK for a successful verify operation even if the signature does not match the data. Check out_is_verified to see if the data and signature match.
function SignatureMultipartInit
Prepare for multipart sign/verify.
Parameters:
in_force optional parameter, true will start a new operation even if another is already in progress
Returns:
OK secure operation is ready for data to sign/verify
FAIL general failure
MISCONFIGURED this secure operation is not configured for signatures
DENIED another secure operation is already in progress
Return: medcrypt::guardian::Status
Initializes secure operation for a multipart signature or multipart signature verification.
function SignatureMultipartUpdate
Add data to multipart sign/verify operation.
Parameters:
in_data_size bytes in in_data
in_data binary data buffer
Returns:
OK data added successfully
FAIL general failure
BADPARAM in_data is nullptr or in_data_size is 0
DENIED this secure operation has not been initialized for a multipart sign/verify operation
Return: medcrypt::guardian::Status
Add data in full or chunked pieces to the secure operation, finish the process with one of the Complete functions.
function SignatureMultipartSignFinal
Create signature from previously provided data.
Parameters:
io_signature_size provide size of out_signature buffer, on return is set to size of the data in out_signature or the required size of out_signature
out_signature binary data buffer
Returns:
OK out_signature populated with the signature
FAIL general failure
BADPARAM out_signature is nullptr or io_signature_size is nullptr or 0
DENIED multipart signature has not been intiailzed
OUTOFMEMORY out_signature is too small, see io_signature_size for required size
Return: medcrypt::guardian::Status
function SignatureMultipartVerifyFinal
Verify signature from previously provided data.
Parameters:
in_signature_size bytes in in_signature
in_signature binary data buffer
out_is_verified true if in_data matches in_signature
Returns:
OK out_verified reflects if signature matched the data
FAIL general failure
BADPARAM in_signature or out_is_verified is nullptr or in_signature_size is 0
DENIED no data has been added to this secure operation
Return: medcrypt::guardian::Status
Debugging and logging
Guardian does not create log files. Instead, logging is controlled by the application:
Guardian logs to
stdoutandstderr, which appear in the terminal/CLI of the running application during execution. Look for specific error codes or connection failures in the output.Custom logging: Use
SetLoggingCallbackto redirect log messages to a callback function, stopping terminal output and allowing custom log handlingLog control: Applications can control log level and verbosity.
Guardian Cloud UI: Check the Guardian Cloud interface for additional error details and provisioning status.
Last updated