RSA BSAFE Micro Edition Suite

Streamlined security for mobile and embedded devices

Search  Print

Information Types

This section lists the information types that comprise a certificate. The following table details the data types to pass into value when calling R_CERT_get_info().

Identifier Value Data Type
R_CERT_INFO_VERSION int *
R_CERT_INFO_SERIAL_NUMBER R_ITEM *
R_CERT_INFO_ISSUER R_TITEM *
R_CERT_INFO_NOT_BEFORE R_TITEM *
R_CERT_INFO_NOT_AFTER R_TITEM *
R_CERT_INFO_SUBJECT R_TITEM *
R_CERT_INFO_PUBLIC_KEY R_TITEM *
R_CERT_INFO_ISSUER_UNIQUE_ID R_TITEM *
R_CERT_INFO_SUBJECT_UNIQUE_ID R_TITEM *
R_CERT_INFO_EXTENSIONS R_TITEM *
R_CERT_INFO_KEY_USAGE R_EXT *
R_CERT_INFO_EXTENDED_KEY_USAGE R_EXT *
R_CERT_INFO_AUTH_INFO_ACCESS R_EXT *
R_CERT_INFO_BASIC_CONSTRAINTS R_EXT *
R_CERT_INFO_AUTHORITY_KEY_ID R_EXT *
R_CERT_INFO_SUBJECT_KEY_ID R_EXT *
R_CERT_INFO_SUBJECT_ALT_NAME R_EXT *
R_CERT_INFO_SUBJECT_DNS_NAME R_ITEM *
R_CERT_INFO_SUBJECT_IP_ADDRESS R_ITEM *
R_CERT_INFO_SUBJECT_RFC822_NAME R_ITEM *
R_CERT_INFO_ISSUER_ALT_NAME R_EXT *
R_CERT_INFO_ISSUER_DNS_NAME R_ITEM *
R_CERT_INFO_ISSUER_IP_ADDRESS R_ITEM *
R_CERT_INFO_ISSUER_RFC822_NAME R_ITEM *
R_CERT_INFO_EXTENSION_COUNT int *
R_CERT_INFO_EXTENSION R_EXT *
R_CERT_INFO_EXTENSION_BY_OID R_EXT *
R_CERT_INFO_TO_BE_SIGNED R_TITEM *
R_CERT_INFO_BINARY R_TITEM *
R_CERT_INFO_SIGNATURE R_TITEM *
R_CERT_INFO_TYPE int *
R_CERT_INFO_R_CERT_CTX R_CERT_CTX **
R_CERT_INFO_VERSION_STRING char **
R_CERT_INFO_SIGNATURE_TYPE int *
R_CERT_INFO_SIGNATURE_DIGEST_TYPE int *
R_CERT_INFO_R_PKEY R_PKEY **
R_CERT_INFO_ISSUER_R_CERT_NAME R_CERT_NAME **
R_CERT_INFO_SUBJECT_R_CERT_NAME R_CERT_NAME **

R_CERT_INFO_DELETE int *

R_CERT_INFO_LOCATION R_ITEM *

The following table details the data types to pass into value when calling R_CERT_set_info().

Identifier Value Data Type
R_CERT_INFO_VERSION int *
R_CERT_INFO_SERIAL_NUMBER R_ITEM *
R_CERT_INFO_ISSUER R_TITEM *
R_CERT_INFO_NOT_BEFORE R_TITEM *
R_CERT_INFO_NOT_AFTER R_TITEM *
R_CERT_INFO_SUBJECT R_TITEM *
R_CERT_INFO_PUBLIC_KEY R_TITEM *
R_CERT_INFO_ISSUER_UNIQUE_ID R_TITEM *
R_CERT_INFO_SUBJECT_UNIQUE_ID R_TITEM *
R_CERT_INFO_EXTENSIONS R_TITEM *
R_CERT_INFO_KEY_USAGE R_EXT *
R_CERT_INFO_TO_BE_SIGNED R_TITEM *
R_CERT_INFO_BINARY R_TITEM *
R_CERT_INFO_SIGNATURE R_TITEM *
R_CERT_INFO_R_PKEY R_PKEY *
R_CERT_INFO_ISSUER_R_CERT_NAME R_CERT_NAME *
R_CERT_INFO_SUBJECT_R_CERT_NAME R_CERT_NAME *
R_CERT_INFO_LOCATION R_ITEM *


Defines

#define R_CERT_INFO_VERSION
 Indicates the version of the X.509 certificate. More...

#define R_CERT_INFO_SERIAL_NUMBER
 Indicates the serial number of the certificate that is unique in combination with the issuer name. More...

#define R_CERT_INFO_ISSUER
 Indicates the name of the issuer of the certificate. More...

