|
CXI
|
Modules | |
| Algorithm Specifier | |
Macros | |
| #define | CXI_PROP_KEY_GROUP 1 |
| Key group name (default: empty) [array<byte>]. | |
| #define | CXI_PROP_KEY_NAME 2 |
| Key name (default: empty) [array<byte>]. | |
| #define | CXI_PROP_KEY_ALGO 3 |
| Algorithm specifier, see Algorithm Specifier [int]. | |
| #define | CXI_PROP_KEY_SIZE 4 |
| Key size in bits [int]. | |
| #define | CXI_PROP_KEY_EXPORT 5 |
| Export permission (bit field), see Export Policy Specifier [int]. | |
| #define | CXI_PROP_KEY_USAGE 6 |
| Key usage specifier (bit field), see Usage Specifier [int]. | |
| #define | CXI_PROP_KEY_MECHS 7 |
| Mechanisms allowed to be used with this key, see Mode Parameter, Chaining Modes, Padding Modes, Hash Algorithms, Key Derivation Functions [array<int>]. | |
| #define | CXI_PROP_KEY_SPEC 8 |
| Additional key specifier [int]. | |
| #define | CXI_PROP_KEY_LABEL 9 |
| Label (default: empty) [array<byte>]. | |
| #define | CXI_PROP_KEY_BLEN 10 |
| Block length of algorithm in bytes (virtual) [int]. | |
| #define | CXI_PROP_KEY_UNAME 11 |
| Unique key name / database index (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_TYPE 12 |
| Key type, see Key Types [int]. | |
| #define | CXI_PROP_KEY_DATE_GEN 13 |
| Generation date / start of validity period (default: empty) [yymmddhhmmss]. | |
| #define | CXI_PROP_KEY_CERT 14 |
| Certificate associated with the key [array<byte>]. | |
| #define | CXI_PROP_KEY_DATE_EXP 15 |
| Expiration date / end of validity period (default: empty) [yymmddhhmmss]. | |
| #define | CXI_PROP_KEY_RSA_MOD 20 |
| RSA modulus (virtual, can't be set) (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_RSA_EXP 21 |
| RSA public exponent (default: '010001') (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_P 25 |
| DSA domain parameter: prime P [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_Q 26 |
| DSA domain parameter: prime Q [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_G 27 |
| DSA domain parameter: generator [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_PUBKEY 28 |
| DSA public key (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_EC_CURVE 30 |
| Elliptic curve name (string) or domain parameter (OID or ASN.1 definition) [array<byte>]. | |
| #define | CXI_PROP_KEY_EC_PUBKEY 31 |
| Elliptic curve public key (virtual) [array<byte>]. | |
| #define | CXI_PROP_FIPS_KEY_USAGE_PADDING 109 |
| Key usage / padding property (bit field) for FIPS, see Usage / Padding Specifier for FIPS [int]. | |
| #define | CXI_PROP_CC_KEY_USAGE 112 |
| Key usage property (bit field) for CC, see Usage Specifier for CC [int]. | |
| #define | CXI_PROP_KEY_GROUP 1 |
| Key group name (default: empty) [array<byte>]. | |
| #define | CXI_PROP_KEY_NAME 2 |
| Key name (default: empty) [array<byte>]. | |
| #define | CXI_PROP_KEY_ALGO 3 |
| Algorithm specifier, see Algorithm Specifier [int]. | |
| #define | CXI_PROP_KEY_SIZE 4 |
| Key size in bits [int]. | |
| #define | CXI_PROP_KEY_EXPORT 5 |
| Export permission (bit field), see Export Policy Specifier [int]. | |
| #define | CXI_PROP_KEY_USAGE 6 |
| Key usage specifier (bit field), see Usage Specifier [int]. | |
| #define | CXI_PROP_KEY_MECHS 7 |
| Mechanisms allowed to be used with this key, see Mode Parameter, Chaining Modes, Padding Modes, Hash Algorithms, Key Derivation Functions [array<int>]. | |
| #define | CXI_PROP_KEY_SPEC 8 |
| Additional key specifier [int]. | |
| #define | CXI_PROP_KEY_LABEL 9 |
| Label (default: empty) [array<byte>]. | |
| #define | CXI_PROP_KEY_BLEN 10 |
| Block length of algorithm in bytes (virtual) [int]. | |
| #define | CXI_PROP_KEY_UNAME 11 |
| Unique key name / database index (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_TYPE 12 |
| Key type, see Key Types [int]. | |
| #define | CXI_PROP_KEY_DATE_GEN 13 |
| Generation date / start of validity period (default: empty) [yymmddhhmmss]. | |
| #define | CXI_PROP_KEY_CERT 14 |
| Certificate associated with the key [array<byte>]. | |
| #define | CXI_PROP_KEY_DATE_EXP 15 |
| Expiration date / end of validity period (default: empty) [yymmddhhmmss]. | |
| #define | CXI_PROP_KEY_RSA_MOD 20 |
| RSA modulus (virtual, can't be set) (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_RSA_EXP 21 |
| RSA public exponent (default: '010001') (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_P 25 |
| DSA domain parameter: prime P [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_Q 26 |
| DSA domain parameter: prime Q [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_G 27 |
| DSA domain parameter: generator [array<byte>]. | |
| #define | CXI_PROP_KEY_DSA_PUBKEY 28 |
| DSA public key (virtual) [array<byte>]. | |
| #define | CXI_PROP_KEY_EC_CURVE 30 |
| Elliptic curve name (string) or domain parameter (OID or ASN.1 definition) [array<byte>]. | |
| #define | CXI_PROP_KEY_EC_PUBKEY 31 |
| Elliptic curve public key (virtual) [array<byte>]. | |
| #define | CXI_PROP_FIPS_KEY_USAGE_PADDING 109 |
| Key usage / padding property (bit field) for FIPS, see Usage / Padding Specifier for FIPS [int]. | |
| #define | CXI_PROP_CC_KEY_USAGE 112 |
| Key usage property (bit field) for CC, see Usage Specifier for CC [int]. | |
Key Properties are used to add additional information to a key. Some key properties are mandatory (e.g. algorithm) and have to be set on creation of the key object (generation or import), other properties are optionally (e.g. expiration date) and may be left unset.
Some properties are allowed to be modified later (e.g. label), other properties are completely read-only on certain operations (e.g. algorithm).
Some properties, the so called 'virtual' properties, are not stored with the key object and evaluated on demand (e.g. block length, RSA modulus).