1/* 2 * {- join("\n * ", @autowarntext) -} 3 * 4 * Copyright 2019-2025 The OpenSSL Project Authors. All Rights Reserved. 5 * 6 * Licensed under the Apache License 2.0 (the "License"). You may not use 7 * this file except in compliance with the License. You can obtain a copy 8 * in the file LICENSE in the source distribution or at 9 * https://www.openssl.org/source/license.html 10 */ 11{- 12use OpenSSL::paramnames qw(generate_public_macros); 13-} 14 15#ifndef OPENSSL_CORE_NAMES_H 16# define OPENSSL_CORE_NAMES_H 17# pragma once 18 19# ifdef __cplusplus 20extern "C" { 21# endif 22 23/* OSSL_CIPHER_PARAM_CTS_MODE Values */ 24# define OSSL_CIPHER_CTS_MODE_CS1 "CS1" 25# define OSSL_CIPHER_CTS_MODE_CS2 "CS2" 26# define OSSL_CIPHER_CTS_MODE_CS3 "CS3" 27 28/* Known CIPHER names (not a complete list) */ 29# define OSSL_CIPHER_NAME_AES_128_GCM_SIV "AES-128-GCM-SIV" 30# define OSSL_CIPHER_NAME_AES_192_GCM_SIV "AES-192-GCM-SIV" 31# define OSSL_CIPHER_NAME_AES_256_GCM_SIV "AES-256-GCM-SIV" 32 33/* Known DIGEST names (not a complete list) */ 34# define OSSL_DIGEST_NAME_MD5 "MD5" 35# define OSSL_DIGEST_NAME_MD5_SHA1 "MD5-SHA1" 36# define OSSL_DIGEST_NAME_SHA1 "SHA1" 37# define OSSL_DIGEST_NAME_SHA2_224 "SHA2-224" 38# define OSSL_DIGEST_NAME_SHA2_256 "SHA2-256" 39# define OSSL_DIGEST_NAME_SHA2_256_192 "SHA2-256/192" 40# define OSSL_DIGEST_NAME_SHA2_384 "SHA2-384" 41# define OSSL_DIGEST_NAME_SHA2_512 "SHA2-512" 42# define OSSL_DIGEST_NAME_SHA2_512_224 "SHA2-512/224" 43# define OSSL_DIGEST_NAME_SHA2_512_256 "SHA2-512/256" 44# define OSSL_DIGEST_NAME_MD2 "MD2" 45# define OSSL_DIGEST_NAME_MD4 "MD4" 46# define OSSL_DIGEST_NAME_MDC2 "MDC2" 47# define OSSL_DIGEST_NAME_RIPEMD160 "RIPEMD160" 48# define OSSL_DIGEST_NAME_SHA3_224 "SHA3-224" 49# define OSSL_DIGEST_NAME_SHA3_256 "SHA3-256" 50# define OSSL_DIGEST_NAME_SHA3_384 "SHA3-384" 51# define OSSL_DIGEST_NAME_SHA3_512 "SHA3-512" 52# define OSSL_DIGEST_NAME_KECCAK_KMAC128 "KECCAK-KMAC-128" 53# define OSSL_DIGEST_NAME_KECCAK_KMAC256 "KECCAK-KMAC-256" 54# define OSSL_DIGEST_NAME_SM3 "SM3" 55 56/* Known MAC names */ 57# define OSSL_MAC_NAME_BLAKE2BMAC "BLAKE2BMAC" 58# define OSSL_MAC_NAME_BLAKE2SMAC "BLAKE2SMAC" 59# define OSSL_MAC_NAME_CMAC "CMAC" 60# define OSSL_MAC_NAME_GMAC "GMAC" 61# define OSSL_MAC_NAME_HMAC "HMAC" 62# define OSSL_MAC_NAME_KMAC128 "KMAC128" 63# define OSSL_MAC_NAME_KMAC256 "KMAC256" 64# define OSSL_MAC_NAME_POLY1305 "POLY1305" 65# define OSSL_MAC_NAME_SIPHASH "SIPHASH" 66 67/* Known KDF names */ 68# define OSSL_KDF_NAME_HKDF "HKDF" 69# define OSSL_KDF_NAME_TLS1_3_KDF "TLS13-KDF" 70# define OSSL_KDF_NAME_PBKDF1 "PBKDF1" 71# define OSSL_KDF_NAME_PBKDF2 "PBKDF2" 72# define OSSL_KDF_NAME_SCRYPT "SCRYPT" 73# define OSSL_KDF_NAME_SSHKDF "SSHKDF" 74# define OSSL_KDF_NAME_SSKDF "SSKDF" 75# define OSSL_KDF_NAME_TLS1_PRF "TLS1-PRF" 76# define OSSL_KDF_NAME_X942KDF_ASN1 "X942KDF-ASN1" 77# define OSSL_KDF_NAME_X942KDF_CONCAT "X942KDF-CONCAT" 78# define OSSL_KDF_NAME_X963KDF "X963KDF" 79# define OSSL_KDF_NAME_KBKDF "KBKDF" 80# define OSSL_KDF_NAME_KRB5KDF "KRB5KDF" 81# define OSSL_KDF_NAME_HMACDRBGKDF "HMAC-DRBG-KDF" 82 83/* RSA padding modes */ 84# define OSSL_PKEY_RSA_PAD_MODE_NONE "none" 85# define OSSL_PKEY_RSA_PAD_MODE_PKCSV15 "pkcs1" 86# define OSSL_PKEY_RSA_PAD_MODE_OAEP "oaep" 87# define OSSL_PKEY_RSA_PAD_MODE_X931 "x931" 88# define OSSL_PKEY_RSA_PAD_MODE_PSS "pss" 89 90/* RSA pss padding salt length */ 91# define OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST "digest" 92# define OSSL_PKEY_RSA_PSS_SALT_LEN_MAX "max" 93# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO "auto" 94# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX "auto-digestmax" 95 96/* OSSL_PKEY_PARAM_EC_ENCODING values */ 97# define OSSL_PKEY_EC_ENCODING_EXPLICIT "explicit" 98# define OSSL_PKEY_EC_ENCODING_GROUP "named_curve" 99 100# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_UNCOMPRESSED "uncompressed" 101# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_COMPRESSED "compressed" 102# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_HYBRID "hybrid" 103 104# define OSSL_PKEY_EC_GROUP_CHECK_DEFAULT "default" 105# define OSSL_PKEY_EC_GROUP_CHECK_NAMED "named" 106# define OSSL_PKEY_EC_GROUP_CHECK_NAMED_NIST "named-nist" 107 108/* PROV_SKEY well known key types */ 109# define OSSL_SKEY_TYPE_GENERIC "GENERIC-SECRET" 110# define OSSL_SKEY_TYPE_AES "AES" 111 112/* OSSL_KEM_PARAM_OPERATION values */ 113#define OSSL_KEM_PARAM_OPERATION_RSASVE "RSASVE" 114#define OSSL_KEM_PARAM_OPERATION_DHKEM "DHKEM" 115 116/* Provider configuration variables */ 117#define OSSL_PKEY_RETAIN_SEED "pkey_retain_seed" 118 119/* Parameter name definitions - generated by util/perl/OpenSSL/paramnames.pm */ 120{- generate_public_macros(); -} 121 122# ifdef __cplusplus 123} 124# endif 125 126#endif 127