#define R_CERT_INFO_NOT_BEFORE
 Indicates the date and time prior to which the certificate is invalid. More...

#define R_CERT_INFO_NOT_AFTER
 Indicates the date and time after which the certificate is invalid. More...

#define R_CERT_INFO_SUBJECT
 Indicates the name of the entity to which the certificate is issued. More...

#define R_CERT_INFO_PUBLIC_KEY
 Indicates the public key of the certificate. More...

#define R_CERT_INFO_ISSUER_UNIQUE_ID
 Indicates an alternative issuer name that is guaranteed to be unique. More...

#define R_CERT_INFO_SUBJECT_UNIQUE_ID
 Indicates an alternative name for the entity to which the certificate is issued that is guaranteed to be unique. More...

#define R_CERT_INFO_EXTENSIONS
 Indicates extensions to the certificate, including information such as key usage. More...

#define R_CERT_INFO_KEY_USAGE
 Indicates the key usage bits from an X.509 certificate. More...

#define R_CERT_INFO_KEY_USAGE_INT
 Indicates a key usage for the certificate encoded as an integer rather than as an R_EXT. More...

#define R_CERT_INFO_EXTENDED_KEY_USAGE
 Indicates the key usage bits from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_AUTH_INFO_ACCESS
 Indicates the authority information access from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_BASIC_CONSTRAINTS
 Indicates the basic constraints from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_AUTHORITY_KEY_ID
 Indicates the authority key identifier from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_SUBJECT_KEY_ID
 Indicates the subject key identifier from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_SUBJECT_ALT_NAME
 Indicates the subject alternate name from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_SUBJECT_DNS_NAME
 Indicates the subject alternative name as a Domain Name Service (DNS) name from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_SUBJECT_IP_ADDRESS
 Indicates the subject alternative name as an IP Address from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_SUBJECT_RFC822_NAME
 Indicates the subject alternative name as an IP Address from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_ISSUER_ALT_NAME
 Indicates the issuer alternate name from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_ISSUER_DNS_NAME
 Indicates the issuer alternative name as a Domain Name Service (DNS) name from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_ISSUER_IP_ADDRESS
 Indicates the issuer alternative name as an IP address from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_ISSUER_RFC822_NAME
 Indicates the issuer alternative name as an RFC 822 name from the extension part of an X.509 certificate. More...

#define R_CERT_INFO_EXTENSION_COUNT
 Provides a count of the extensions in the certificate. More...

#define R_CERT_INFO_EXTENSION
 Indicates the extension in the certificate identified by the specified index. More...

#define R_CERT_INFO_EXTENSION_BY_OID
 Indicates the extension in the certificate identified by the specified Object Identifier (OID). More...

#define R_CERT_INFO_TO_BE_SIGNED
 Indicates the part of the certificate to be signed (tbsCertificate), including the details of the certificate that are authenticated by the signature. More...

#define R_CERT_INFO_BINARY
 Indicates the entire certificate in encoded (binary) form. More...

#define R_CERT_INFO_SIGNATURE
 Indicates the signature of the certificate that is used to authenticate its details. More...

#define R_CERT_INFO_INTERNAL_SIG_INFO
 Indicates an internal structure that holds all the information relevant to a signature including the type, any parameters and signature.

#define R_CERT_INFO_ALL
 Indicates the certificate data to digest.

#define R_CERT_INFO_TYPE
 Indicates the type of the certificate. More...

#define R_CERT_INFO_R_CERT_CTX
 Indicates the certificate context associated with the certificate. More...

#define R_CERT_INFO_VERSION_STRING
 Indicates the string of the version code. More...

#define R_CERT_INFO_SIGNATURE_TYPE
 Indicates the signature type of the certificate. More...

#define R_CERT_INFO_SIGNATURE_DIGEST_TYPE
 Indicates the signature digest type of the certificate. More...

#define R_CERT_INFO_R_PKEY
 Indicates the public key of the certificate as an R_PKEY. More...

#define R_CERT_INFO_ISSUER_R_CERT_NAME
 Indicates the issuer name of the certificate as an R_CERT_NAME. More...

#define R_CERT_INFO_SUBJECT_R_CERT_NAME
 Indicates the name of the entity to which the certificate is issued as an R_CERT_NAME. More...

#define R_CERT_INFO_PARAMETERS
 Indicates that there a number of parameters together.

#define R_CERT_INFO_END_PARAMETERS
 Indicates that there are no more parameters in the list.

#define R_CERT_INFO_METHOD
 Indicates the method table in use by the certificate.

#define R_CERT_KEY_USAGE
 Indicates a key usage for the certificate.

