Get Size Of LMS Keys and Signature States#
Get the size (bytes) for following LMS states: public key, private key and signature.
Syntax#
IppStatus ippsLMSPublicKeyStateGetSize (Ipp32s* pSize, const IppsLMSAlgoType OIDAlgo);
IppStatus ippsLMSPrivateKeyStateGetSize (Ipp32s* pSize, const IppsLMSAlgoType OIDAlgo, Ipp32s extraBufSize);
IppStatus ippsLMSSignatureStateGetSize (Ipp32s* pSize, const IppsLMSAlgoType OIDAlgo);
Include Files#
ippcp.h
Parameters#
pSize |
Pointer to the state size. |
extraBufSize |
Size of extra buffer allocated as part of the private key state. It is useful for storing tree nodes that are near the root. The larger this value, the less execution time for signature generation. |
OIDAlgo |
LMS Algorithm ID. It defines a set of LMS parameters. See Supported LMS Algorithms for more information. |
Note
extraBufSize must be a multiple of the OTS parameter n.
If it is not, the value will be reduced to the nearest lower multiple of n.
Example: if extraBufSize == 3 * n + 2 then
extraBufSize == 3 * n will be used inside the implementation
and the function will output the ippStsSizeWrn warning status.
Description#
ippsLMSPublicKeyStateGetSize gets the size of the public key state that is defined by OIDAlgo.
ippsLMSPrivateKeyStateGetSize gets the size of the private key state.
ippsLMSSignatureStateGetSize gets the size of the signature state.
Note
Important
You need to enable the IPPCP_PREVIEW_LMS macro to use the feature.
For more information, see Preview Features.
Return Values#
ippStsNoErr |
Indicates no error. All single operations executed without errors. Any other value indicates an error or warning. |
ippStsNullPtrErr |
|
ippStsBadArgErr |
|
ippStsLengthErr |
|
ippStsSizeWrn |
|