diff --git a/kmip/core/enums.py b/kmip/core/enums.py index 7e82d7d..e4e9112 100644 --- a/kmip/core/enums.py +++ b/kmip/core/enums.py @@ -19,6 +19,22 @@ import enum +class AlternativeNameType(enum.Enum): + UNINTERPRETED_TEXT_STRING = 0x00000001 + URI = 0x00000002 + OBJECT_SERIAL_NUMBER = 0x00000003 + EMAIL_ADDRESS = 0x00000004 + DNS_NAME = 0x00000005 + X500_DISTINGUISHED_NAME = 0x00000006 + IP_ADDRESS = 0x00000007 + + +class AttestationType(enum.Enum): + TPM_QUOTE = 0x00000001 + TCG_INTEGRITY_REPORT = 0x00000002 + SAML_ASSERTION = 0x00000003 + + class AttributeType(enum.Enum): UNIQUE_IDENTIFIER = 'Unique Identifier' NAME = 'Name' @@ -59,6 +75,75 @@ class AttributeType(enum.Enum): CONTACT_INFORMATION = 'Contact Information' LAST_CHANGE_DATE = 'Last Change Date' CUSTOM_ATTRIBUTE = 'Custom Attribute' + ALTERNATIVE_NAME = 'Alternative Name' + KEY_VALUE_PRESENT = 'Key Value Present' + KEY_VALUE_LOCATION = 'Key Value Location' + ORIGINAL_CREATION_DATE = 'Original Creation Date' + + +class AuthenticationSuite(enum.Enum): + """ + The type of authentication suite used by KMIP clients and servers. + + The authentication suite defines the protocol versions and cipher suites + that should be used to secure KMIP client/server communications. An + authentication suite is one of two core components that make up a KMIP + client/server profile. For more information, see Section 3 of the KMIP + 1.1 profiles document. + """ + BASIC = 1 + TLS12 = 2 + + +class BatchErrorContinuationOption(enum.Enum): + CONTINUE = 0x00000001 + STOP = 0x00000002 + UNDO = 0x00000003 + + +class BlockCipherMode(enum.Enum): + CBC = 0x00000001 + ECB = 0x00000002 + PCBC = 0x00000003 + CFB = 0x00000004 + OFB = 0x00000005 + CTR = 0x00000006 + CMAC = 0x00000007 + CCM = 0x00000008 + GCM = 0x00000009 + CBC_MAC = 0x0000000A + XTS = 0x0000000B + AES_KEY_WRAP_PADDING = 0x0000000C + NIST_KEY_WRAP = 0x0000000D + X9_102_AESKW = 0x0000000E + X9_102_TDKW = 0x0000000F + X9_102_AKW1 = 0x00000010 + X9_102_AKW2 = 0x00000011 + + +class CancellationResult(enum.Enum): + CANCELED = 0x00000001 + UNABLE_TO_CANCEL = 0x00000002 + COMPLETED = 0x00000003 + FAILED = 0x00000004 + UNAVAILABLE = 0x00000005 + + +class CertificateRequestType(enum.Enum): + CRMF = 0x00000001 + PKCS10 = 0x00000002 + PEM = 0x00000003 + PGP = 0x00000004 # DEPRECATED + + +class CertificateTypeEnum(enum.Enum): + """ + The type of a Certificate Managed Object. + + For more information, see Section 2.2.1 of the KMIP 1.1 specification. + """ + X_509 = 0x00000001 + PGP = 0x00000002 class ConformanceClause(enum.Enum): @@ -83,36 +168,425 @@ class ConformanceClause(enum.Enum): STORAGE = 11 -class AuthenticationSuite(enum.Enum): - """ - The type of authentication suite used by KMIP clients and servers. - - The authentication suite defines the protocol versions and cipher suites - that should be used to secure KMIP client/server communications. An - authentication suite is one of two core components that make up a KMIP - client/server profile. For more information, see Section 3 of the KMIP - 1.1 profiles document. - """ - BASIC = 1 - TLS12 = 2 +class CredentialType(enum.Enum): + USERNAME_AND_PASSWORD = 0x00000001 + DEVICE = 0x00000002 + ATTESTATION = 0x00000003 -# 9.1.1.2 -class Types(enum.Enum): - DEFAULT = 0x00 - STRUCTURE = 0x01 - INTEGER = 0x02 - LONG_INTEGER = 0x03 - BIG_INTEGER = 0x04 - ENUMERATION = 0x05 - BOOLEAN = 0x06 - TEXT_STRING = 0x07 - BYTE_STRING = 0x08 - DATE_TIME = 0x09 - INTERVAL = 0x0A +class CryptographicAlgorithm(enum.Enum): + DES = 0x00000001 + TRIPLE_DES = 0x00000002 # '3DES' is invalid syntax + AES = 0x00000003 + RSA = 0x00000004 + DSA = 0x00000005 + ECDSA = 0x00000006 + HMAC_SHA1 = 0x00000007 + HMAC_SHA224 = 0x00000008 + HMAC_SHA256 = 0x00000009 + HMAC_SHA384 = 0x0000000A + HMAC_SHA512 = 0x0000000B + HMAC_MD5 = 0x0000000C + DH = 0x0000000D + ECDH = 0x0000000E + ECMQV = 0x0000000F + BLOWFISH = 0x00000010 + CAMELLIA = 0x00000011 + CAST5 = 0x00000012 + IDEA = 0x00000013 + MARS = 0x00000014 + RC2 = 0x00000015 + RC4 = 0x00000016 + RC5 = 0x00000017 + SKIPJACK = 0x00000018 + TWOFISH = 0x00000019 + EC = 0x0000001A + + +class CryptographicUsageMask(enum.Enum): + SIGN = 0x00000001 + VERIFY = 0x00000002 + ENCRYPT = 0x00000004 + DECRYPT = 0x00000008 + WRAP_KEY = 0x00000010 + UNWRAP_KEY = 0x00000020 + EXPORT = 0x00000040 + MAC_GENERATE = 0x00000080 + MAC_VERIFY = 0x00000100 + DERIVE_KEY = 0x00000200 + CONTENT_COMMITMENT = 0x00000400 + KEY_AGREEMENT = 0x00000800 + CERTIFICATE_SIGN = 0x00001000 + CRL_SIGN = 0x00002000 + GENERATE_CRYPTOGRAM = 0x00004000 + VALIDATE_CRYPTOGRAM = 0x00008000 + TRANSLATE_ENCRYPT = 0x00010000 + TRANSLATE_DECRYPT = 0x00020000 + TRANSLATE_WRAP = 0x00040000 + TRANSLATE_UNWRAP = 0x00080000 + + +class DerivationMethod(enum.Enum): + PBKDF2 = 0x00000001 + HASH = 0x00000002 + HMAC = 0x00000003 + ENCRYPT = 0x00000004 + NIST800_108_C = 0x00000005 + NIST800_108_F = 0x00000006 + NIST800_108_DPI = 0x00000007 + + +class DigitalSignatureAlgorithm(enum.Enum): + MD2_WITH_RSA_ENCRYPTION = 0x00000001 + MD5_WITH_RSA_ENCRYPTION = 0x00000002 + SHA1_WITH_RSA_ENCRYPTION = 0x00000003 + SHA224_WITH_RSA_ENCRYPTION = 0x00000004 + SHA256_WITH_RSA_ENCRYPTION = 0x00000005 + SHA384_WITH_RSA_ENCRYPTION = 0x00000006 + SHA512_WITH_RSA_ENCRYPTION = 0x00000007 + RSASSA_PSS = 0x00000008 + DSA_WITH_SHA1 = 0x00000009 + DSA_WITH_SHA224 = 0x0000000A + DSA_WITH_SHA256 = 0x0000000B + ECDSA_WITH_SHA1 = 0x0000000C + ECDSA_WITH_SHA224 = 0x0000000D + ECDSA_WITH_SHA256 = 0x0000000E + ECDSA_WITH_SHA384 = 0x0000000F + ECDSA_WITH_SHA512 = 0x00000010 + + +class EncodingOption(enum.Enum): + NO_ENCODING = 0x00000001 + TTLV_ENCODING = 0x00000002 + + +class HashingAlgorithm(enum.Enum): + MD2 = 0x00000001 + MD4 = 0x00000002 + MD5 = 0x00000003 + SHA_1 = 0x00000004 + SHA_224 = 0x00000005 + SHA_256 = 0x00000006 + SHA_384 = 0x00000007 + SHA_512 = 0x00000008 + RIPEMD_160 = 0x00000009 + TIGER = 0x0000000A + WHIRLPOOL = 0x0000000B + SHA_512_224 = 0x0000000C + SHA_512_256 = 0x0000000D + + +class KeyCompressionType(enum.Enum): + EC_PUBLIC_KEY_TYPE_UNCOMPRESSED = 0x00000001 + EC_PUBLIC_KEY_TYPE_X9_62_COMPRESSED_PRIME = 0x00000002 + EC_PUBLIC_KEY_TYPE_X9_62_COMPRESSED_CHAR2 = 0x00000003 + EC_PUBLIC_KEY_TYPE_X9_62_HYBRID = 0x00000004 + + +class KeyFormatType(enum.Enum): + RAW = 0x00000001 + OPAQUE = 0x00000002 + PKCS_1 = 0x00000003 + PKCS_8 = 0x00000004 + X_509 = 0x00000005 + EC_PRIVATE_KEY = 0x00000006 + TRANSPARENT_SYMMETRIC_KEY = 0x00000007 + TRANSPARENT_DSA_PRIVATE_KEY = 0x00000008 + TRANSPARENT_DSA_PUBLIC_KEY = 0x00000009 + TRANSPARENT_RSA_PRIVATE_KEY = 0x0000000A + TRANSPARENT_RSA_PUBLIC_KEY = 0x0000000B + TRANSPARENT_DH_PRIVATE_KEY = 0x0000000C + TRANSPARENT_DH_PUBLIC_KEY = 0x0000000D + TRANSPARENT_ECDSA_PRIVATE_KEY = 0x0000000E + TRANSPARENT_ECDSA_PUBLIC_KEY = 0x0000000F + TRANSPARENT_ECDH_PRIVATE_KEY = 0x00000010 + TRANSPARENT_ECDH_PUBLIC_KEY = 0x00000011 + TRANSPARENT_ECMQV_PRIVATE_KEY = 0x00000012 + TRANSPARENT_ECMQV_PUBLIC_KEY = 0x00000013 + + +class KeyRoleType(enum.Enum): + BDK = 0x00000001 + CVK = 0x00000002 + DEK = 0x00000003 + MKAC = 0x00000004 + MKSMC = 0x00000005 + MKSMI = 0x00000006 + MKDAC = 0x00000007 + MKDN = 0x00000008 + MKCP = 0x00000009 + MKOTH = 0x0000000A + KEK = 0x0000000B + MAC_16609 = 0x0000000C + MAC_97971 = 0x0000000D + MAC_97972 = 0x0000000E + MAC_97973 = 0x0000000F + MAC_97974 = 0x00000010 + MAC_97975 = 0x00000011 + ZPK = 0x00000012 + PVKIBM = 0x00000013 + PVKPVV = 0x00000014 + PVKOTH = 0x00000015 + + +class KeyValueLocationType(enum.Enum): + UNINTERPRETED_TEXT_STRING = 0x00000001 + URI = 0x00000002 + + +class LinkType(enum.Enum): + CERTIFICATE_LINK = 0x00000101 + PUBLIC_KEY_LINK = 0x00000102 + PRIVATE_KEY_LINK = 0x00000103 + DERIVATION_BASE_OBJECT_LINK = 0x00000104 + DERIVED_KEY_LINK = 0x00000105 + REPLACEMENT_OBJECT_LINK = 0x00000106 + REPLACED_OBJECT_LINK = 0x00000107 + PARENT_LINK = 0x00000108 + CHILD_LINK = 0x00000109 + PREVIOUS_LINK = 0x0000010A + NEXT_LINK = 0x0000010B + + +class NameType(enum.Enum): + UNINTERPRETED_TEXT_STRING = 0x00000001 + URI = 0x00000002 + + +class ObjectGroupMember(enum.Enum): + GROUP_MEMBER_FRESH = 0x00000001 + GROUP_MEMBER_DEFAULT = 0x00000002 + + +class ObjectType(enum.Enum): + CERTIFICATE = 0x00000001 + SYMMETRIC_KEY = 0x00000002 + PUBLIC_KEY = 0x00000003 + PRIVATE_KEY = 0x00000004 + SPLIT_KEY = 0x00000005 + TEMPLATE = 0x00000006 + SECRET_DATA = 0x00000007 + OPAQUE_DATA = 0x00000008 + PGP_KEY = 0x00000009 + + +class OpaqueDataType(enum.Enum): + NONE = 0x80000000 # Not defined by the standard, but we need something. + # The standard does say that values starting 0x8xxxxxx + # are considered extensions + + +class Operation(enum.Enum): + CREATE = 0x00000001 + CREATE_KEY_PAIR = 0x00000002 + REGISTER = 0x00000003 + REKEY = 0x00000004 + DERIVE_KEY = 0x00000005 + CERTIFY = 0x00000006 + RECERTIFY = 0x00000007 + LOCATE = 0x00000008 + CHECK = 0x00000009 + GET = 0x0000000A + GET_ATTRIBUTES = 0x0000000B + GET_ATTRIBUTE_LIST = 0x0000000C + ADD_ATTRIBUTE = 0x0000000D + MODIFY_ATTRIBUTE = 0x0000000E + DELETE_ATTRIBUTE = 0x0000000F + OBTAIN_LEASE = 0x00000010 + GET_USAGE_ALLOCATION = 0x00000011 + ACTIVATE = 0x00000012 + REVOKE = 0x00000013 + DESTROY = 0x00000014 + ARCHIVE = 0x00000015 + RECOVER = 0x00000016 + VALIDATE = 0x00000017 + QUERY = 0x00000018 + CANCEL = 0x00000019 + POLL = 0x0000001A + NOTIFY = 0x0000001B + PUT = 0x0000001C + REKEY_KEY_PAIR = 0x0000001D + DISCOVER_VERSIONS = 0x0000001E + ENCRYPT = 0x0000001F + DECRYPT = 0x00000020 + SIGN = 0x00000021 + SIGNATURE_VERIFY = 0x00000022 + MAC = 0x00000023 + MAC_VERIFY = 0x00000024 + RNG_RETRIEVE = 0x00000025 + RNG_SEED = 0x00000026 + HASH = 0x00000027 + CREATE_SPLIT_KEY = 0x00000028 + JOIN_SPLIT_KEY = 0x00000029 + + +class PaddingMethod(enum.Enum): + NONE = 0x00000001 + OAEP = 0x00000002 + PKCS5 = 0x00000003 + SSL3 = 0x00000004 + ZEROS = 0x00000005 + ANSI_X9_23 = 0x00000006 + ISO_10126 = 0x00000007 + PKCS1_V_1_5 = 0x00000008 + X9_31 = 0x00000009 + PSS = 0x0000000A + + +class PutFunction(enum.Enum): + NEW = 0x00000001 + REPLACE = 0x00000002 + + +class QueryFunction(enum.Enum): + QUERY_OPERATIONS = 0x00000001 + QUERY_OBJECTS = 0x00000002 + QUERY_SERVER_INFORMATION = 0x00000003 + QUERY_APPLICATION_NAMESPACES = 0x00000004 + QUERY_EXTENSION_LIST = 0x00000005 + QUERY_EXTENSION_MAP = 0x00000006 + QUERY_ATTESTATION_TYPES = 0x00000007 + + +class RecommendedCurve(enum.Enum): + P_192 = 0x00000001 + K_163 = 0x00000002 + B_163 = 0x00000003 + P_224 = 0x00000004 + K_233 = 0x00000005 + B_233 = 0x00000006 + P_256 = 0x00000007 + K_283 = 0x00000008 + B_283 = 0x00000009 + P_384 = 0x0000000A + K_409 = 0x0000000B + B_409 = 0x0000000C + P_521 = 0x0000000D + K_571 = 0x0000000E + B_571 = 0x0000000F + SECP112R1 = 0x00000010 + SECP112R2 = 0x00000011 + SECP128R1 = 0x00000012 + SECP128R2 = 0x00000013 + SECP160K1 = 0x00000014 + SECP160R1 = 0x00000015 + SECP160R2 = 0x00000016 + SECP191K1 = 0x00000017 + SECP224K1 = 0x00000018 + SECP256K1 = 0x00000019 + SECT113R1 = 0x0000001A + SECT113R2 = 0x0000001B + SECT131R1 = 0x0000001C + SECT131R2 = 0x0000001D + SECT163R1 = 0x0000001E + SECT193R1 = 0x0000001F + SECT193R2 = 0x00000020 + SECT239K1 = 0x00000021 + ANSIX9P192V2 = 0x00000022 + ANSIX9P192V3 = 0x00000023 + ANSIX9P239V1 = 0x00000024 + ANSIX9P239V2 = 0x00000025 + ANSIX9P239V3 = 0x00000026 + ANSIX9C2PNB163V1 = 0x00000027 + ANSIX9C2PNB163V2 = 0x00000028 + ANSIX9C2PNB163V3 = 0x00000029 + ANSIX9C2PNB176V1 = 0x0000002A + ANSIX9C2TNB191V1 = 0x0000002B + ANSIX9C2TNB191V2 = 0x0000002C + ANSIX9C2TNB191V3 = 0x0000002D + ANSIX9C2PNB208W1 = 0x0000002E + ANSIX9C2TNB239V1 = 0x0000002F + ANSIX9C2TNB239V2 = 0x00000030 + ANSIX9C2TNB239V3 = 0x00000031 + ANSIX9C2PNB272W1 = 0x00000032 + ANSIX9C2PNB304W1 = 0x00000033 + ANSIX9C2TNB359V1 = 0x00000034 + ANSIX9C2PNB368W1 = 0x00000035 + ANSIX9C2TNB431R1 = 0x00000036 + BRAINPOOLP160R1 = 0x00000037 + BRAINPOOLP160T1 = 0x00000038 + BRAINPOOLP192R1 = 0x00000039 + BRAINPOOLP192T1 = 0x0000003A + BRAINPOOLP224R1 = 0x0000003B + BRAINPOOLP224T1 = 0x0000003C + BRAINPOOLP256R1 = 0x0000003D + BRAINPOOLP256T1 = 0x0000003E + BRAINPOOLP320R1 = 0x0000003F + BRAINPOOLP320T1 = 0x00000040 + BRAINPOOLP384R1 = 0x00000041 + BRAINPOOLP384T1 = 0x00000042 + BRAINPOOLP512R1 = 0x00000043 + BRAINPOOLP512T1 = 0x00000044 + + +class ResultReason(enum.Enum): + ITEM_NOT_FOUND = 0x00000001 + RESPONSE_TOO_LARGE = 0x00000002 + AUTHENTICATION_NOT_SUCCESSFUL = 0x00000003 + INVALID_MESSAGE = 0x00000004 + OPERATION_NOT_SUPPORTED = 0x00000005 + MISSING_DATA = 0x00000006 + INVALID_FIELD = 0x00000007 + FEATURE_NOT_SUPPORTED = 0x00000008 + OPERATION_CANCELED_BY_REQUESTER = 0x00000009 + CRYPTOGRAPHIC_FAILURE = 0x0000000A + ILLEGAL_OPERATION = 0x0000000B + PERMISSION_DENIED = 0x0000000C + OBJECT_ARCHIVED = 0x0000000D + INDEX_OUT_OF_BOUNDS = 0x0000000E + APPLICATION_NAMESPACE_NOT_SUPPORTED = 0x0000000F + KEY_FORMAT_TYPE_NOT_SUPPORTED = 0x00000010 + KEY_COMPRESSION_TYPE_NOT_SUPPORTED = 0x00000011 + ENCODING_OPTION_ERROR = 0x00000012 + KEY_VALUE_NOT_PRESENT = 0x00000013 + ATTESTATION_REQUIRED = 0x00000014 + ATTESTATION_FAILED = 0x00000015 + GENERAL_FAILURE = 0x00000100 + + +class ResultStatus(enum.Enum): + SUCCESS = 0x00000000 + OPERATION_FAILED = 0x00000001 + OPERATION_PENDING = 0x00000002 + OPERATION_UNDONE = 0x00000003 + + +class RevocationReasonCode(enum.Enum): + UNSPECIFIED = 0x00000001 + KEY_COMPROMISE = 0x00000002 + CA_COMPROMISE = 0x00000003 + AFFILIATION_CHANGED = 0x00000004 + SUPERSEDED = 0x00000005 + CESSATION_OF_OPERATION = 0x00000006 + PRIVILEGE_WITHDRAWN = 0x00000007 + + +class SecretDataType(enum.Enum): + PASSWORD = 0x00000001 + SEED = 0x00000002 + + +class SplitKeyMethod(enum.Enum): + XOR = 0x00000001 + POLYNOMIAL_SHARING_GF_2_16 = 0x00000002 + POLYNOMIAL_SHARING_PRIME_FIELD = 0x00000003 + POLYNOMIAL_SHARING_GF_2_8 = 0x00000004 + + +class State(enum.Enum): + PRE_ACTIVE = 0x00000001 + ACTIVE = 0x00000002 + DEACTIVATED = 0x00000003 + COMPROMISED = 0x00000004 + DESTROYED = 0x00000005 + DESTROYED_COMPROMISED = 0x00000006 + + +class StorageStatus(enum.Enum): + ONLINE_STORAGE = 0x00000001 + ARCHIVAL_STORAGE = 0x00000002 -# 9.1.3.1 class Tags(enum.Enum): DEFAULT = 0x420000 ACTIVATION_DATE = 0x420001 @@ -300,341 +774,64 @@ class Tags(enum.Enum): X_509_CERTIFICATE_IDENTIFER = 0x4200B5 X_509_CERTIFICATE_ISSUER = 0x4200B6 X_509_CERTIFICATE_SUBJECT = 0x4200B7 + KEY_VALUE_LOCATION = 0x4200B8 + KEY_VALUE_LOCATION_VALUE = 0x4200B9 + KEY_VALUE_LOCATION_TYPE = 0x4200BA + KEY_VALUE_PRESENT = 0x4200BB + ORIGINAL_CREATION_DATE = 0x4200BC + PGP_KEY = 0x4200BD + PGP_KEY_VERSION = 0x4200BE + ALTERNATIVE_NAME = 0x4200BF + ALTERNATIVE_NAME_VALUE = 0x4200C0 + ALTERNATIVE_NAME_TYPE = 0x4200C1 + DATA = 0x4200C2 + SIGNATURE_DATA = 0x4200C3 + DATA_LENGTH = 0x4200C4 + RANDOM_IV = 0x4200C5 + MAC_DATA = 0x4200C6 + ATTESTATION_TYPE = 0x4200C7 + NONCE = 0x4200C8 + NONCE_ID = 0x4200C9 + NONCE_VALUE = 0x4200CA + ATTESTATION_MEASUREMENT = 0x4200CB + ATTESTATION_ASSERTION = 0x4200CC + IV_LENGTH = 0x4200CD + TAG_LENGTH = 0x4200CE + FIXED_FIELD_LENGTH = 0x4200CF + COUNTER_LENGTH = 0x4200D0 + INITIAL_COUNTER_VALUE = 0x4200D1 + INVOCATION_FIELD_LENGTH = 0x4200D2 + ATTESTATION_CAPABLE_INDICATOR = 0x4200D3 -# 9.1.3.2.1 -class CredentialType(enum.Enum): - USERNAME_AND_PASSWORD = 0x00000001 - DEVICE = 0x00000002 +class Types(enum.Enum): + DEFAULT = 0x00 + STRUCTURE = 0x01 + INTEGER = 0x02 + LONG_INTEGER = 0x03 + BIG_INTEGER = 0x04 + ENUMERATION = 0x05 + BOOLEAN = 0x06 + TEXT_STRING = 0x07 + BYTE_STRING = 0x08 + DATE_TIME = 0x09 + INTERVAL = 0x0A -# 9.1.3.2.2 -class KeyCompressionType(enum.Enum): - EC_PUBLIC_KEY_TYPE_UNCOMPRESSED = 0x00000001 - EC_PUBLIC_KEY_TYPE_X9_62_COMPRESSED_PRIME = 0x00000002 - EC_PUBLIC_KEY_TYPE_X9_62_COMPRESSED_CHAR2 = 0x00000003 - EC_PUBLIC_KEY_TYPE_X9_62_HYBRID = 0x00000004 +class UsageLimitsUnit(enum.Enum): + BYTE = 0x00000001 + OBJECT = 0x00000002 -# 9.1.3.2.3 -class KeyFormatType(enum.Enum): - RAW = 0x00000001 - OPAQUE = 0x00000002 - PKCS_1 = 0x00000003 - PKCS_8 = 0x00000004 - X_509 = 0x00000005 - EC_PRIVATE_KEY = 0x00000006 - TRANSPARENT_SYMMETRIC_KEY = 0x00000007 - TRANSPARENT_DSA_PRIVATE_KEY = 0x00000008 - TRANSPARENT_DSA_PUBLIC_KEY = 0x00000009 - TRANSPARENT_RSA_PRIVATE_KEY = 0x0000000A - TRANSPARENT_RSA_PUBLIC_KEY = 0x0000000B - TRANSPARENT_DH_PRIVATE_KEY = 0x0000000C - TRANSPARENT_DH_PUBLIC_KEY = 0x0000000D - TRANSPARENT_ECDSA_PRIVATE_KEY = 0x0000000E - TRANSPARENT_ECDSA_PUBLIC_KEY = 0x0000000F - TRANSPARENT_ECDH_PRIVATE_KEY = 0x00000010 - TRANSPARENT_ECDH_PUBLIC_KEY = 0x00000011 - TRANSPARENT_ECMQV_PRIVATE_KEY = 0x00000012 - TRANSPARENT_ECMQV_PUBLIC_KEY = 0x00000013 +class ValidityIndicator(enum.Enum): + VALID = 0x00000001 + INVALID = 0x00000002 + UNKNOWN = 0x00000003 -# 9.1.3.2.4 class WrappingMethod(enum.Enum): ENCRYPT = 0x00000001 MAC_SIGN = 0x00000002 ENCRYPT_THEN_MAC_SIGN = 0x00000003 MAC_SIGN_THEN_ENCRYPT = 0x00000004 TR_31 = 0x00000005 - - -# 9.1.3.2.6 -class CertificateTypeEnum(enum.Enum): - """ - The type of a Certificate Managed Object. - - For more information, see Section 2.2.1 of the KMIP 1.1 specification. - """ - X_509 = 0x00000001 - PGP = 0x00000002 - - -# 9.1.3.2.8 -class SplitKeyMethod(enum.Enum): - XOR = 0x00000001 - POLYNOMIAL_SHARING_GF = 0x00000002 - POLYNOMIAL_SHARING_PRIME_FIELD = 0x00000003 - - -# 9.1.3.2.9 -class SecretDataType(enum.Enum): - PASSWORD = 0x00000001 - SEED = 0x00000002 - -# 9.1.3.2.10 -class OpaqueDataType(enum.Enum): - NONE = 0x80000000 # Not defined by the standard, but we need something. - # The standard does say that values starting 0x8xxxxxx - # are considered extensions - - -# 9.1.3.2.11 -class NameType(enum.Enum): - UNINTERPRETED_TEXT_STRING = 0x00000001 - URI = 0x00000002 - - -# 9.1.3.2.12 -class ObjectType(enum.Enum): - CERTIFICATE = 0x00000001 - SYMMETRIC_KEY = 0x00000002 - PUBLIC_KEY = 0x00000003 - PRIVATE_KEY = 0x00000004 - SPLIT_KEY = 0x00000005 - TEMPLATE = 0x00000006 - SECRET_DATA = 0x00000007 - OPAQUE_DATA = 0x00000008 - - -# 9.1.3.2.13 -class CryptographicAlgorithm(enum.Enum): - DES = 0x00000001 - TRIPLE_DES = 0x00000002 # '3DES' is invalid syntax - AES = 0x00000003 - RSA = 0x00000004 - DSA = 0x00000005 - ECDSA = 0x00000006 - HMAC_SHA1 = 0x00000007 - HMAC_SHA224 = 0x00000008 - HMAC_SHA256 = 0x00000009 - HMAC_SHA384 = 0x0000000A - HMAC_SHA512 = 0x0000000B - HMAC_MD5 = 0x0000000C - DH = 0x0000000D - ECDH = 0x0000000E - ECMQV = 0x0000000F - BLOWFISH = 0x00000010 - CAMELLIA = 0x00000011 - CAST5 = 0x00000012 - IDEA = 0x00000013 - MARS = 0x00000014 - RC2 = 0x00000015 - RC4 = 0x00000016 - RC5 = 0x00000017 - SKIPJACK = 0x00000018 - TWOFISH = 0x00000019 - - -# 9.1.3.2.14 -class BlockCipherMode(enum.Enum): - CBC = 0x00000001 - ECB = 0x00000002 - PCBC = 0x00000003 - CFB = 0x00000004 - OFB = 0x00000005 - CTR = 0x00000006 - CMAC = 0x00000007 - CCM = 0x00000008 - GCM = 0x00000009 - CBC_MAC = 0x0000000A - XTS = 0x0000000B - AES_KEY_WRAP_PADDING = 0x0000000C - NIST_KEY_WRAP = 0x0000000D - X9_102_AESKW = 0x0000000E - X9_102_TDKW = 0x0000000F - X9_102_AKW1 = 0x00000010 - X9_102_AKW2 = 0x00000011 - - -# 9.1.3.2.15 -class PaddingMethod(enum.Enum): - NONE = 0x00000001 - OAEP = 0x00000002 - PKCS5 = 0x00000003 - SSL3 = 0x00000004 - ZEROS = 0x00000005 - ANSI_X9_23 = 0x00000006 - ISO_10126 = 0x00000007 - PKCS1_V_1_5 = 0x00000008 - X9_31 = 0x00000009 - PSS = 0x0000000A - - -# 9.1.3.2.16 -class HashingAlgorithm(enum.Enum): - MD2 = 0x00000001 - MD4 = 0x00000002 - MD5 = 0x00000003 - SHA_1 = 0x00000004 - SHA_224 = 0x00000005 - SHA_256 = 0x00000006 - SHA_384 = 0x00000007 - SHA_512 = 0x00000008 - RIPEMD_160 = 0x00000009 - TIGER = 0x0000000A - WHIRLPOOL = 0x0000000B - - -# 9.1.3.2.17 -class KeyRoleType(enum.Enum): - BDK = 0x00000001 - CVK = 0x00000002 - DEK = 0x00000003 - MKAC = 0x00000004 - MKSMC = 0x00000005 - MKSMI = 0x00000006 - MKDAC = 0x00000007 - MKDN = 0x00000008 - MKCP = 0x00000009 - MKOTH = 0x0000000A - KEK = 0x0000000B - MAC_16609 = 0x0000000C - MAC_97971 = 0x0000000D - MAC_97972 = 0x0000000E - MAC_97973 = 0x0000000F - MAC_97974 = 0x00000010 - MAC_97975 = 0x00000011 - ZPK = 0x00000012 - PVKIBM = 0x00000013 - PVKPVV = 0x00000014 - PVKOTH = 0x00000015 - - -class State(enum.Enum): - PRE_ACTIVE = 0x00000001 - ACTIVE = 0x00000002 - DEACTIVATED = 0x00000003 - COMPROMISED = 0x00000004 - DESTROYED = 0x00000005 - DESTROYED_COMPROMISED = 0x00000006 - - -# 9.1.3.2.24 -class QueryFunction(enum.Enum): - QUERY_OPERATIONS = 0x00000001 - QUERY_OBJECTS = 0x00000002 - QUERY_SERVER_INFORMATION = 0x00000003 - QUERY_APPLICATION_NAMESPACES = 0x00000004 - QUERY_EXTENSION_LIST = 0x00000005 - QUERY_EXTENSION_MAP = 0x00000006 - -# 9.1.3.2.27 -class Operation(enum.Enum): - CREATE = 0x00000001 - CREATE_KEY_PAIR = 0x00000002 - REGISTER = 0x00000003 - REKEY = 0x00000004 - DERIVE_KEY = 0x00000005 - CERTIFY = 0x00000006 - RECERTIFY = 0x00000007 - LOCATE = 0x00000008 - CHECK = 0x00000009 - GET = 0x0000000A - GET_ATTRIBUTES = 0x0000000B - GET_ATTRIBUTE_LIST = 0x0000000C - ADD_ATTRIBUTE = 0x0000000D - MODIFY_ATTRIBUTE = 0x0000000E - DELETE_ATTRIBUTE = 0x0000000F - OBTAIN_LEASE = 0x00000010 - GET_USAGE_ALLOCATION = 0x00000011 - ACTIVATE = 0x00000012 - REVOKE = 0x00000013 - DESTROY = 0x00000014 - ARCHIVE = 0x00000015 - RECOVER = 0x00000016 - VALIDATE = 0x00000017 - QUERY = 0x00000018 - CANCEL = 0x00000019 - POLL = 0x0000001A - NOTIFY = 0x0000001B - PUT = 0x0000001C - REKEY_KEY_PAIR = 0x0000001D - DISCOVER_VERSIONS = 0x0000001E - - -# 9.1.3.2.28 -class ResultStatus(enum.Enum): - SUCCESS = 0x00000000 - OPERATION_FAILED = 0x00000001 - OPERATION_PENDING = 0x00000002 - OPERATION_UNDONE = 0x00000003 - - -# 9.1.3.2.29 -class ResultReason(enum.Enum): - ITEM_NOT_FOUND = 0x00000001 - RESPONSE_TOO_LARGE = 0x00000002 - AUTHENTICATION_NOT_SUCCESSFUL = 0x00000003 - INVALID_MESSAGE = 0x00000004 - OPERATION_NOT_SUPPORTED = 0x00000005 - MISSING_DATA = 0x00000006 - INVALID_FIELD = 0x00000007 - FEATURE_NOT_SUPPORTED = 0x00000008 - OPERATION_CANCELED_BY_REQUESTER = 0x00000009 - CRYPTOGRAPHIC_FAILURE = 0x0000000A - ILLEGAL_OPERATION = 0x0000000B - PERMISSION_DENIED = 0x0000000C - OBJECT_ARCHIVED = 0x0000000D - INDEX_OUT_OF_BOUNDS = 0x0000000E - APPLICATION_NAMESPACE_NOT_SUPPORTED = 0x0000000F - KEY_FORMAT_TYPE_NOT_SUPPORTED = 0x00000010 - KEY_COMPRESSION_TYPE_NOT_SUPPORTED = 0x00000011 - ENCODING_OPTION_ERROR = 0x00000012 - GENERAL_FAILURE = 0x00000100 - - -# 9.1.3.2.30 -class BatchErrorContinuationOption(enum.Enum): - CONTINUE = 0x00000001 - STOP = 0x00000002 - UNDO = 0x00000003 - - -# 9.1.3.2.32 -class EncodingOption(enum.Enum): - NO_ENCODING = 0x00000001 - TTLV_ENCODING = 0x00000002 - - -# 9.1.3.3 -# 9.1.3.3.1 -class CryptographicUsageMask(enum.Enum): - SIGN = 0x00000001 - VERIFY = 0x00000002 - ENCRYPT = 0x00000004 - DECRYPT = 0x00000008 - WRAP_KEY = 0x00000010 - UNWRAP_KEY = 0x00000020 - EXPORT = 0x00000040 - MAC_GENERATE = 0x00000080 - MAC_VERIFY = 0x00000100 - DERIVE_KEY = 0x00000200 - CONTENT_COMMITMENT = 0x00000400 - KEY_AGREEMENT = 0x00000800 - CERTIFICATE_SIGN = 0x00001000 - CRL_SIGN = 0x00002000 - GENERATE_CRYPTOGRAM = 0x00004000 - VALIDATE_CRYPTOGRAM = 0x00008000 - TRANSLATE_ENCRYPT = 0x00010000 - TRANSLATE_DECRYPT = 0x00020000 - TRANSLATE_WRAP = 0x00040000 - TRANSLATE_UNWRAP = 0x00080000 - -# 9.1.3.2.33 -class ObjectGroupMember(enum.Enum): - GROUP_MEMBER_FRESH = 0x00000001 - GROUP_MEMBER_DEFAULT = 0x00000002 - -# 9.1.3.3.2 -class StorageStatusMask(enum.Enum): - ONLINE_STORAGE = 0x00000001 - ARCHIVAL_STORAGE = 0x00000002 - -class RevocationReasonCode(enum.Enum): - UNSPECIFIED = 0x00000001 - KEY_COMPROMISE = 0x00000002 - CA_COMPROMISE = 0x00000003 - AFFILIATION_CHANGED = 0x00000004 - SUPERSEDED = 0x00000005 - CESSATION_OF_OPERATION = 0x00000006 - PRIVILEGE_WITHDRAWN = 0x00000007