#define R_CERT_INFO_DELETE
 This identifier is used to delete an item that has been added to a certificate. More...

#define R_CERT_INFO_LOCATION
 Identifies the location(s) where the complete object may be stored.


Define Documentation

#define R_CERT_INFO_AUTH_INFO_ACCESS
 

Indicates the authority information access from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the authority information access from the extension part of an X.509 certificate.

#define R_CERT_INFO_AUTHORITY_KEY_ID
 

Indicates the authority key identifier from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the authority key identifier from the extension part of an X.509 certificate.

#define R_CERT_INFO_BASIC_CONSTRAINTS
 

Indicates the basic constraints from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the basic constraints from the extension part of an X.509 certificate.

#define R_CERT_INFO_BINARY
 

Indicates the entire certificate in encoded (binary) form. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the entire certificate.
R_CERT_set_info() R_TITEM * Sets the entire certificate.

See also:
R_CERT_from_binary() and R_CERT_to_binary().

#define R_CERT_INFO_DELETE
 

This identifier is used to delete an item that has been added to a certificate. The info_id should be passed in as a pointer to an int.

#define R_CERT_INFO_EXTENDED_KEY_USAGE
 

Indicates the key usage bits from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the key usage bits from the extension part of an X.509 certificate.

#define R_CERT_INFO_EXTENSION
 

Indicates the extension in the certificate identified by the specified index. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the extension in the certificate identified by the specified index.

#define R_CERT_INFO_EXTENSION_BY_OID
 

Indicates the extension in the certificate identified by the specified Object Identifier (OID). The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the extension in the certificate identified by the specified OID.

#define R_CERT_INFO_EXTENSION_COUNT
 

Provides a count of the extensions in the certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() int * Returns a count of the extensions in the certificate.

#define R_CERT_INFO_EXTENSIONS
 

Indicates extensions to the certificate, including information such as key usage. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns extensions to the certificate, including information such as key usage.
R_CERT_set_info() R_TITEM * Sets extensions to the certificate, including information such as key usage.

#define R_CERT_INFO_ISSUER
 

Indicates the name of the issuer of the certificate. This name is unique in combination with the serial number. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the name of the issuer of the certificate.
R_CERT_set_info() R_TITEM * Sets the name of the issuer of the certificate.

#define R_CERT_INFO_ISSUER_ALT_NAME
 

Indicates the issuer alternate name from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the issuer alternate from the extension part of an X.509 certificate.

#define R_CERT_INFO_ISSUER_DNS_NAME
 

Indicates the issuer alternative name as a Domain Name Service (DNS) name from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_ITEM * Returns the issuer alternative DNS name from the extension part of an X.509 certificate.

#define R_CERT_INFO_ISSUER_IP_ADDRESS
 

Indicates the issuer alternative name as an IP address from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_ITEM * Returns the issuer alternative IP Address from the extension part of an X.509 certificate.

#define R_CERT_INFO_ISSUER_R_CERT_NAME
 

Indicates the issuer name of the certificate as an R_CERT_NAME. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_CERT_NAME ** Returns the issuer name of the certificate as an R_CERT_NAME.
R_CERT_set_info() R_CERT_NAME * Sets the issuer name of the certificate to the specified R_CERT_NAME.

#define R_CERT_INFO_ISSUER_RFC822_NAME
 

Indicates the issuer alternative name as an RFC 822 name from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_ITEM * Returns the issuer name as an email address from the extension part of an X.509 certificate.

#define R_CERT_INFO_ISSUER_UNIQUE_ID
 

Indicates an alternative issuer name that is guaranteed to be unique. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns an alternative issuer name that is guaranteed to be unique.
R_CERT_set_info() R_TITEM * Sets an alternative issuer name that is guaranteed to be unique.

#define R_CERT_INFO_KEY_USAGE
 

Indicates the key usage bits from an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the key usage bits from an X.509 certificate.
R_CERT_set_info() R_EXT * Sets the key usage bits from an X.509 certificate.

#define R_CERT_INFO_KEY_USAGE_INT
 

Indicates a key usage for the certificate encoded as an integer rather than as an R_EXT. The bit values are defined in Key Usage Extensions

#define R_CERT_INFO_NOT_AFTER
 

Indicates the date and time after which the certificate is invalid. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the date and time after which the certificate is invalid.
R_CERT_set_info() R_TITEM * Sets the date and time after which the certificate is invalid.

#define R_CERT_INFO_NOT_BEFORE
 

Indicates the date and time prior to which the certificate is invalid. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the date and time prior to which the certificate is invalid.
R_CERT_set_info() R_TITEM * Sets the date and time prior to which the certificate is invalid.

