Developer Reference

Contents

RSA_GetSizePublicKey, RSA_GetSizePrivateKeyType1, RSA_GetSizePrivateKeyType2

Get the size of the
IppsRSAPublicKeyState
or
IppsRSAPrivateKeyState
context.

Syntax

IppStatus ippsRSA_GetSizePublicKey(int
rsaModulusBitSize
, int
publicExpBitSize
, int*
pKeySize
);
IppStatus ippsRSA_GetSizePrivateKeyType1(int
rsaModulusBitSize
, int
privateExpBitSize
, int*
pKeySize
);
IppStatus ippsRSA_GetSizePrivateKeyType2(int
factorPBitSize
, int
factorQBitSize
, int*
pKeySize
);
Include Files
ippcp.h
Parameters
rsaModulusBitSize
Length of the RSA system in bits (that is, the length of the composite RSA modulus n in bits).
publicExpBitSize
Length of the RSA public exponent in bits (that is, the length of the
e
component of the RSA public key).
privateExpBitSize
Length of the RSA private exponent in bits (that is, the length of the
d
component of the RSA private key type 1).
factorPBitSize
,
factorQBitSize
Length in bits of the
p
and
q
factors of the RSA modulus
n
=
p
*
q
.
pKeySize
Pointer to the
IppsRSAPublicKeyState
context size in bytes.
Description
These functions get the size of the
IppsRSAPublicKeyState
or
IppsRSAPrivateKeyState
context in bytes and stores it in
*pKeySize
. Call
RSA_GetSizePublicKey
to establish an RSA cryptosystem for encryption (or signature verification) operations. Call
RSA_GetSizePrivateKeyType1
or
RSA_GetSizePrivateKeyType2
to establish an RSA cryptosystem for decryption (or signature generation) operations. The choice between these two functions depends on the representation of the private key to be used.
Return Values
ippStsNoErr
Indicates no error. Any other value indicates an error or warning.
ippStsNullPtrErr
Indicates an error condition if any of the specified pointers is
NULL
.
ippStsNotSupportedModeErr
Indicates an error condition if
rsaModulusBitSize
< 32,
rsaModulusBitSize
> 4096,
factorPBitSize
+
factorQBitSize
< 32,
factorPBitSize
+
factorQBitSize
> 4096,
factorPBitSize
< 0, or
factorQBitSize
< 0.
ippStsBadArgErr
For
RSA_GetSizePublicKey
, indicates an error condition if
publicExpBitSize
< 0 or
publicExpBitSize
>
rsaModulusBitSize
.
For
RSA_GetSizePrivateKeyType1
, indicates and error condition if
privateExpBitSize
<0 or
privateExpBitSize
>
rsaModulusBitSize
.
For
RSA_GetSizePrivateKeyType2
, indicates and error condition if
factorPBitSize
<0,
factorPBitSize
< 0, or
factorPBitSize
<
factorQBitSize
.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804