#define R_CERT_INFO_PUBLIC_KEY
 

Indicates the public key of the certificate. A certificate binds the public key to the name of the entity to which the certificate is issued. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the public key of the certificate.
R_CERT_set_info() R_TITEM * Sets the public key of the certificate.

#define R_CERT_INFO_R_CERT_CTX
 

Indicates the certificate context associated with the certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_CERT_CTX ** Returns the certificate context associated with the certificate.

#define R_CERT_INFO_R_PKEY
 

Indicates the public key of the certificate as an R_PKEY. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_PKEY ** Returns the public key of the certificate as an R_PKEY.
R_CERT_set_info() R_PKEY * Sets the public key of the certificate to the specified R_PKEY.

#define R_CERT_INFO_SERIAL_NUMBER
 

Indicates the serial number of the certificate that is unique in combination with the issuer name. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_ITEM * Returns the serial number of the certificate.
R_CERT_set_info() R_ITEM * Sets the serial number of the certificate.

#define R_CERT_INFO_SIGNATURE
 

Indicates the signature of the certificate that is used to authenticate its details. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the signature of the certificate that is used to authenticate its details.
R_CERT_set_info() R_TITEM * Sets the signature of the certificate that is used to authenticate its details.

#define R_CERT_INFO_SIGNATURE_DIGEST_TYPE
 

Indicates the signature digest type of the certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() int * Returns the signature digest type of the certificate.

#define R_CERT_INFO_SIGNATURE_TYPE
 

Indicates the signature type of the certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() int * Returns the signature type of the certificate.

#define R_CERT_INFO_SUBJECT
 

Indicates the name of the entity to which the certificate is issued. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the name of the entity to which the certificate is issued.
R_CERT_set_info() R_TITEM * Sets the name of the entity to which the certificate is issued.

#define R_CERT_INFO_SUBJECT_ALT_NAME
 

Indicates the subject alternate name from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the subject alternate from the extension part of an X.509 certificate.

#define R_CERT_INFO_SUBJECT_DNS_NAME
 

Indicates the subject alternative name as a Domain Name Service (DNS) name from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_ITEM * Returns the subject alternative DNS name from the extension part of an X.509 certificate.

#define R_CERT_INFO_SUBJECT_IP_ADDRESS
 

Indicates the subject alternative name as an IP Address from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_ITEM * Returns the subject alternative IP Address from the extension part of an X.509 certificate.

#define R_CERT_INFO_SUBJECT_KEY_ID
 

Indicates the subject key identifier from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_EXT * Returns the subject key identifier from the extension part of an X.509 certificate.

#define R_CERT_INFO_SUBJECT_R_CERT_NAME
 

Indicates the name of the entity to which the certificate is issued as an R_CERT_NAME. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_CERT_NAME ** Returns the name of the entity to which the certificate is issued as an R_CERT_NAME.
R_CERT_set_info() R_CERT_NAME * Sets the name of the entity to which the certificate is issued to the specified R_CERT_NAME.

#define R_CERT_INFO_SUBJECT_RFC822_NAME
 

Indicates the subject alternative name as an IP Address from the extension part of an X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_ITEM * Returns the subject alternative IP Address from the extension part of an X.509 certificate.

#define R_CERT_INFO_SUBJECT_UNIQUE_ID
 

Indicates an alternative name for the entity to which the certificate is issued that is guaranteed to be unique. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns an alternative name for the entity to which the certificate is issued that is guaranteed to be unique.
R_CERT_set_info() R_TITEM * Sets an alternative name for the entity to which the certificate is issued that is guaranteed to be unique.

#define R_CERT_INFO_TO_BE_SIGNED
 

Indicates the part of the certificate to be signed (tbsCertificate), including the details of the certificate that are authenticated by the signature. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() R_TITEM * Returns the tbsCertificate field of the certificate.
R_CERT_set_info() R_TITEM * Sets the tbsCertificate field of the certificate.

#define R_CERT_INFO_TYPE
 

Indicates the type of the certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() int * Returns the type of the certificate.

#define R_CERT_INFO_VERSION
 

Indicates the version of the X.509 certificate. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() int * Returns the version of the certificate structure.
R_CERT_set_info() int * Sets the version of the certificate structure.

#define R_CERT_INFO_VERSION_STRING
 

Indicates the string of the version code. The following table details the usage of the identifier in Functions.

Function Value Data Type Description
R_CERT_get_info() char ** Returns the version code string of the certificate.

For X.509 certificates, the version code is as follows:

Version number Version code
1 0x0
2 0x1
3 0x2


Copyright (c) 1999-2005 RSA Security Inc. All rights reserved. 072-001001-2100-001-000 - 2.1