Botan 3.11.0
Crypto and TLS for C&
Botan::PKCS11 Namespace Reference

Classes

class  AttributeContainer
 Helper class to build the Attribute / CK_ATTRIBUTE structures. More...
class  CertificateProperties
 Common attributes of all certificate objects. More...
class  DataObjectProperties
 Common attributes of all data objects. More...
class  DomainParameterProperties
 Common attributes of domain parameter. More...
class  InterfaceWrapper
 Wraps a PKCS #11 Interface object. More...
class  KeyProperties
 Common attributes of all key objects. More...
class  LowLevel
 Provides access to all PKCS #11 functions. More...
class  MechanismWrapper
class  Module
class  Object
class  ObjectFinder
 Manages calls to C_FindObjects* functions (C_FindObjectsInit -> C_FindObjects -> C_FindObjectsFinal). More...
class  ObjectProperties
 Common attributes of all objects. More...
class  PKCS11_Error
class  PKCS11_ReturnError
class  PKCS11_RNG
 A random generator that only fetches random from the PKCS#11 RNG. More...
class  PrivateKeyProperties
 Common attributes of all private keys. More...
class  PublicKeyProperties
 Common attributes of all public key objects. More...
class  SecretKeyProperties
 Common attributes of all secret (symmetric) keys. More...
class  Session
 Represents a PKCS#11 session. More...
class  Slot
 Represents a PKCS#11 Slot, i.e., a card reader. More...
class  StorageObjectProperties
 Common attributes of all storage objects. More...

Typedefs

using AsyncData = CK_ASYNC_DATA
using Attribute = CK_ATTRIBUTE
using Bbool = CK_BBOOL
using Byte = CK_BYTE
using C_InitializeArgs = CK_C_INITIALIZE_ARGS
using CreateMutex = CK_CREATEMUTEX
using Date = CK_DATE
using DestroyMutex = CK_DESTROYMUTEX
using Ecdh1DeriveParams = CK_ECDH1_DERIVE_PARAMS
using Flags = CK_FLAGS
using FunctionList = CK_FUNCTION_LIST
using FunctionList30 = CK_FUNCTION_LIST_3_0
using FunctionList32 = CK_FUNCTION_LIST_3_2
using FunctionListPtr = CK_FUNCTION_LIST_PTR
using Info = CK_INFO
using Interface = CK_INTERFACE
using LockMutex = CK_LOCKMUTEX
using Mechanism = CK_MECHANISM
using MechanismInfo = CK_MECHANISM_INFO
using Notify = CK_NOTIFY
using ObjectHandle = CK_OBJECT_HANDLE
using RsaPkcsOaepParams = CK_RSA_PKCS_OAEP_PARAMS
using RsaPkcsPssParams = CK_RSA_PKCS_PSS_PARAMS
using secure_string = secure_vector<uint8_t>
using SessionHandle = CK_SESSION_HANDLE
using SessionInfo = CK_SESSION_INFO
using SlotId = CK_SLOT_ID
using SlotInfo = CK_SLOT_INFO
using TokenInfo = CK_TOKEN_INFO
using Ulong = CK_ULONG
using UnlockMutex = CK_UNLOCKMUTEX
using Utf8Char = CK_UTF8CHAR
using Version = CK_VERSION
using VoidPtr = CK_VOID_PTR

Enumerations

enum class  AttributeType : CK_ATTRIBUTE_TYPE {
  Class = 0x00000000UL , Token = 0x00000001UL , Private = 0x00000002UL , Label = 0x00000003UL ,
  UniqueId = 0x00000004UL , Application = 0x00000010UL , Value = 0x00000011UL , ObjectId = 0x00000012UL ,
  CertificateType = 0x00000080UL , Issuer = 0x00000081UL , SerialNumber = 0x00000082UL , AcIssuer = 0x00000083UL ,
  Owner = 0x00000084UL , AttrTypes = 0x00000085UL , Trusted = 0x00000086UL , CertificateCategory = 0x00000087UL ,
  JavaMidpSecurityDomain = 0x00000088UL , Url = 0x00000089UL , HashOfSubjectPublicKey = 0x0000008AUL , HashOfIssuerPublicKey = 0x0000008BUL ,
  NameHashAlgorithm = 0x0000008CUL , CheckValue = 0x00000090UL , KeyType = 0x00000100UL , Subject = 0x00000101UL ,
  Id = 0x00000102UL , Sensitive = 0x00000103UL , Encrypt = 0x00000104UL , Decrypt = 0x00000105UL ,
  Wrap = 0x00000106UL , Unwrap = 0x00000107UL , Sign = 0x00000108UL , SignRecover = 0x00000109UL ,
  Verify = 0x0000010AUL , VerifyRecover = 0x0000010BUL , Derive = 0x0000010CUL , StartDate = 0x00000110UL ,
  EndDate = 0x00000111UL , Modulus = 0x00000120UL , ModulusBits = 0x00000121UL , PublicExponent = 0x00000122UL ,
  PrivateExponent = 0x00000123UL , Prime1 = 0x00000124UL , Prime2 = 0x00000125UL , Exponent1 = 0x00000126UL ,
  Exponent2 = 0x00000127UL , Coefficient = 0x00000128UL , PublicKeyInfo = 0x00000129UL , Prime = 0x00000130UL ,
  Subprime = 0x00000131UL , Base = 0x00000132UL , PrimeBits = 0x00000133UL , SubprimeBits = 0x00000134UL ,
  SubPrimeBits = 0x00000134UL , ValueBits = 0x00000160UL , ValueLen = 0x00000161UL , Extractable = 0x00000162UL ,
  Local = 0x00000163UL , NeverExtractable = 0x00000164UL , AlwaysSensitive = 0x00000165UL , KeyGenMechanism = 0x00000166UL ,
  Modifiable = 0x00000170UL , Copyable = 0x00000171UL , Destroyable = 0x00000172UL , EcdsaParams = 0x00000180UL ,
  EcParams = 0x00000180UL , EcPoint = 0x00000181UL , SecondaryAuth = 0x00000200UL , AuthPinFlags = 0x00000201UL ,
  AlwaysAuthenticate = 0x00000202UL , WrapWithTrusted = 0x00000210UL , WrapTemplate = 0x40000211UL , UnwrapTemplate = 0x40000212UL ,
  DeriveTemplate = 0x40000213UL , OtpFormat = 0x00000220UL , OtpLength = 0x00000221UL , OtpTimeInterval = 0x00000222UL ,
  OtpUserFriendlyMode = 0x00000223UL , OtpChallengeRequirement = 0x00000224UL , OtpTimeRequirement = 0x00000225UL , OtpCounterRequirement = 0x00000226UL ,
  OtpPinRequirement = 0x00000227UL , OtpCounter = 0x0000022EUL , OtpTime = 0x0000022FUL , OtpUserIdentifier = 0x0000022AUL ,
  OtpServiceIdentifier = 0x0000022BUL , OtpServiceLogo = 0x0000022CUL , OtpServiceLogoType = 0x0000022DUL , Gostr3410Params = 0x00000250UL ,
  Gostr3411Params = 0x00000251UL , Gost28147Params = 0x00000252UL , HwFeatureType = 0x00000300UL , ResetOnInit = 0x00000301UL ,
  HasReset = 0x00000302UL , PixelX = 0x00000400UL , PixelY = 0x00000401UL , Resolution = 0x00000402UL ,
  CharRows = 0x00000403UL , CharColumns = 0x00000404UL , Color = 0x00000405UL , BitsPerPixel = 0x00000406UL ,
  CharSets = 0x00000480UL , EncodingMethods = 0x00000481UL , MimeTypes = 0x00000482UL , MechanismType = 0x00000500UL ,
  RequiredCmsAttributes = 0x00000501UL , DefaultCmsAttributes = 0x00000502UL , SupportedCmsAttributes = 0x00000503UL , AllowedMechanisms = 0x40000600UL ,
  ProfileId = 0x00000601UL , X2ratchetBag = 0x00000602UL , X2ratchetBagsize = 0x00000603UL , X2ratchetBobs1stmsg = 0x00000604UL ,
  X2ratchetCkr = 0x00000605UL , X2ratchetCks = 0x00000606UL , X2ratchetDhp = 0x00000607UL , X2ratchetDhr = 0x00000608UL ,
  X2ratchetDhs = 0x00000609UL , X2ratchetHkr = 0x0000060AUL , X2ratchetHks = 0x0000060BUL , X2ratchetIsalice = 0x0000060CUL ,
  X2ratchetNhkr = 0x0000060DUL , X2ratchetNhks = 0x0000060EUL , X2ratchetNr = 0x0000060FUL , X2ratchetNs = 0x00000610UL ,
  X2ratchetPns = 0x00000611UL , X2ratchetRk = 0x00000612UL , HssLevels = 0x00000617UL , HssLmsType = 0x00000618UL ,
  HssLmotsType = 0x00000619UL , HssLmsTypes = 0x0000061AUL , HssLmotsTypes = 0x0000061BUL , HssKeysRemaining = 0x0000061CUL ,
  ParameterSet = 0x0000061DUL , ObjectValidationFlags = 0x0000061EUL , ValidationType = 0x0000061FUL , ValidationVersion = 0x00000620UL ,
  ValidationLevel = 0x00000621UL , ValidationModuleId = 0x00000622UL , ValidationFlag = 0x00000623UL , ValidationAuthorityType = 0x00000624UL ,
  ValidationCountry = 0x00000625UL , ValidationCertificateIdentifier = 0x00000626UL , ValidationCertificateUri = 0x00000627UL , ValidationVendorUri = 0x00000628UL ,
  ValidationProfile = 0x00000629UL , EncapsulateTemplate = 0x0000062AUL , DecapsulateTemplate = 0x0000062BUL , TrustServerAuth = 0x0000062CUL ,
  TrustClientAuth = 0x0000062DUL , TrustCodeSigning = 0x0000062EUL , TrustEmailProtection = 0x0000062FUL , TrustIpsecIke = 0x00000630UL ,
  TrustTimeStamping = 0x00000631UL , TrustOcspSigning = 0x00000632UL , Encapsulate = 0x00000633UL , Decapsulate = 0x00000634UL ,
  HashOfCertificate = 0x00000635UL , PublicCrc64Value = 0x00000636UL , Seed = 0x00000637UL , VendorDefined = 0x80000000UL
}
enum class  CertificateCategory : CK_CERTIFICATE_CATEGORY { Unspecified = 0UL , TokenUser = 1UL , Authority = 2UL , OtherEntity = 3UL }
enum class  CertificateType : CK_CERTIFICATE_TYPE { X509 = 0x00000000UL , X509AttrCert = 0x00000001UL , Wtls = 0x00000002UL , VendorDefined = 0x80000000UL }
enum class  Flag : CK_FLAGS {
  None = 0 , TokenPresent = 0x00000001UL , RemovableDevice = 0x00000002UL , HwSlot = 0x00000004UL ,
  Rng = 0x00000001UL , WriteProtected = 0x00000002UL , LoginRequired = 0x00000004UL , UserPinInitialized = 0x00000008UL ,
  RestoreKeyNotNeeded = 0x00000020UL , ClockOnToken = 0x00000040UL , ProtectedAuthenticationPath = 0x00000100UL , DualCryptoOperations = 0x00000200UL ,
  TokenInitialized = 0x00000400UL , SecondaryAuthentication = 0x00000800UL , UserPinCountLow = 0x00010000UL , UserPinFinalTry = 0x00020000UL ,
  UserPinLocked = 0x00040000UL , UserPinToBeChanged = 0x00080000UL , SoPinCountLow = 0x00100000UL , SoPinFinalTry = 0x00200000UL ,
  SoPinLocked = 0x00400000UL , SoPinToBeChanged = 0x00800000UL , ErrorState = 0x01000000UL , SeedRandomRequired = 0x02000000UL ,
  AsyncSessionSupported = 0x04000000UL , RwSession = 0x00000002UL , SerialSession = 0x00000004UL , AsyncSession = 0x00000008UL ,
  ArrayAttribute = 0x40000000UL , Hw = 0x00000001UL , MessageEncrypt = 0x00000002UL , MessageDecrypt = 0x00000004UL ,
  MessageSign = 0x00000008UL , MessageVerify = 0x00000010UL , MultiMessage = 0x00000020UL , FindObjects = 0x00000040UL ,
  Encrypt = 0x00000100UL , Decrypt = 0x00000200UL , Digest = 0x00000400UL , Sign = 0x00000800UL ,
  SignRecover = 0x00001000UL , Verify = 0x00002000UL , VerifyRecover = 0x00004000UL , Generate = 0x00008000UL ,
  GenerateKeyPair = 0x00010000UL , Wrap = 0x00020000UL , Unwrap = 0x00040000UL , Derive = 0x00080000UL ,
  EcFP = 0x00100000UL , EcF2m = 0x00200000UL , EcEcparameters = 0x00400000UL , EcOid = 0x00800000UL ,
  EcNamedcurve = 0x00800000U , EcUncompress = 0x01000000UL , EcCompress = 0x02000000UL , EcCurvename = 0x04000000UL ,
  Encapsulate = 0x10000000UL , Decapsulate = 0x20000000UL , Extension = 0x80000000UL , EndOfMessage = 0x00000001UL ,
  InterfaceForkSafe = 0x00000001UL , LibraryCantCreateOsThreads = 0x00000001UL , OsLockingOk = 0x00000002UL , DontBlock = 1 ,
  NextOtp = 0x00000001UL , ExcludeTime = 0x00000002UL , ExcludeCounter = 0x00000004UL , ExcludeChallenge = 0x00000008UL ,
  ExcludePin = 0x00000010UL , UserFriendlyOtp = 0x00000020UL , HkdfSaltNull = 0x00000001UL , HkdfSaltData = 0x00000002UL ,
  HkdfSaltKey = 0x00000004UL
}
enum class  GeneratorFunction : CK_GENERATOR_FUNCTION {
  NoGenerate = 0x00000000UL , Generate = 0x00000001UL , GenerateCounter = 0x00000002UL , GenerateRandom = 0x00000003UL ,
  GenerateCounterXor = 0x00000004UL
}
enum class  HardwareType : CK_HW_FEATURE_TYPE { MonotonicCounter = 0x00000001UL , Clock = 0x00000002UL , UserInterface = 0x00000003UL , VendorDefined = 0x80000000UL }
enum class  HedgeType : CK_HEDGE_TYPE { HedgePreferred = 0x00000000UL , HedgeRequired = 0x00000001UL , DeterministicRequired = 0x00000002UL }
enum class  JavaMidpSecurityDomain : CK_JAVA_MIDP_SECURITY_DOMAIN { SecurityDomainUnspecified = 0UL , SecurityDomainManufacturer = 1UL , SecurityDomainOperator = 2UL , SecurityDomainThirdParty = 3UL }
enum class  KeyDerivation : CK_ULONG {
  Null = 0x00000001UL , Sha1Kdf = 0x00000002UL , Sha1KdfAsn1 = 0x00000003UL , Sha1KdfConcatenate = 0x00000004UL ,
  Sha224Kdf = 0x00000005UL , Sha256Kdf = 0x00000006UL , Sha384Kdf = 0x00000007UL , Sha512Kdf = 0x00000008UL ,
  CpdiversifyKdf = 0x00000009UL , Sha3_224Kdf = 0x0000000AUL , Sha3_256Kdf = 0x0000000BUL , Sha3_384Kdf = 0x0000000CUL ,
  Sha3_512Kdf = 0x0000000DUL , Sha1KdfSp800 = 0x0000000EUL , Sha224KdfSp800 = 0x0000000FUL , Sha256KdfSp800 = 0x00000010UL ,
  Sha384KdfSp800 = 0x00000011UL , Sha512KdfSp800 = 0x00000012UL , Sha3_224KdfSp800 = 0x00000013UL , Sha3_256KdfSp800 = 0x00000014UL ,
  Sha3_384KdfSp800 = 0x00000015UL , Sha3_512KdfSp800 = 0x00000016UL , Blake2b160Kdf = 0x00000017UL , Blake2b256Kdf = 0x00000018UL ,
  Blake2b384Kdf = 0x00000019UL , Blake2b512Kdf = 0x0000001AUL
}
enum class  KeyType : CK_KEY_TYPE {
  Rsa = 0x00000000UL , Dsa = 0x00000001UL , Dh = 0x00000002UL , Ecdsa = 0x00000003UL ,
  Ec = 0x00000003UL , X942Dh = 0x00000004UL , Kea = 0x00000005UL , GenericSecret = 0x00000010UL ,
  Rc2 = 0x00000011UL , Rc4 = 0x00000012UL , Des = 0x00000013UL , Des2 = 0x00000014UL ,
  Des3 = 0x00000015UL , Cast = 0x00000016UL , Cast3 = 0x00000017UL , Cast5 = 0x00000018UL ,
  Cast128 = 0x00000018UL , Rc5 = 0x00000019UL , Idea = 0x0000001AUL , Skipjack = 0x0000001BUL ,
  Baton = 0x0000001CUL , Juniper = 0x0000001DUL , Cdmf = 0x0000001EUL , Aes = 0x0000001FUL ,
  Blowfish = 0x00000020UL , Twofish = 0x00000021UL , Securid = 0x00000022UL , Hotp = 0x00000023UL ,
  Acti = 0x00000024UL , Camellia = 0x00000025UL , Aria = 0x00000026UL , Md5Hmac = 0x00000027UL ,
  Sha1Hmac = 0x00000028UL , Ripemd128Hmac = 0x00000029UL , Ripemd160Hmac = 0x0000002AUL , Sha256Hmac = 0x0000002BUL ,
  Sha384Hmac = 0x0000002CUL , Sha512Hmac = 0x0000002DUL , Sha224Hmac = 0x0000002EUL , Seed = 0x0000002FUL ,
  Gostr3410 = 0x00000030UL , Gostr3411 = 0x00000031UL , Gost28147 = 0x00000032UL , Chacha20 = 0x00000033UL ,
  Poly1305 = 0x00000034UL , AesXts = 0x00000035UL , Sha3_224Hmac = 0x00000036UL , Sha3_256Hmac = 0x00000037UL ,
  Sha3_384Hmac = 0x00000038UL , Sha3_512Hmac = 0x00000039UL , Blake2b160Hmac = 0x0000003AUL , Blake2b256Hmac = 0x0000003BUL ,
  Blake2b384Hmac = 0x0000003CUL , Blake2b512Hmac = 0x0000003DUL , Salsa20 = 0x0000003EUL , X2ratchet = 0x0000003FUL ,
  EcEdwards = 0x00000040UL , EcMontgomery = 0x00000041UL , Hkdf = 0x00000042UL , Sha512_224Hmac = 0x00000043UL ,
  Sha512_256Hmac = 0x00000044UL , Sha512THmac = 0x00000045UL , Hss = 0x00000046UL , Xmss = 0x00000047UL ,
  Xmssmt = 0x00000048UL , MlKem = 0x00000049UL , MlDsa = 0x0000004AUL , SlhDsa = 0x0000004BUL ,
  VendorDefined = 0x80000000UL
}
enum class  MechanismType : CK_MECHANISM_TYPE {
  RsaPkcsKeyPairGen = 0x00000000UL , RsaPkcs = 0x00000001UL , Rsa9796 = 0x00000002UL , RsaX509 = 0x00000003UL ,
  Md2RsaPkcs = 0x00000004UL , Md5RsaPkcs = 0x00000005UL , Sha1RsaPkcs = 0x00000006UL , Ripemd128RsaPkcs = 0x00000007UL ,
  Ripemd160RsaPkcs = 0x00000008UL , RsaPkcsOaep = 0x00000009UL , RsaX931KeyPairGen = 0x0000000AUL , RsaX931 = 0x0000000BUL ,
  Sha1RsaX931 = 0x0000000CUL , RsaPkcsPss = 0x0000000DUL , Sha1RsaPkcsPss = 0x0000000EUL , DsaKeyPairGen = 0x00000010UL ,
  Dsa = 0x00000011UL , DsaSha1 = 0x00000012UL , DsaSha224 = 0x00000013UL , DsaSha256 = 0x00000014UL ,
  DsaSha384 = 0x00000015UL , DsaSha512 = 0x00000016UL , DsaSha3_224 = 0x00000018UL , DsaSha3_256 = 0x00000019UL ,
  DsaSha3_384 = 0x0000001AUL , DsaSha3_512 = 0x0000001BUL , DhPkcsKeyPairGen = 0x00000020UL , DhPkcsDerive = 0x00000021UL ,
  X942DhKeyPairGen = 0x00000030UL , X942DhDerive = 0x00000031UL , X942DhHybridDerive = 0x00000032UL , X942MqvDerive = 0x00000033UL ,
  Sha256RsaPkcs = 0x00000040UL , Sha384RsaPkcs = 0x00000041UL , Sha512RsaPkcs = 0x00000042UL , Sha256RsaPkcsPss = 0x00000043UL ,
  Sha384RsaPkcsPss = 0x00000044UL , Sha512RsaPkcsPss = 0x00000045UL , Sha224RsaPkcs = 0x00000046UL , Sha224RsaPkcsPss = 0x00000047UL ,
  Sha512224 = 0x00000048UL , Sha512224Hmac = 0x00000049UL , Sha512224HmacGeneral = 0x0000004AUL , Sha512224KeyDerivation = 0x0000004BUL ,
  Sha512256 = 0x0000004CUL , Sha512256Hmac = 0x0000004DUL , Sha512256HmacGeneral = 0x0000004EUL , Sha512256KeyDerivation = 0x0000004FUL ,
  Sha512T = 0x00000050UL , Sha512THmac = 0x00000051UL , Sha512THmacGeneral = 0x00000052UL , Sha512TKeyDerivation = 0x00000053UL ,
  Sha3_256RsaPkcs = 0x00000060UL , Sha3_384RsaPkcs = 0x00000061UL , Sha3_512RsaPkcs = 0x00000062UL , Sha3_256RsaPkcsPss = 0x00000063UL ,
  Sha3_384RsaPkcsPss = 0x00000064UL , Sha3_512RsaPkcsPss = 0x00000065UL , Sha3_224RsaPkcs = 0x00000066UL , Sha3_224RsaPkcsPss = 0x00000067UL ,
  Rc2KeyGen = 0x00000100UL , Rc2Ecb = 0x00000101UL , Rc2Cbc = 0x00000102UL , Rc2Mac = 0x00000103UL ,
  Rc2MacGeneral = 0x00000104UL , Rc2CbcPad = 0x00000105UL , Rc4KeyGen = 0x00000110UL , Rc4 = 0x00000111UL ,
  DesKeyGen = 0x00000120UL , DesEcb = 0x00000121UL , DesCbc = 0x00000122UL , DesMac = 0x00000123UL ,
  DesMacGeneral = 0x00000124UL , DesCbcPad = 0x00000125UL , Des2KeyGen = 0x00000130UL , Des3KeyGen = 0x00000131UL ,
  Des3Ecb = 0x00000132UL , Des3Cbc = 0x00000133UL , Des3Mac = 0x00000134UL , Des3MacGeneral = 0x00000135UL ,
  Des3CbcPad = 0x00000136UL , Des3CmacGeneral = 0x00000137UL , Des3Cmac = 0x00000138UL , CdmfKeyGen = 0x00000140UL ,
  CdmfEcb = 0x00000141UL , CdmfCbc = 0x00000142UL , CdmfMac = 0x00000143UL , CdmfMacGeneral = 0x00000144UL ,
  CdmfCbcPad = 0x00000145UL , DesOfb64 = 0x00000150UL , DesOfb8 = 0x00000151UL , DesCfb64 = 0x00000152UL ,
  DesCfb8 = 0x00000153UL , Md2 = 0x00000200UL , Md2Hmac = 0x00000201UL , Md2HmacGeneral = 0x00000202UL ,
  Md5 = 0x00000210UL , Md5Hmac = 0x00000211UL , Md5HmacGeneral = 0x00000212UL , Sha1 = 0x00000220UL ,
  Sha1Hmac = 0x00000221UL , Sha1HmacGeneral = 0x00000222UL , Ripemd128 = 0x00000230UL , Ripemd128Hmac = 0x00000231UL ,
  Ripemd128HmacGeneral = 0x00000232UL , Ripemd160 = 0x00000240UL , Ripemd160Hmac = 0x00000241UL , Ripemd160HmacGeneral = 0x00000242UL ,
  Sha256 = 0x00000250UL , Sha256Hmac = 0x00000251UL , Sha256HmacGeneral = 0x00000252UL , Sha224 = 0x00000255UL ,
  Sha224Hmac = 0x00000256UL , Sha224HmacGeneral = 0x00000257UL , Sha384 = 0x00000260UL , Sha384Hmac = 0x00000261UL ,
  Sha384HmacGeneral = 0x00000262UL , Sha512 = 0x00000270UL , Sha512Hmac = 0x00000271UL , Sha512HmacGeneral = 0x00000272UL ,
  SecuridKeyGen = 0x00000280UL , Securid = 0x00000282UL , HotpKeyGen = 0x00000290UL , Hotp = 0x00000291UL ,
  Acti = 0x000002A0UL , ActiKeyGen = 0x000002A1UL , Sha3_256 = 0x000002B0UL , Sha3_256Hmac = 0x000002B1UL ,
  Sha3_256HmacGeneral = 0x000002B2UL , Sha3_256KeyGen = 0x000002B3UL , Sha3_224 = 0x000002B5UL , Sha3_224Hmac = 0x000002B6UL ,
  Sha3_224HmacGeneral = 0x000002B7UL , Sha3_224KeyGen = 0x000002B8UL , Sha3_384 = 0x000002C0UL , Sha3_384Hmac = 0x000002C1UL ,
  Sha3_384HmacGeneral = 0x000002C2UL , Sha3_384KeyGen = 0x000002C3UL , Sha3_512 = 0x000002D0UL , Sha3_512Hmac = 0x000002D1UL ,
  Sha3_512HmacGeneral = 0x000002D2UL , Sha3_512KeyGen = 0x000002D3UL , CastKeyGen = 0x00000300UL , CastEcb = 0x00000301UL ,
  CastCbc = 0x00000302UL , CastMac = 0x00000303UL , CastMacGeneral = 0x00000304UL , CastCbcPad = 0x00000305UL ,
  Cast3KeyGen = 0x00000310UL , Cast3Ecb = 0x00000311UL , Cast3Cbc = 0x00000312UL , Cast3Mac = 0x00000313UL ,
  Cast3MacGeneral = 0x00000314UL , Cast3CbcPad = 0x00000315UL , Cast5KeyGen = 0x00000320UL , Cast128KeyGen = 0x00000320UL ,
  Cast5Ecb = 0x00000321UL , Cast128Ecb = 0x00000321UL , Cast5Cbc = 0x00000322UL , Cast128Cbc = 0x00000322UL ,
  Cast5Mac = 0x00000323UL , Cast128Mac = 0x00000323UL , Cast5MacGeneral = 0x00000324UL , Cast128MacGeneral = 0x00000324UL ,
  Cast5CbcPad = 0x00000325UL , Cast128CbcPad = 0x00000325UL , Rc5KeyGen = 0x00000330UL , Rc5Ecb = 0x00000331UL ,
  Rc5Cbc = 0x00000332UL , Rc5Mac = 0x00000333UL , Rc5MacGeneral = 0x00000334UL , Rc5CbcPad = 0x00000335UL ,
  IdeaKeyGen = 0x00000340UL , IdeaEcb = 0x00000341UL , IdeaCbc = 0x00000342UL , IdeaMac = 0x00000343UL ,
  IdeaMacGeneral = 0x00000344UL , IdeaCbcPad = 0x00000345UL , GenericSecretKeyGen = 0x00000350UL , ConcatenateBaseAndKey = 0x00000360UL ,
  ConcatenateBaseAndData = 0x00000362UL , ConcatenateDataAndBase = 0x00000363UL , XorBaseAndData = 0x00000364UL , ExtractKeyFromKey = 0x00000365UL ,
  Ssl3PreMasterKeyGen = 0x00000370UL , Ssl3MasterKeyDerive = 0x00000371UL , Ssl3KeyAndMacDerive = 0x00000372UL , Ssl3MasterKeyDeriveDh = 0x00000373UL ,
  TlsPreMasterKeyGen = 0x00000374UL , TlsMasterKeyDerive = 0x00000375UL , TlsKeyAndMacDerive = 0x00000376UL , TlsMasterKeyDeriveDh = 0x00000377UL ,
  TlsPrf = 0x00000378UL , Ssl3Md5Mac = 0x00000380UL , Ssl3Sha1Mac = 0x00000381UL , Md5KeyDerivation = 0x00000390UL ,
  Md2KeyDerivation = 0x00000391UL , Sha1KeyDerivation = 0x00000392UL , Sha256KeyDerivation = 0x00000393UL , Sha384KeyDerivation = 0x00000394UL ,
  Sha512KeyDerivation = 0x00000395UL , Sha224KeyDerivation = 0x00000396UL , Sha3_256KeyDerivation = 0x00000397UL , Sha3_224KeyDerivation = 0x00000398UL ,
  Sha3_384KeyDerivation = 0x00000399UL , Sha3_512KeyDerivation = 0x0000039AUL , Shake128KeyDerivation = 0x0000039BUL , Shake256KeyDerivation = 0x0000039CUL ,
  PbeMd2DesCbc = 0x000003A0UL , PbeMd5DesCbc = 0x000003A1UL , PbeMd5CastCbc = 0x000003A2UL , PbeMd5Cast3Cbc = 0x000003A3UL ,
  PbeMd5Cast5Cbc = 0x000003A4UL , PbeMd5Cast128Cbc = 0x000003A4UL , PbeSha1Cast5Cbc = 0x000003A5UL , PbeSha1Cast128Cbc = 0x000003A5UL ,
  PbeSha1Rc4128 = 0x000003A6UL , PbeSha1Rc440 = 0x000003A7UL , PbeSha1Des3EdeCbc = 0x000003A8UL , PbeSha1Des2EdeCbc = 0x000003A9UL ,
  PbeSha1Rc2128Cbc = 0x000003AAUL , PbeSha1Rc240Cbc = 0x000003ABUL , Pkcs5Pbkd2 = 0x000003B0UL , PbaSha1WithSha1Hmac = 0x000003C0UL ,
  WtlsPreMasterKeyGen = 0x000003D0UL , WtlsMasterKeyDerive = 0x000003D1UL , WtlsMasterKeyDeriveDhEcc = 0x000003D2UL , WtlsPrf = 0x000003D3UL ,
  WtlsServerKeyAndMacDerive = 0x000003D4UL , WtlsClientKeyAndMacDerive = 0x000003D5UL , Tls10MacServer = 0x000003D6UL , Tls10MacClient = 0x000003D7UL ,
  Tls12Mac = 0x000003D8UL , Tls12Kdf = 0x000003D9UL , Tls12MasterKeyDerive = 0x000003E0UL , Tls12KeyAndMacDerive = 0x000003E1UL ,
  Tls12MasterKeyDeriveDh = 0x000003E2UL , Tls12KeySafeDerive = 0x000003E3UL , TlsMac = 0x000003E4UL , TlsKdf = 0x000003E5UL ,
  KeyWrapLynks = 0x00000400UL , KeyWrapSetOaep = 0x00000401UL , CmsSig = 0x00000500UL , KipDerive = 0x00000510UL ,
  KipWrap = 0x00000511UL , KipMac = 0x00000512UL , CamelliaKeyGen = 0x00000550UL , CamelliaEcb = 0x00000551UL ,
  CamelliaCbc = 0x00000552UL , CamelliaMac = 0x00000553UL , CamelliaMacGeneral = 0x00000554UL , CamelliaCbcPad = 0x00000555UL ,
  CamelliaEcbEncryptData = 0x00000556UL , CamelliaCbcEncryptData = 0x00000557UL , CamelliaCtr = 0x00000558UL , AriaKeyGen = 0x00000560UL ,
  AriaEcb = 0x00000561UL , AriaCbc = 0x00000562UL , AriaMac = 0x00000563UL , AriaMacGeneral = 0x00000564UL ,
  AriaCbcPad = 0x00000565UL , AriaEcbEncryptData = 0x00000566UL , AriaCbcEncryptData = 0x00000567UL , SeedKeyGen = 0x00000650UL ,
  SeedEcb = 0x00000651UL , SeedCbc = 0x00000652UL , SeedMac = 0x00000653UL , SeedMacGeneral = 0x00000654UL ,
  SeedCbcPad = 0x00000655UL , SeedEcbEncryptData = 0x00000656UL , SeedCbcEncryptData = 0x00000657UL , SkipjackKeyGen = 0x00001000UL ,
  SkipjackEcb64 = 0x00001001UL , SkipjackCbc64 = 0x00001002UL , SkipjackOfb64 = 0x00001003UL , SkipjackCfb64 = 0x00001004UL ,
  SkipjackCfb32 = 0x00001005UL , SkipjackCfb16 = 0x00001006UL , SkipjackCfb8 = 0x00001007UL , SkipjackWrap = 0x00001008UL ,
  SkipjackPrivateWrap = 0x00001009UL , SkipjackRelayx = 0x0000100AUL , KeaKeyPairGen = 0x00001010UL , KeaKeyDerive = 0x00001011UL ,
  KeaDerive = 0x00001012UL , FortezzaTimestamp = 0x00001020UL , BatonKeyGen = 0x00001030UL , BatonEcb128 = 0x00001031UL ,
  BatonEcb96 = 0x00001032UL , BatonCbc128 = 0x00001033UL , BatonCounter = 0x00001034UL , BatonShuffle = 0x00001035UL ,
  BatonWrap = 0x00001036UL , EcdsaKeyPairGen = 0x00001040UL , EcKeyPairGen = 0x00001040UL , Ecdsa = 0x00001041UL ,
  EcdsaSha1 = 0x00001042UL , EcdsaSha224 = 0x00001043UL , EcdsaSha256 = 0x00001044UL , EcdsaSha384 = 0x00001045UL ,
  EcdsaSha512 = 0x00001046UL , EcKeyPairGenWExtraBits = 0x0000140BUL , Ecdh1Derive = 0x00001050UL , Ecdh1CofactorDerive = 0x00001051UL ,
  EcmqvDerive = 0x00001052UL , EcdhAesKeyWrap = 0x00001053UL , RsaAesKeyWrap = 0x00001054UL , JuniperKeyGen = 0x00001060UL ,
  JuniperEcb128 = 0x00001061UL , JuniperCbc128 = 0x00001062UL , JuniperCounter = 0x00001063UL , JuniperShuffle = 0x00001064UL ,
  JuniperWrap = 0x00001065UL , Fasthash = 0x00001070UL , AesXts = 0x00001071UL , AesXtsKeyGen = 0x00001072UL ,
  AesKeyGen = 0x00001080UL , AesEcb = 0x00001081UL , AesCbc = 0x00001082UL , AesMac = 0x00001083UL ,
  AesMacGeneral = 0x00001084UL , AesCbcPad = 0x00001085UL , AesCtr = 0x00001086UL , AesGcm = 0x00001087UL ,
  AesCcm = 0x00001088UL , AesCts = 0x00001089UL , AesCmac = 0x0000108AUL , AesCmacGeneral = 0x0000108BUL ,
  AesXcbcMac = 0x0000108CUL , AesXcbcMac96 = 0x0000108DUL , AesGmac = 0x0000108EUL , BlowfishKeyGen = 0x00001090UL ,
  BlowfishCbc = 0x00001091UL , TwofishKeyGen = 0x00001092UL , TwofishCbc = 0x00001093UL , BlowfishCbcPad = 0x00001094UL ,
  TwofishCbcPad = 0x00001095UL , DesEcbEncryptData = 0x00001100UL , DesCbcEncryptData = 0x00001101UL , Des3EcbEncryptData = 0x00001102UL ,
  Des3CbcEncryptData = 0x00001103UL , AesEcbEncryptData = 0x00001104UL , AesCbcEncryptData = 0x00001105UL , Gostr3410KeyPairGen = 0x00001200UL ,
  Gostr3410 = 0x00001201UL , Gostr3410WithGostr3411 = 0x00001202UL , Gostr3410KeyWrap = 0x00001203UL , Gostr3410Derive = 0x00001204UL ,
  Gostr3411 = 0x00001210UL , Gostr3411Hmac = 0x00001211UL , Gost28147KeyGen = 0x00001220UL , Gost28147Ecb = 0x00001221UL ,
  Gost28147 = 0x00001222UL , Gost28147Mac = 0x00001223UL , Gost28147KeyWrap = 0x00001224UL , Chacha20KeyGen = 0x00001225UL ,
  Chacha20 = 0x00001226UL , Poly1305KeyGen = 0x00001227UL , Poly1305 = 0x00001228UL , DsaParameterGen = 0x00002000UL ,
  DhPkcsParameterGen = 0x00002001UL , X942DhParameterGen = 0x00002002UL , DsaProbablisticParameterGen = 0x00002003UL , DsaProbabilisticParameterGen = 0x00002003UL ,
  DsaShaweTaylorParameterGen = 0x00002004UL , DsaFipsGGen = 0x00002005UL , AesOfb = 0x00002104UL , AesCfb64 = 0x00002105UL ,
  AesCfb8 = 0x00002106UL , AesCfb128 = 0x00002107UL , AesCfb1 = 0x00002108UL , AesKeyWrap = 0x00002109UL ,
  AesKeyWrapPad = 0x0000210AUL , AesKeyWrapKwp = 0x0000210BUL , AesKeyWrapPkcs7 = 0x0000210CUL , RsaPkcsTpm11 = 0x00004001UL ,
  RsaPkcsOaepTpm11 = 0x00004002UL , Sha1KeyGen = 0x00004003UL , Sha224KeyGen = 0x00004004UL , Sha256KeyGen = 0x00004005UL ,
  Sha384KeyGen = 0x00004006UL , Sha512KeyGen = 0x00004007UL , Sha512_224KeyGen = 0x00004008UL , Sha512_256KeyGen = 0x00004009UL ,
  Sha512TKeyGen = 0x0000400AUL , Null = 0x0000400BUL , Blake2b160 = 0x0000400CUL , Blake2b160Hmac = 0x0000400DUL ,
  Blake2b160HmacGeneral = 0x0000400EUL , Blake2b160KeyDerive = 0x0000400FUL , Blake2b160KeyGen = 0x00004010UL , Blake2b256 = 0x00004011UL ,
  Blake2b256Hmac = 0x00004012UL , Blake2b256HmacGeneral = 0x00004013UL , Blake2b256KeyDerive = 0x00004014UL , Blake2b256KeyGen = 0x00004015UL ,
  Blake2b384 = 0x00004016UL , Blake2b384Hmac = 0x00004017UL , Blake2b384HmacGeneral = 0x00004018UL , Blake2b384KeyDerive = 0x00004019UL ,
  Blake2b384KeyGen = 0x0000401AUL , Blake2b512 = 0x0000401BUL , Blake2b512Hmac = 0x0000401CUL , Blake2b512HmacGeneral = 0x0000401DUL ,
  Blake2b512KeyDerive = 0x0000401EUL , Blake2b512KeyGen = 0x0000401FUL , Salsa20 = 0x00004020UL , Chacha20Poly1305 = 0x00004021UL ,
  Salsa20Poly1305 = 0x00004022UL , X3dhInitialize = 0x00004023UL , X3dhRespond = 0x00004024UL , X2ratchetInitialize = 0x00004025UL ,
  X2ratchetRespond = 0x00004026UL , X2ratchetEncrypt = 0x00004027UL , X2ratchetDecrypt = 0x00004028UL , Xeddsa = 0x00004029UL ,
  HkdfDerive = 0x0000402AUL , HkdfData = 0x0000402BUL , HkdfKeyGen = 0x0000402CUL , Salsa20_KeyGen = 0x0000402DUL ,
  EcdsaSha3_224 = 0x00001047UL , EcdsaSha3_256 = 0x00001048UL , EcdsaSha3_384 = 0x00001049UL , EcdsaSha3_512 = 0x0000104AUL ,
  EcEdwardsKeyPairGen = 0x00001055UL , EcMontgomeryKeyPairGen = 0x00001056UL , Eddsa = 0x00001057UL , Sp800_108CounterKdf = 0x000003ACUL ,
  Sp800_108FeedbackKdf = 0x000003ADUL , Sp800_108DoublePipelineKdf = 0x000003AEUL , Ike2PrfPlusDerive = 0x0000402EUL , IkePrfDerive = 0x0000402FUL ,
  Ike1PrfDerive = 0x00004030UL , Ike1ExtendedDerive = 0x00004031UL , HssKeyPairGen = 0x00004032UL , Hss = 0x00004033UL ,
  XmssKeyPairGen = 0x00004034UL , XmssmtKeyPairGen = 0x00004035UL , Xmss = 0x00004036UL , Xmssmt = 0x00004037UL ,
  EcdhXAesKeyWrap = 0x00004038UL , EcdhCofAesKeyWrap = 0x00004039UL , PubKeyFromPrivKey = 0x0000403AUL , MlKemKeyPairGen = 0x0000000FUL ,
  MlKem = 0x00000017UL , MlDsaKeyPairGen = 0x0000001CUL , MlDsa = 0x0000001DUL , HashMlDsa = 0x0000001FUL ,
  HashMlDsaSha224 = 0x00000023UL , HashMlDsaSha256 = 0x00000024UL , HashMlDsaSha384 = 0x00000025UL , HashMlDsaSha512 = 0x00000026UL ,
  HashMlDsaSha3_224 = 0x00000027UL , HashMlDsaSha3_256 = 0x00000028UL , HashMlDsaSha3_384 = 0x00000029UL , HashMlDsaSha3_512 = 0x0000002AUL ,
  HashMlDsaShake128 = 0x0000002BUL , HashMlDsaShake256 = 0x0000002CUL , SlhDsaKeyPairGen = 0x0000002DUL , SlhDsa = 0x0000002EUL ,
  HashSlhDsa = 0x00000034UL , HashSlhDsaSha224 = 0x00000036UL , HashSlhDsaSha256 = 0x00000037UL , HashSlhDsaSha384 = 0x00000038UL ,
  HashSlhDsaSha512 = 0x00000039UL , HashSlhDsaSha3_224 = 0x0000003AUL , HashSlhDsaSha3_256 = 0x0000003BUL , HashSlhDsaSha3_384 = 0x0000003CUL ,
  HashSlhDsaSha3_512 = 0x0000003DUL , HashSlhDsaShake128 = 0x0000003EUL , HashSlhDsaShake256 = 0x0000003FUL , Tls12ExtendedMasterKeyDerive = 0x00000056UL ,
  Tls12ExtendedMasterKeyDeriveDh = 0x00000057UL , VendorDefined = 0x80000000UL
}
enum class  MGF : CK_RSA_PKCS_MGF_TYPE {
  MgfUnused = 0 , Mgf1Sha1 = 0x00000001UL , Mgf1Sha256 = 0x00000002UL , Mgf1Sha384 = 0x00000003UL ,
  Mgf1Sha512 = 0x00000004UL , Mgf1Sha224 = 0x00000005UL , Mgf1Sha3_224 = 0x00000006UL , Mgf1Sha3_256 = 0x00000007UL ,
  Mgf1Sha3_384 = 0x00000008UL , Mgf1Sha3_512 = 0x00000009UL
}
enum class  MlDsaParameterSet : CK_ML_DSA_PARAMETER_SET_TYPE { MlDsa44 = 0x00000001UL , MlDsa65 = 0x00000002UL , MlDsa87 = 0x00000003UL }
enum class  MlKemParameterSet : CK_ML_KEM_PARAMETER_SET_TYPE { MlKem512 = 0x00000001UL , MlKem768 = 0x00000002UL , MlKem1024 = 0x00000003UL }
enum class  Notification : CK_NOTIFICATION { Surrender = 0UL , OtpChanged = 1UL }
enum class  ObjectClass : CK_OBJECT_CLASS {
  Data = 0x00000000UL , Certificate = 0x00000001UL , PublicKey = 0x00000002UL , PrivateKey = 0x00000003UL ,
  SecretKey = 0x00000004UL , HwFeature = 0x00000005UL , DomainParameters = 0x00000006UL , Mechanism = 0x00000007UL ,
  OtpKey = 0x00000008UL , Profile = 0x00000009UL , Validation = 0x0000000AUL , Trust = 0x0000000BUL ,
  VendorDefined = 0x80000000UL
}
enum class  OtpChallengeRequirement : CK_ULONG { OtpParamIgnored = 0UL , OtpParamOptional = 1UL , OtpParamMandatory = 2UL }
enum class  OtpFormat : CK_ULONG { OtpFormatDecimal = 0UL , OtpFormatHexadecimal = 1UL , OtpFormatAlphanumeric = 2UL , OtpFormatBinary = 3UL }
enum class  OtpParamType : CK_OTP_PARAM_TYPE {
  OtpValue = 0UL , OtpPin = 1UL , OtpChallenge = 2UL , OtpTime = 3UL ,
  OtpCounter = 4UL , OtpFlags = 5UL , OtpOutputLength = 6UL , OtpOutputFormat = 7UL
}
enum class  PrfDataType : CK_PRF_DATA_TYPE {
  Sp800_108IterationVariable = 0x00000001UL , Sp800_108Counter = 0x00000002UL , Sp800_108DkmLength = 0x00000003UL , Sp800_108ByteArray = 0x00000004UL ,
  Sp800_108KeyHandle = 0x00000005UL
}
enum class  ProfileId : CK_PROFILE_ID {
  InvalidId = 0x00000000UL , BaselineProvider = 0x00000001UL , ExtendedProvider = 0x00000002UL , AuthenticationToken = 0x00000003UL ,
  PublicCertificatesToken = 0x00000004UL , CompleteProvider = 0x00000005UL , HkdfTlsToken = 0x00000006UL , VendorDefined = 0x80000000UL
}
enum class  PseudoRandom : CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE {
  Pkcs5Pbkd2HmacSha1 = 0x00000001UL , Pkcs5Pbkd2HmacGostr3411 = 0x00000002UL , Pkcs5Pbkd2HmacSha224 = 0x00000003UL , Pkcs5Pbkd2HmacSha256 = 0x00000004UL ,
  Pkcs5Pbkd2HmacSha384 = 0x00000005UL , Pkcs5Pbkd2HmacSha512 = 0x00000006UL , Pkcs5Pbkd2HmacSha512224 = 0x00000007UL , Pkcs5Pbkd2HmacSha512256 = 0x00000008UL
}
enum class  PublicPointEncoding : uint32_t { Raw , Der }
enum class  ReturnValue : CK_RV {
  OK = 0x00000000UL , Cancel = 0x00000001UL , HostMemory = 0x00000002UL , SlotIdInvalid = 0x00000003UL ,
  GeneralError = 0x00000005UL , FunctionFailed = 0x00000006UL , ArgumentsBad = 0x00000007UL , NoEvent = 0x00000008UL ,
  NeedToCreateThreads = 0x00000009UL , CantLock = 0x0000000AUL , AttributeReadOnly = 0x00000010UL , AttributeSensitive = 0x00000011UL ,
  AttributeTypeInvalid = 0x00000012UL , AttributeValueInvalid = 0x00000013UL , ActionProhibited = 0x0000001BUL , DataInvalid = 0x00000020UL ,
  DataLenRange = 0x00000021UL , DeviceError = 0x00000030UL , DeviceMemory = 0x00000031UL , DeviceRemoved = 0x00000032UL ,
  EncryptedDataInvalid = 0x00000040UL , EncryptedDataLenRange = 0x00000041UL , AeadDecryptFailed = 0x00000042UL , FunctionCanceled = 0x00000050UL ,
  FunctionNotParallel = 0x00000051UL , FunctionNotSupported = 0x00000054UL , KeyHandleInvalid = 0x00000060UL , KeySizeRange = 0x00000062UL ,
  KeyTypeInconsistent = 0x00000063UL , KeyNotNeeded = 0x00000064UL , KeyChanged = 0x00000065UL , KeyNeeded = 0x00000066UL ,
  KeyIndigestible = 0x00000067UL , KeyFunctionNotPermitted = 0x00000068UL , KeyNotWrappable = 0x00000069UL , KeyUnextractable = 0x0000006AUL ,
  MechanismInvalid = 0x00000070UL , MechanismParamInvalid = 0x00000071UL , ObjectHandleInvalid = 0x00000082UL , OperationActive = 0x00000090UL ,
  OperationNotInitialized = 0x00000091UL , PinIncorrect = 0x000000A0UL , PinInvalid = 0x000000A1UL , PinLenRange = 0x000000A2UL ,
  PinExpired = 0x000000A3UL , PinLocked = 0x000000A4UL , SessionClosed = 0x000000B0UL , SessionCount = 0x000000B1UL ,
  SessionHandleInvalid = 0x000000B3UL , SessionParallelNotSupported = 0x000000B4UL , SessionReadOnly = 0x000000B5UL , SessionExists = 0x000000B6UL ,
  SessionReadOnlyExists = 0x000000B7UL , SessionReadWriteSoExists = 0x000000B8UL , SignatureInvalid = 0x000000C0UL , SignatureLenRange = 0x000000C1UL ,
  TemplateIncomplete = 0x000000D0UL , TemplateInconsistent = 0x000000D1UL , TokenNotPresent = 0x000000E0UL , TokenNotRecognized = 0x000000E1UL ,
  TokenWriteProtected = 0x000000E2UL , UnwrappingKeyHandleInvalid = 0x000000F0UL , UnwrappingKeySizeRange = 0x000000F1UL , UnwrappingKeyTypeInconsistent = 0x000000F2UL ,
  UserAlreadyLoggedIn = 0x00000100UL , UserNotLoggedIn = 0x00000101UL , UserPinNotInitialized = 0x00000102UL , UserTypeInvalid = 0x00000103UL ,
  UserAnotherAlreadyLoggedIn = 0x00000104UL , UserTooManyTypes = 0x00000105UL , WrappedKeyInvalid = 0x00000110UL , WrappedKeyLenRange = 0x00000112UL ,
  WrappingKeyHandleInvalid = 0x00000113UL , WrappingKeySizeRange = 0x00000114UL , WrappingKeyTypeInconsistent = 0x00000115UL , RandomSeedNotSupported = 0x00000120UL ,
  RandomNoRng = 0x00000121UL , DomainParamsInvalid = 0x00000130UL , CurveNotSupported = 0x00000140UL , BufferTooSmall = 0x00000150UL ,
  SavedStateInvalid = 0x00000160UL , InformationSensitive = 0x00000170UL , StateUnsaveable = 0x00000180UL , CryptokiNotInitialized = 0x00000190UL ,
  CryptokiAlreadyInitialized = 0x00000191UL , MutexBad = 0x000001A0UL , MutexNotLocked = 0x000001A1UL , NewPinMode = 0x000001B0UL ,
  NextOtp = 0x000001B1UL , ExceededMaxIterations = 0x000001B5UL , FipsSelfTestFailed = 0x000001B6UL , LibraryLoadFailed = 0x000001B7UL ,
  PinTooWeak = 0x000001B8UL , PublicKeyInvalid = 0x000001B9UL , FunctionRejected = 0x00000200UL , TokenResourceExceeded = 0x00000201UL ,
  OperationCancelFailed = 0x00000202UL , KeyExhausted = 0x00000203UL , Pending = 0x00000204UL , SessionAsyncNotSupported = 0x00000205UL ,
  SeedRandomRequired = 0x00000206UL , OperationNotValidated = 0x00000207UL , TokenNotInitialized = 0x00000208UL , ParameterSetNotSupported = 0x00000209UL ,
  VendorDefined = 0x80000000UL
}
enum class  SessionState : CK_STATE {
  RoPublicSession = 0UL , RoUserFunctions = 1UL , RwPublicSession = 2UL , RwUserFunctions = 3UL ,
  RwSoFunctions = 4UL
}
enum class  SessionValidationFlagsType : CK_SESSION_VALIDATION_FLAGS_TYPE { LastValidationOk = 0x00000001UL }
enum class  SlhDsaParameterSet : CK_SLH_DSA_PARAMETER_SET_TYPE {
  SlhDsaSha2_128s = 0x00000001UL , SlhDsaShake128s = 0x00000002UL , SlhDsaSha2_128f = 0x00000003UL , SlhDsaShake128f = 0x00000004UL ,
  SlhDsaSha2_192s = 0x00000005UL , SlhDsaShake192s = 0x00000006UL , SlhDsaSha2_192f = 0x00000007UL , SlhDsaShake192f = 0x00000008UL ,
  SlhDsaSha2_256s = 0x00000009UL , SlhDsaShake256s = 0x0000000AUL , SlhDsaSha2_256f = 0x0000000BUL , SlhDsaShake256f = 0x0000000CUL
}
enum class  Sp800_108DkmLengthMethod : CK_SP800_108_DKM_LENGTH_METHOD { Sp800_108DkmLengthSumOfKeys = 0x00000001UL , Sp800_108DkmLengthSumOfSegments = 0x00000002UL }
enum class  Trust : CK_TRUST {
  TrustUnknown = 0x00000000UL , Trusted = 0x00000001UL , TrustAnchor = 0x00000002UL , NotTrusted = 0x00000003UL ,
  TrustMustVerifyTrust = 0x00000004UL
}
enum class  UserType : CK_USER_TYPE { SO = 0UL , User = 1UL , ContextSpecific = 2UL }
enum class  ValidationAuthorityType : CK_VALIDATION_AUTHORITY_TYPE { AuthorityTypeUnspecified = 0x00000000UL , AuthorityTypeNistCmvp = 0x00000001UL , AuthorityTypeCommonCriteria = 0x00000002UL }
enum class  ValidationType : CK_VALIDATION_TYPE {
  TypeUnspecified = 0x00000000UL , TypeSoftware = 0x00000001UL , TypeHardware = 0x00000002UL , TypeFirmware = 0x00000003UL ,
  TypeHybrid = 0x00000004UL
}

Functions

void change_pin (Slot &slot, const secure_string &old_pin, const secure_string &new_pin)
void change_so_pin (Slot &slot, const secure_string &old_so_pin, const secure_string &new_so_pin)
Flags flags (Flag flags)
void initialize_token (Slot &slot, std::string_view label, const secure_string &so_pin, const secure_string &pin)
Flag operator| (Flag a, Flag b)
void set_pin (Slot &slot, const secure_string &so_pin, const secure_string &pin)

Variables

const Bbool False = 0
ReturnValueThrowException = reinterpret_cast<ReturnValue*>(-1)
const Bbool True = 1

Typedef Documentation

◆ AsyncData

Definition at line 1219 of file p11.h.

◆ Attribute

Definition at line 1212 of file p11.h.

◆ Bbool

Definition at line 1201 of file p11.h.

◆ Byte

Definition at line 1214 of file p11.h.

◆ C_InitializeArgs

Definition at line 1193 of file p11.h.

◆ CreateMutex

Definition at line 1194 of file p11.h.

◆ Date

Definition at line 1218 of file p11.h.

◆ DestroyMutex

Definition at line 1195 of file p11.h.

◆ Ecdh1DeriveParams

◆ Flags

Definition at line 1198 of file p11.h.

◆ FunctionList

Definition at line 1187 of file p11.h.

◆ FunctionList30

Definition at line 1189 of file p11.h.

◆ FunctionList32

Definition at line 1190 of file p11.h.

◆ FunctionListPtr

Definition at line 1188 of file p11.h.

◆ Info

Definition at line 1199 of file p11.h.

◆ Interface

Definition at line 1191 of file p11.h.

◆ LockMutex

Definition at line 1196 of file p11.h.

◆ Mechanism

Definition at line 1206 of file p11.h.

◆ MechanismInfo

Definition at line 1207 of file p11.h.

◆ Notify

Definition at line 1209 of file p11.h.

◆ ObjectHandle

Definition at line 1213 of file p11.h.

◆ RsaPkcsOaepParams

◆ RsaPkcsPssParams

◆ secure_string

Definition at line 45 of file p11.h.

◆ SessionHandle

Definition at line 1210 of file p11.h.

◆ SessionInfo

Definition at line 1211 of file p11.h.

◆ SlotId

Definition at line 1202 of file p11.h.

◆ SlotInfo

Definition at line 1204 of file p11.h.

◆ TokenInfo

Definition at line 1205 of file p11.h.

◆ Ulong

Definition at line 1203 of file p11.h.

◆ UnlockMutex

Definition at line 1197 of file p11.h.

◆ Utf8Char

Definition at line 1208 of file p11.h.

◆ Version

Definition at line 1200 of file p11.h.

◆ VoidPtr

Definition at line 1192 of file p11.h.

Enumeration Type Documentation

◆ AttributeType

Enumerator
Class 
Token 
Private 
Label 
UniqueId 
Application 
Value 
ObjectId 
CertificateType 
Issuer 
SerialNumber 
AcIssuer 
Owner 
AttrTypes 
Trusted 
CertificateCategory 
JavaMidpSecurityDomain 
Url 
HashOfSubjectPublicKey 
HashOfIssuerPublicKey 
NameHashAlgorithm 
CheckValue 
KeyType 
Subject 
Id 
Sensitive 
Encrypt 
Decrypt 
Wrap 
Unwrap 
Sign 
SignRecover 
Verify 
VerifyRecover 
Derive 
StartDate 
EndDate 
Modulus 
ModulusBits 
PublicExponent 
PrivateExponent 
Prime1 
Prime2 
Exponent1 
Exponent2 
Coefficient 
PublicKeyInfo 
Prime 
Subprime 
Base 
PrimeBits 
SubprimeBits 
SubPrimeBits 
ValueBits 
ValueLen 
Extractable 
Local 
NeverExtractable 
AlwaysSensitive 
KeyGenMechanism 
Modifiable 
Copyable 
Destroyable 
EcdsaParams 
EcParams 
EcPoint 
SecondaryAuth 
AuthPinFlags 
AlwaysAuthenticate 
WrapWithTrusted 
WrapTemplate 
UnwrapTemplate 
DeriveTemplate 
OtpFormat 
OtpLength 
OtpTimeInterval 
OtpUserFriendlyMode 
OtpChallengeRequirement 
OtpTimeRequirement 
OtpCounterRequirement 
OtpPinRequirement 
OtpCounter 
OtpTime 
OtpUserIdentifier 
OtpServiceIdentifier 
OtpServiceLogo 
OtpServiceLogoType 
Gostr3410Params 
Gostr3411Params 
Gost28147Params 
HwFeatureType 
ResetOnInit 
HasReset 
PixelX 
PixelY 
Resolution 
CharRows 
CharColumns 
Color 
BitsPerPixel 
CharSets 
EncodingMethods 
MimeTypes 
MechanismType 
RequiredCmsAttributes 
DefaultCmsAttributes 
SupportedCmsAttributes 
AllowedMechanisms 
ProfileId 
X2ratchetBag 
X2ratchetBagsize 
X2ratchetBobs1stmsg 
X2ratchetCkr 
X2ratchetCks 
X2ratchetDhp 
X2ratchetDhr 
X2ratchetDhs 
X2ratchetHkr 
X2ratchetHks 
X2ratchetIsalice 
X2ratchetNhkr 
X2ratchetNhks 
X2ratchetNr 
X2ratchetNs 
X2ratchetPns 
X2ratchetRk 
HssLevels 
HssLmsType 
HssLmotsType 
HssLmsTypes 
HssLmotsTypes 
HssKeysRemaining 
ParameterSet 
ObjectValidationFlags 
ValidationType 
ValidationVersion 
ValidationLevel 
ValidationModuleId 
ValidationFlag 
ValidationAuthorityType 
ValidationCountry 
ValidationCertificateIdentifier 
ValidationCertificateUri 
ValidationVendorUri 
ValidationProfile 
EncapsulateTemplate 
DecapsulateTemplate 
TrustServerAuth 
TrustClientAuth 
TrustCodeSigning 
TrustEmailProtection 
TrustIpsecIke 
TrustTimeStamping 
TrustOcspSigning 
Encapsulate 
Decapsulate 
HashOfCertificate 
PublicCrc64Value 
Seed 
VendorDefined 

Definition at line 49 of file p11.h.

67 Url = CKA_URL,
74 Id = CKA_ID,
78 Wrap = CKA_WRAP,
80 Sign = CKA_SIGN,
99 Base = CKA_BASE,
113 EcdsaParams = CKA_ECDSA_PARAMS,
116 SecondaryAuth = CKA_SECONDARY_AUTH,
117 AuthPinFlags = CKA_AUTH_PIN_FLAGS,
208 Seed = CKA_SEED,
210};
JavaMidpSecurityDomain
Definition p11.h:252
CertificateType
Definition p11.h:212
ValidationAuthorityType
Definition p11.h:1169
OtpChallengeRequirement
Definition p11.h:246
CertificateCategory
Definition p11.h:221
#define CKA_NEVER_EXTRACTABLE
Definition pkcs11.h:196
#define CKA_PUBLIC_CRC64_VALUE
Definition pkcs11.h:289
#define CKA_JAVA_MIDP_SECURITY_DOMAIN
Definition pkcs11.h:155
#define CKA_OTP_TIME_INTERVAL
Definition pkcs11.h:208
#define CKA_TOKEN
Definition pkcs11.h:140
#define CKA_START_DATE
Definition pkcs11.h:174
#define CKA_TRUST_CODE_SIGNING
Definition pkcs11.h:281
#define CKA_OTP_SERVICE_IDENTIFIER
Definition pkcs11.h:217
#define CKA_SERIAL_NUMBER
Definition pkcs11.h:149
#define CKA_SUB_PRIME_BITS
Definition pkcs11.h:191
#define CKA_ISSUER
Definition pkcs11.h:148
#define CKA_HASH_OF_SUBJECT_PUBLIC_KEY
Definition pkcs11.h:157
#define CKA_TRUST_IPSEC_IKE
Definition pkcs11.h:283
#define CKA_UNIQUE_ID
Definition pkcs11.h:143
#define CKA_X2RATCHET_HKS
Definition pkcs11.h:250
#define CKA_VALIDATION_MODULE_ID
Definition pkcs11.h:269
#define CKA_SUPPORTED_CMS_ATTRIBUTES
Definition pkcs11.h:239
#define CKA_VALIDATION_LEVEL
Definition pkcs11.h:268
#define CKA_HSS_KEYS_REMAINING
Definition pkcs11.h:263
#define CKA_PROFILE_ID
Definition pkcs11.h:240
#define CKA_PRIVATE_EXPONENT
Definition pkcs11.h:179
#define CKA_RESOLUTION
Definition pkcs11.h:228
#define CKA_ID
Definition pkcs11.h:163
#define CKA_OBJECT_ID
Definition pkcs11.h:146
#define CKA_APPLICATION
Definition pkcs11.h:144
#define CKA_HSS_LMOTS_TYPES
Definition pkcs11.h:262
#define CKA_X2RATCHET_NHKR
Definition pkcs11.h:252
#define CKA_X2RATCHET_PNS
Definition pkcs11.h:256
#define CKA_HW_FEATURE_TYPE
Definition pkcs11.h:223
#define CKA_DECAPSULATE
Definition pkcs11.h:287
#define CKA_VERIFY_RECOVER
Definition pkcs11.h:172
#define CKA_TRUST_EMAIL_PROTECTION
Definition pkcs11.h:282
#define CKA_VALIDATION_AUTHORITY_TYPE
Definition pkcs11.h:271
#define CKA_PUBLIC_EXPONENT
Definition pkcs11.h:178
#define CKA_VALIDATION_COUNTRY
Definition pkcs11.h:272
#define CKA_MODIFIABLE
Definition pkcs11.h:199
#define CKA_ENCAPSULATE
Definition pkcs11.h:286
#define CKA_OTP_TIME_REQUIREMENT
Definition pkcs11.h:211
#define CKA_X2RATCHET_BAGSIZE
Definition pkcs11.h:242
#define CKA_VALIDATION_PROFILE
Definition pkcs11.h:276
#define CKA_BITS_PER_PIXEL
Definition pkcs11.h:232
#define CKA_AC_ISSUER
Definition pkcs11.h:150
#define CKA_OTP_USER_IDENTIFIER
Definition pkcs11.h:216
#define CKA_DECAPSULATE_TEMPLATE
Definition pkcs11.h:278
#define CKA_CHECK_VALUE
Definition pkcs11.h:160
#define CKA_PUBLIC_KEY_INFO
Definition pkcs11.h:185
#define CKA_X2RATCHET_HKR
Definition pkcs11.h:249
#define CKA_OTP_USER_FRIENDLY_MODE
Definition pkcs11.h:209
#define CKA_PRIME
Definition pkcs11.h:186
#define CKA_MODULUS
Definition pkcs11.h:176
#define CKA_PRIVATE
Definition pkcs11.h:141
#define CKA_PRIME_1
Definition pkcs11.h:180
#define CKA_NAME_HASH_ALGORITHM
Definition pkcs11.h:159
#define CKA_TRUST_OCSP_SIGNING
Definition pkcs11.h:285
#define CKA_OTP_SERVICE_LOGO_TYPE
Definition pkcs11.h:219
#define CKA_OTP_CHALLENGE_REQUIREMENT
Definition pkcs11.h:210
#define CKA_OTP_FORMAT
Definition pkcs11.h:206
#define CKA_EC_POINT
Definition pkcs11.h:203
#define CKA_HSS_LMS_TYPES
Definition pkcs11.h:261
#define CKA_SENSITIVE
Definition pkcs11.h:164
#define CKA_SIGN_RECOVER
Definition pkcs11.h:170
#define CKA_X2RATCHET_CKS
Definition pkcs11.h:245
#define CKA_X2RATCHET_BOBS1STMSG
Definition pkcs11.h:243
#define CKA_EXPONENT_1
Definition pkcs11.h:182
#define CKA_SIGN
Definition pkcs11.h:169
#define CKA_X2RATCHET_NHKS
Definition pkcs11.h:253
#define CKA_EXPONENT_2
Definition pkcs11.h:183
#define CKA_VALUE
Definition pkcs11.h:145
#define CKA_URL
Definition pkcs11.h:156
#define CKA_LOCAL
Definition pkcs11.h:195
#define CKA_RESET_ON_INIT
Definition pkcs11.h:224
#define CKA_VERIFY
Definition pkcs11.h:171
#define CKA_OTP_PIN_REQUIREMENT
Definition pkcs11.h:213
#define CKA_X2RATCHET_NS
Definition pkcs11.h:255
#define CKA_ALLOWED_MECHANISMS
Definition pkcs11.h:296
#define CKA_X2RATCHET_NR
Definition pkcs11.h:254
#define CKA_VALIDATION_CERTIFICATE_URI
Definition pkcs11.h:274
#define CKA_OTP_COUNTER_REQUIREMENT
Definition pkcs11.h:212
#define CKA_COPYABLE
Definition pkcs11.h:200
#define CKA_PRIME_2
Definition pkcs11.h:181
#define CKA_X2RATCHET_ISALICE
Definition pkcs11.h:251
#define CKA_TRUST_SERVER_AUTH
Definition pkcs11.h:279
#define CKA_COLOR
Definition pkcs11.h:231
#define CKA_UNWRAP
Definition pkcs11.h:168
#define CKA_TRUSTED
Definition pkcs11.h:153
#define CKA_WRAP_WITH_TRUSTED
Definition pkcs11.h:205
#define CKA_HSS_LMS_TYPE
Definition pkcs11.h:259
#define CKA_DECRYPT
Definition pkcs11.h:166
#define CKA_OTP_LENGTH
Definition pkcs11.h:207
#define CKA_KEY_TYPE
Definition pkcs11.h:161
#define CKA_ALWAYS_AUTHENTICATE
Definition pkcs11.h:204
#define CKA_VALUE_LEN
Definition pkcs11.h:193
#define CKA_CHAR_ROWS
Definition pkcs11.h:229
#define CKA_PARAMETER_SET
Definition pkcs11.h:264
#define CKA_GOST28147_PARAMS
Definition pkcs11.h:222
#define CKA_TRUST_CLIENT_AUTH
Definition pkcs11.h:280
#define CKA_VALIDATION_FLAG
Definition pkcs11.h:270
#define CKA_HSS_LMOTS_TYPE
Definition pkcs11.h:260
#define CKA_VALUE_BITS
Definition pkcs11.h:192
#define CKA_COEFFICIENT
Definition pkcs11.h:184
#define CKA_OWNER
Definition pkcs11.h:151
#define CKA_DESTROYABLE
Definition pkcs11.h:201
#define CKA_SUBPRIME
Definition pkcs11.h:187
#define CKA_DERIVE
Definition pkcs11.h:173
#define CKA_REQUIRED_CMS_ATTRIBUTES
Definition pkcs11.h:237
#define CKA_VALIDATION_TYPE
Definition pkcs11.h:266
#define CKA_MIME_TYPES
Definition pkcs11.h:235
#define CKA_CERTIFICATE_CATEGORY
Definition pkcs11.h:154
#define CKA_X2RATCHET_BAG
Definition pkcs11.h:241
#define CKA_GOSTR3410_PARAMS
Definition pkcs11.h:220
#define CKA_ALWAYS_SENSITIVE
Definition pkcs11.h:197
#define CKA_VENDOR_DEFINED
Definition pkcs11.h:291
#define CKA_OTP_TIME
Definition pkcs11.h:215
#define CKA_TRUST_TIME_STAMPING
Definition pkcs11.h:284
#define CKA_END_DATE
Definition pkcs11.h:175
#define CKA_ATTR_TYPES
Definition pkcs11.h:152
#define CKA_CERTIFICATE_TYPE
Definition pkcs11.h:147
#define CKA_HASH_OF_ISSUER_PUBLIC_KEY
Definition pkcs11.h:158
#define CKA_X2RATCHET_DHP
Definition pkcs11.h:246
#define CKA_MODULUS_BITS
Definition pkcs11.h:177
#define CKA_LABEL
Definition pkcs11.h:142
#define CKA_EXTRACTABLE
Definition pkcs11.h:194
#define CKA_ENCODING_METHODS
Definition pkcs11.h:234
#define CKA_HASH_OF_CERTIFICATE
Definition pkcs11.h:288
#define CKA_ENCRYPT
Definition pkcs11.h:165
#define CKA_SUBPRIME_BITS
Definition pkcs11.h:190
#define CKA_PIXEL_X
Definition pkcs11.h:226
#define CKA_DEFAULT_CMS_ATTRIBUTES
Definition pkcs11.h:238
#define CKA_GOSTR3411_PARAMS
Definition pkcs11.h:221
CK_ULONG CK_ATTRIBUTE_TYPE
Definition pkcs11.h:44
#define CKA_CHAR_COLUMNS
Definition pkcs11.h:230
#define CKA_HSS_LEVELS
Definition pkcs11.h:258
#define CKA_UNWRAP_TEMPLATE
Definition pkcs11.h:294
#define CKA_KEY_GEN_MECHANISM
Definition pkcs11.h:198
#define CKA_OBJECT_VALIDATION_FLAGS
Definition pkcs11.h:265
#define CKA_ENCAPSULATE_TEMPLATE
Definition pkcs11.h:277
#define CKA_PIXEL_Y
Definition pkcs11.h:227
#define CKA_WRAP_TEMPLATE
Definition pkcs11.h:293
#define CKA_PRIME_BITS
Definition pkcs11.h:189
#define CKA_OTP_COUNTER
Definition pkcs11.h:214
#define CKA_CHAR_SETS
Definition pkcs11.h:233
#define CKA_VALIDATION_VENDOR_URI
Definition pkcs11.h:275
#define CKA_MECHANISM_TYPE
Definition pkcs11.h:236
#define CKA_BASE
Definition pkcs11.h:188
#define CKA_X2RATCHET_RK
Definition pkcs11.h:257
#define CKA_VALIDATION_CERTIFICATE_IDENTIFIER
Definition pkcs11.h:273
#define CKA_VALIDATION_VERSION
Definition pkcs11.h:267
#define CKA_X2RATCHET_CKR
Definition pkcs11.h:244
#define CKA_X2RATCHET_DHS
Definition pkcs11.h:248
#define CKA_EC_PARAMS
Definition pkcs11.h:202
#define CKA_X2RATCHET_DHR
Definition pkcs11.h:247
#define CKA_WRAP
Definition pkcs11.h:167
#define CKA_CLASS
Definition pkcs11.h:139
#define CKA_DERIVE_TEMPLATE
Definition pkcs11.h:295
#define CKA_SEED
Definition pkcs11.h:290
#define CKA_HAS_RESET
Definition pkcs11.h:225
#define CKA_OTP_SERVICE_LOGO
Definition pkcs11.h:218
#define CKA_SUBJECT
Definition pkcs11.h:162

◆ CertificateCategory

Indicates if a stored certificate is a user certificate for which the corresponding private key is available on the token ("token user"), a CA certificate ("authority"), or another end-entity certificate ("other entity").

Enumerator
Unspecified 
TokenUser 
Authority 
OtherEntity 

Definition at line 221 of file p11.h.

◆ CertificateType

Enumerator
X509 
X509AttrCert 
Wtls 
VendorDefined 

Definition at line 212 of file p11.h.

213 X509 = CKC_X_509,
215 Wtls = CKC_WTLS,
217};
#define CKC_VENDOR_DEFINED
Definition pkcs11.h:308
#define CKC_WTLS
Definition pkcs11.h:307
#define CKC_X_509
Definition pkcs11.h:305
#define CKC_X_509_ATTR_CERT
Definition pkcs11.h:306
CK_ULONG CK_CERTIFICATE_TYPE
Definition pkcs11.h:46

◆ Flag

enum class Botan::PKCS11::Flag : CK_FLAGS
strong
Enumerator
None 
TokenPresent 
RemovableDevice 
HwSlot 
Rng 
WriteProtected 
LoginRequired 
UserPinInitialized 
RestoreKeyNotNeeded 
ClockOnToken 
ProtectedAuthenticationPath 
DualCryptoOperations 
TokenInitialized 
SecondaryAuthentication 
UserPinCountLow 
UserPinFinalTry 
UserPinLocked 
UserPinToBeChanged 
SoPinCountLow 
SoPinFinalTry 
SoPinLocked 
SoPinToBeChanged 
ErrorState 
SeedRandomRequired 
AsyncSessionSupported 
RwSession 
SerialSession 
AsyncSession 
ArrayAttribute 
Hw 
MessageEncrypt 
MessageDecrypt 
MessageSign 
MessageVerify 
MultiMessage 
FindObjects 
Encrypt 
Decrypt 
Digest 
Sign 
SignRecover 
Verify 
VerifyRecover 
Generate 
GenerateKeyPair 
Wrap 
Unwrap 
Derive 
EcFP 
EcF2m 
EcEcparameters 
EcOid 
EcNamedcurve 
EcUncompress 
EcCompress 
EcCurvename 
Encapsulate 
Decapsulate 
Extension 
EndOfMessage 
InterfaceForkSafe 
LibraryCantCreateOsThreads 
OsLockingOk 
DontBlock 
NextOtp 
ExcludeTime 
ExcludeCounter 
ExcludeChallenge 
ExcludePin 
UserFriendlyOtp 
HkdfSaltNull 
HkdfSaltData 
HkdfSaltKey 

Definition at line 301 of file p11.h.

301 : CK_FLAGS {
302 None = 0,
306 Rng = CKF_RNG,
331 Hw = CKF_HW,
341 Sign = CKF_SIGN,
347 Wrap = CKF_WRAP,
354 EcNamedcurve = CKF_EC_NAMEDCURVE,
375};
@ LibraryCantCreateOsThreads
Definition p11.h:363
@ AsyncSessionSupported
Definition p11.h:326
@ ProtectedAuthenticationPath
Definition p11.h:312
@ SecondaryAuthentication
Definition p11.h:315
#define CKF_LOGIN_REQUIRED
Definition pkcs11.h:416
#define CKF_HW_SLOT
Definition pkcs11.h:411
#define CKF_EC_UNCOMPRESS
Definition pkcs11.h:378
#define CKF_LIBRARY_CANT_CREATE_OS_THREADS
Definition pkcs11.h:342
#define CKF_PROTECTED_AUTHENTICATION_PATH
Definition pkcs11.h:420
#define CKF_DECAPSULATE
Definition pkcs11.h:382
#define CKF_TOKEN_INITIALIZED
Definition pkcs11.h:422
#define CKF_MESSAGE_ENCRYPT
Definition pkcs11.h:355
#define CKF_DIGEST
Definition pkcs11.h:364
#define CKF_USER_PIN_FINAL_TRY
Definition pkcs11.h:425
#define CKF_DERIVE
Definition pkcs11.h:373
#define CKF_VERIFY
Definition pkcs11.h:367
#define CKF_END_OF_MESSAGE
Definition pkcs11.h:390
#define CKF_ASYNC_SESSION
Definition pkcs11.h:406
#define CKF_EC_F_2M
Definition pkcs11.h:375
#define CKF_USER_PIN_INITIALIZED
Definition pkcs11.h:417
#define CKF_RW_SESSION
Definition pkcs11.h:404
CK_ULONG CK_FLAGS
Definition pkcs11.h:49
#define CKF_WRAP
Definition pkcs11.h:371
#define CKF_EXTENSION
Definition pkcs11.h:383
#define CKF_EC_F_P
Definition pkcs11.h:374
#define CKF_SEED_RANDOM_REQUIRED
Definition pkcs11.h:433
#define CKF_MULTI_MESSAGE
Definition pkcs11.h:359
#define CKF_GENERATE_KEY_PAIR
Definition pkcs11.h:370
#define CKF_SIGN_RECOVER
Definition pkcs11.h:366
#define CKF_REMOVABLE_DEVICE
Definition pkcs11.h:410
#define CKF_SECONDARY_AUTHENTICATION
Definition pkcs11.h:423
#define CKF_HKDF_SALT_DATA
Definition pkcs11.h:347
#define CKF_USER_FRIENDLY_OTP
Definition pkcs11.h:398
#define CKF_USER_PIN_COUNT_LOW
Definition pkcs11.h:424
#define CKF_EXCLUDE_COUNTER
Definition pkcs11.h:395
#define CKF_ENCRYPT
Definition pkcs11.h:362
#define CKF_OS_LOCKING_OK
Definition pkcs11.h:343
#define CKF_EC_ECPARAMETERS
Definition pkcs11.h:376
#define CKF_EC_OID
Definition pkcs11.h:377
#define CKF_EC_CURVENAME
Definition pkcs11.h:380
#define CKF_SERIAL_SESSION
Definition pkcs11.h:405
#define CKF_ENCAPSULATE
Definition pkcs11.h:381
#define CKF_DUAL_CRYPTO_OPERATIONS
Definition pkcs11.h:421
#define CKF_SO_PIN_TO_BE_CHANGED
Definition pkcs11.h:431
#define CKF_ARRAY_ATTRIBUTE
Definition pkcs11.h:339
#define CKF_HKDF_SALT_KEY
Definition pkcs11.h:348
#define CKF_EXCLUDE_CHALLENGE
Definition pkcs11.h:396
#define CKF_RNG
Definition pkcs11.h:414
#define CKF_HKDF_SALT_NULL
Definition pkcs11.h:346
#define CKF_SIGN
Definition pkcs11.h:365
#define CKF_GENERATE
Definition pkcs11.h:369
#define CKF_SO_PIN_FINAL_TRY
Definition pkcs11.h:429
#define CKF_EXCLUDE_PIN
Definition pkcs11.h:397
#define CKF_MESSAGE_DECRYPT
Definition pkcs11.h:356
#define CKF_RESTORE_KEY_NOT_NEEDED
Definition pkcs11.h:418
#define CKF_UNWRAP
Definition pkcs11.h:372
#define CKF_USER_PIN_TO_BE_CHANGED
Definition pkcs11.h:427
#define CKF_SO_PIN_LOCKED
Definition pkcs11.h:430
#define CKF_DECRYPT
Definition pkcs11.h:363
#define CKF_EC_COMPRESS
Definition pkcs11.h:379
#define CKF_SO_PIN_COUNT_LOW
Definition pkcs11.h:428
#define CKF_USER_PIN_LOCKED
Definition pkcs11.h:426
#define CKF_FIND_OBJECTS
Definition pkcs11.h:361
#define CKF_TOKEN_PRESENT
Definition pkcs11.h:409
#define CKF_INTERFACE_FORK_SAFE
Definition pkcs11.h:351
#define CKF_HW
Definition pkcs11.h:354
#define CKF_EXCLUDE_TIME
Definition pkcs11.h:394
#define CKF_VERIFY_RECOVER
Definition pkcs11.h:368
#define CKF_CLOCK_ON_TOKEN
Definition pkcs11.h:419
#define CKF_MESSAGE_VERIFY
Definition pkcs11.h:358
#define CKF_ERROR_STATE
Definition pkcs11.h:432
#define CKF_WRITE_PROTECTED
Definition pkcs11.h:415
#define CKF_ASYNC_SESSION_SUPPORTED
Definition pkcs11.h:434
#define CKF_MESSAGE_SIGN
Definition pkcs11.h:357
#define CKF_NEXT_OTP
Definition pkcs11.h:393
#define CKF_DONT_BLOCK
Definition pkcs11.h:401

◆ GeneratorFunction

Enumerator
NoGenerate 
Generate 
GenerateCounter 
GenerateRandom 
GenerateCounterXor 

Definition at line 382 of file p11.h.

388};
#define CKG_NO_GENERATE
Definition pkcs11.h:437
CK_ULONG CK_GENERATOR_FUNCTION
Definition pkcs11.h:50
#define CKG_GENERATE_COUNTER_XOR
Definition pkcs11.h:441
#define CKG_GENERATE
Definition pkcs11.h:438
#define CKG_GENERATE_COUNTER
Definition pkcs11.h:439
#define CKG_GENERATE_RANDOM
Definition pkcs11.h:440

◆ HardwareType

Enumerator
MonotonicCounter 
Clock 
UserInterface 
VendorDefined 

Definition at line 403 of file p11.h.

408};
#define CKH_MONOTONIC_COUNTER
Definition pkcs11.h:455
#define CKH_CLOCK
Definition pkcs11.h:456
#define CKH_VENDOR_DEFINED
Definition pkcs11.h:458
CK_ULONG CK_HW_FEATURE_TYPE
Definition pkcs11.h:53
#define CKH_USER_INTERFACE
Definition pkcs11.h:457

◆ HedgeType

Enumerator
HedgePreferred 
HedgeRequired 
DeterministicRequired 

Definition at line 410 of file p11.h.

410 : CK_HEDGE_TYPE {
414};
#define CKH_DETERMINISTIC_REQUIRED
Definition pkcs11.h:463
#define CKH_HEDGE_REQUIRED
Definition pkcs11.h:462
#define CKH_HEDGE_PREFERRED
Definition pkcs11.h:461
CK_ULONG CK_HEDGE_TYPE
Definition pkcs11.h:51

◆ JavaMidpSecurityDomain

Enumerator
SecurityDomainUnspecified 
SecurityDomainManufacturer 
SecurityDomainOperator 
SecurityDomainThirdParty 

Definition at line 252 of file p11.h.

◆ KeyDerivation

Enumerator
Null 
Sha1Kdf 
Sha1KdfAsn1 
Sha1KdfConcatenate 
Sha224Kdf 
Sha256Kdf 
Sha384Kdf 
Sha512Kdf 
CpdiversifyKdf 
Sha3_224Kdf 
Sha3_256Kdf 
Sha3_384Kdf 
Sha3_512Kdf 
Sha1KdfSp800 
Sha224KdfSp800 
Sha256KdfSp800 
Sha384KdfSp800 
Sha512KdfSp800 
Sha3_224KdfSp800 
Sha3_256KdfSp800 
Sha3_384KdfSp800 
Sha3_512KdfSp800 
Blake2b160Kdf 
Blake2b256Kdf 
Blake2b384Kdf 
Blake2b512Kdf 

Definition at line 272 of file p11.h.

272 : CK_ULONG {
273 Null = CKD_NULL,
299};
#define CKD_NULL
Definition pkcs11.h:311
#define CKD_SHA1_KDF
Definition pkcs11.h:312
#define CKD_SHA256_KDF
Definition pkcs11.h:316
#define CKD_SHA3_512_KDF
Definition pkcs11.h:323
#define CKD_SHA512_KDF
Definition pkcs11.h:318
#define CKD_SHA1_KDF_ASN1
Definition pkcs11.h:313
#define CKD_SHA512_KDF_SP800
Definition pkcs11.h:328
unsigned long int CK_ULONG
Definition pkcs11.h:20
#define CKD_BLAKE2B_384_KDF
Definition pkcs11.h:335
#define CKD_SHA3_256_KDF
Definition pkcs11.h:321
#define CKD_BLAKE2B_512_KDF
Definition pkcs11.h:336
#define CKD_SHA384_KDF_SP800
Definition pkcs11.h:327
#define CKD_SHA256_KDF_SP800
Definition pkcs11.h:326
#define CKD_CPDIVERSIFY_KDF
Definition pkcs11.h:319
#define CKD_SHA384_KDF
Definition pkcs11.h:317
#define CKD_SHA1_KDF_CONCATENATE
Definition pkcs11.h:314
#define CKD_SHA3_512_KDF_SP800
Definition pkcs11.h:332
#define CKD_SHA3_384_KDF_SP800
Definition pkcs11.h:331
#define CKD_SHA3_384_KDF
Definition pkcs11.h:322
#define CKD_SHA3_224_KDF_SP800
Definition pkcs11.h:329
#define CKD_SHA1_KDF_SP800
Definition pkcs11.h:324
#define CKD_SHA3_224_KDF
Definition pkcs11.h:320
#define CKD_BLAKE2B_256_KDF
Definition pkcs11.h:334
#define CKD_SHA224_KDF
Definition pkcs11.h:315
#define CKD_BLAKE2B_160_KDF
Definition pkcs11.h:333
#define CKD_SHA3_256_KDF_SP800
Definition pkcs11.h:330
#define CKD_SHA224_KDF_SP800
Definition pkcs11.h:325

◆ KeyType

enum class Botan::PKCS11::KeyType : CK_KEY_TYPE
strong
Enumerator
Rsa 
Dsa 
Dh 
Ecdsa 
Ec 
X942Dh 
Kea 
GenericSecret 
Rc2 
Rc4 
Des 
Des2 
Des3 
Cast 
Cast3 
Cast5 
Cast128 
Rc5 
Idea 
Skipjack 
Baton 
Juniper 
Cdmf 
Aes 
Blowfish 
Twofish 
Securid 
Hotp 
Acti 
Camellia 
Aria 
Md5Hmac 
Sha1Hmac 
Ripemd128Hmac 
Ripemd160Hmac 
Sha256Hmac 
Sha384Hmac 
Sha512Hmac 
Sha224Hmac 
Seed 
Gostr3410 
Gostr3411 
Gost28147 
Chacha20 
Poly1305 
AesXts 
Sha3_224Hmac 
Sha3_256Hmac 
Sha3_384Hmac 
Sha3_512Hmac 
Blake2b160Hmac 
Blake2b256Hmac 
Blake2b384Hmac 
Blake2b512Hmac 
Salsa20 
X2ratchet 
EcEdwards 
EcMontgomery 
Hkdf 
Sha512_224Hmac 
Sha512_256Hmac 
Sha512THmac 
Hss 
Xmss 
Xmssmt 
MlKem 
MlDsa 
SlhDsa 
VendorDefined 

Definition at line 416 of file p11.h.

416 : CK_KEY_TYPE {
417 Rsa = CKK_RSA,
418 Dsa = CKK_DSA,
419 Dh = CKK_DH,
420 Ecdsa = CKK_ECDSA,
421 Ec = CKK_EC,
423 Kea = CKK_KEA,
425 Rc2 = CKK_RC2,
426 Rc4 = CKK_RC4,
427 Des = CKK_DES,
428 Des2 = CKK_DES2,
429 Des3 = CKK_DES3,
430 Cast = CKK_CAST,
432 Cast5 = CKK_CAST5,
434 Rc5 = CKK_RC5,
435 Idea = CKK_IDEA,
439 Cdmf = CKK_CDMF,
440 Aes = CKK_AES,
444 Hotp = CKK_HOTP,
445 Acti = CKK_ACTI,
447 Aria = CKK_ARIA,
456 Seed = CKK_SEED,
475 Hkdf = CKK_HKDF,
479 Hss = CKK_HSS,
480 Xmss = CKK_XMSS,
486};
#define CKK_BLAKE2B_160_HMAC
Definition pkcs11.h:514
#define CKK_DES3
Definition pkcs11.h:477
#define CKK_RC4
Definition pkcs11.h:474
#define CKK_SHA3_256_HMAC
Definition pkcs11.h:511
#define CKK_HKDF
Definition pkcs11.h:522
#define CKK_SHA224_HMAC
Definition pkcs11.h:502
#define CKK_DH
Definition pkcs11.h:468
#define CKK_RC5
Definition pkcs11.h:481
#define CKK_BLAKE2B_256_HMAC
Definition pkcs11.h:515
#define CKK_DES2
Definition pkcs11.h:476
#define CKK_SHA256_HMAC
Definition pkcs11.h:499
#define CKK_SHA512_T_HMAC
Definition pkcs11.h:525
#define CKK_SHA3_384_HMAC
Definition pkcs11.h:512
#define CKK_CAST128
Definition pkcs11.h:480
#define CKK_RSA
Definition pkcs11.h:466
#define CKK_CAMELLIA
Definition pkcs11.h:493
#define CKK_SEED
Definition pkcs11.h:503
#define CKK_KEA
Definition pkcs11.h:471
#define CKK_SHA512_224_HMAC
Definition pkcs11.h:523
#define CKK_BLOWFISH
Definition pkcs11.h:488
#define CKK_DES
Definition pkcs11.h:475
#define CKK_ACTI
Definition pkcs11.h:492
#define CKK_SLH_DSA
Definition pkcs11.h:531
#define CKK_RIPEMD160_HMAC
Definition pkcs11.h:498
#define CKK_JUNIPER
Definition pkcs11.h:485
#define CKK_CHACHA20
Definition pkcs11.h:507
#define CKK_XMSS
Definition pkcs11.h:527
#define CKK_IDEA
Definition pkcs11.h:482
#define CKK_DSA
Definition pkcs11.h:467
#define CKK_BATON
Definition pkcs11.h:484
#define CKK_GOSTR3410
Definition pkcs11.h:504
CK_ULONG CK_KEY_TYPE
Definition pkcs11.h:55
#define CKK_AES_XTS
Definition pkcs11.h:509
#define CKK_GOSTR3411
Definition pkcs11.h:505
#define CKK_BLAKE2B_384_HMAC
Definition pkcs11.h:516
#define CKK_CAST
Definition pkcs11.h:478
#define CKK_RC2
Definition pkcs11.h:473
#define CKK_SHA384_HMAC
Definition pkcs11.h:500
#define CKK_EC_EDWARDS
Definition pkcs11.h:520
#define CKK_RIPEMD128_HMAC
Definition pkcs11.h:497
#define CKK_POLY1305
Definition pkcs11.h:508
#define CKK_GENERIC_SECRET
Definition pkcs11.h:472
#define CKK_SALSA20
Definition pkcs11.h:518
#define CKK_CAST3
Definition pkcs11.h:479
#define CKK_SHA3_512_HMAC
Definition pkcs11.h:513
#define CKK_SKIPJACK
Definition pkcs11.h:483
#define CKK_HSS
Definition pkcs11.h:526
#define CKK_VENDOR_DEFINED
Definition pkcs11.h:532
#define CKK_HOTP
Definition pkcs11.h:491
#define CKK_EC_MONTGOMERY
Definition pkcs11.h:521
#define CKK_SECURID
Definition pkcs11.h:490
#define CKK_ML_KEM
Definition pkcs11.h:529
#define CKK_X2RATCHET
Definition pkcs11.h:519
#define CKK_CDMF
Definition pkcs11.h:486
#define CKK_ML_DSA
Definition pkcs11.h:530
#define CKK_GOST28147
Definition pkcs11.h:506
#define CKK_SHA512_256_HMAC
Definition pkcs11.h:524
#define CKK_TWOFISH
Definition pkcs11.h:489
#define CKK_BLAKE2B_512_HMAC
Definition pkcs11.h:517
#define CKK_SHA3_224_HMAC
Definition pkcs11.h:510
#define CKK_XMSSMT
Definition pkcs11.h:528
#define CKK_EC
Definition pkcs11.h:469
#define CKK_ARIA
Definition pkcs11.h:494
#define CKK_MD5_HMAC
Definition pkcs11.h:495
#define CKK_SHA_1_HMAC
Definition pkcs11.h:496
#define CKK_AES
Definition pkcs11.h:487
#define CKK_X9_42_DH
Definition pkcs11.h:470
#define CKK_SHA512_HMAC
Definition pkcs11.h:501

◆ MechanismType

Enumerator
RsaPkcsKeyPairGen 
RsaPkcs 
Rsa9796 
RsaX509 
Md2RsaPkcs 
Md5RsaPkcs 
Sha1RsaPkcs 
Ripemd128RsaPkcs 
Ripemd160RsaPkcs 
RsaPkcsOaep 
RsaX931KeyPairGen 
RsaX931 
Sha1RsaX931 
RsaPkcsPss 
Sha1RsaPkcsPss 
DsaKeyPairGen 
Dsa 
DsaSha1 
DsaSha224 
DsaSha256 
DsaSha384 
DsaSha512 
DsaSha3_224 
DsaSha3_256 
DsaSha3_384 
DsaSha3_512 
DhPkcsKeyPairGen 
DhPkcsDerive 
X942DhKeyPairGen 
X942DhDerive 
X942DhHybridDerive 
X942MqvDerive 
Sha256RsaPkcs 
Sha384RsaPkcs 
Sha512RsaPkcs 
Sha256RsaPkcsPss 
Sha384RsaPkcsPss 
Sha512RsaPkcsPss 
Sha224RsaPkcs 
Sha224RsaPkcsPss 
Sha512224 
Sha512224Hmac 
Sha512224HmacGeneral 
Sha512224KeyDerivation 
Sha512256 
Sha512256Hmac 
Sha512256HmacGeneral 
Sha512256KeyDerivation 
Sha512T 
Sha512THmac 
Sha512THmacGeneral 
Sha512TKeyDerivation 
Sha3_256RsaPkcs 
Sha3_384RsaPkcs 
Sha3_512RsaPkcs 
Sha3_256RsaPkcsPss 
Sha3_384RsaPkcsPss 
Sha3_512RsaPkcsPss 
Sha3_224RsaPkcs 
Sha3_224RsaPkcsPss 
Rc2KeyGen 
Rc2Ecb 
Rc2Cbc 
Rc2Mac 
Rc2MacGeneral 
Rc2CbcPad 
Rc4KeyGen 
Rc4 
DesKeyGen 
DesEcb 
DesCbc 
DesMac 
DesMacGeneral 
DesCbcPad 
Des2KeyGen 
Des3KeyGen 
Des3Ecb 
Des3Cbc 
Des3Mac 
Des3MacGeneral 
Des3CbcPad 
Des3CmacGeneral 
Des3Cmac 
CdmfKeyGen 
CdmfEcb 
CdmfCbc 
CdmfMac 
CdmfMacGeneral 
CdmfCbcPad 
DesOfb64 
DesOfb8 
DesCfb64 
DesCfb8 
Md2 
Md2Hmac 
Md2HmacGeneral 
Md5 
Md5Hmac 
Md5HmacGeneral 
Sha1 
Sha1Hmac 
Sha1HmacGeneral 
Ripemd128 
Ripemd128Hmac 
Ripemd128HmacGeneral 
Ripemd160 
Ripemd160Hmac 
Ripemd160HmacGeneral 
Sha256 
Sha256Hmac 
Sha256HmacGeneral 
Sha224 
Sha224Hmac 
Sha224HmacGeneral 
Sha384 
Sha384Hmac 
Sha384HmacGeneral 
Sha512 
Sha512Hmac 
Sha512HmacGeneral 
SecuridKeyGen 
Securid 
HotpKeyGen 
Hotp 
Acti 
ActiKeyGen 
Sha3_256 
Sha3_256Hmac 
Sha3_256HmacGeneral 
Sha3_256KeyGen 
Sha3_224 
Sha3_224Hmac 
Sha3_224HmacGeneral 
Sha3_224KeyGen 
Sha3_384 
Sha3_384Hmac 
Sha3_384HmacGeneral 
Sha3_384KeyGen 
Sha3_512 
Sha3_512Hmac 
Sha3_512HmacGeneral 
Sha3_512KeyGen 
CastKeyGen 
CastEcb 
CastCbc 
CastMac 
CastMacGeneral 
CastCbcPad 
Cast3KeyGen 
Cast3Ecb 
Cast3Cbc 
Cast3Mac 
Cast3MacGeneral 
Cast3CbcPad 
Cast5KeyGen 
Cast128KeyGen 
Cast5Ecb 
Cast128Ecb 
Cast5Cbc 
Cast128Cbc 
Cast5Mac 
Cast128Mac 
Cast5MacGeneral 
Cast128MacGeneral 
Cast5CbcPad 
Cast128CbcPad 
Rc5KeyGen 
Rc5Ecb 
Rc5Cbc 
Rc5Mac 
Rc5MacGeneral 
Rc5CbcPad 
IdeaKeyGen 
IdeaEcb 
IdeaCbc 
IdeaMac 
IdeaMacGeneral 
IdeaCbcPad 
GenericSecretKeyGen 
ConcatenateBaseAndKey 
ConcatenateBaseAndData 
ConcatenateDataAndBase 
XorBaseAndData 
ExtractKeyFromKey 
Ssl3PreMasterKeyGen 
Ssl3MasterKeyDerive 
Ssl3KeyAndMacDerive 
Ssl3MasterKeyDeriveDh 
TlsPreMasterKeyGen 
TlsMasterKeyDerive 
TlsKeyAndMacDerive 
TlsMasterKeyDeriveDh 
TlsPrf 
Ssl3Md5Mac 
Ssl3Sha1Mac 
Md5KeyDerivation 
Md2KeyDerivation 
Sha1KeyDerivation 
Sha256KeyDerivation 
Sha384KeyDerivation 
Sha512KeyDerivation 
Sha224KeyDerivation 
Sha3_256KeyDerivation 
Sha3_224KeyDerivation 
Sha3_384KeyDerivation 
Sha3_512KeyDerivation 
Shake128KeyDerivation 
Shake256KeyDerivation 
PbeMd2DesCbc 
PbeMd5DesCbc 
PbeMd5CastCbc 
PbeMd5Cast3Cbc 
PbeMd5Cast5Cbc 
PbeMd5Cast128Cbc 
PbeSha1Cast5Cbc 
PbeSha1Cast128Cbc 
PbeSha1Rc4128 
PbeSha1Rc440 
PbeSha1Des3EdeCbc 
PbeSha1Des2EdeCbc 
PbeSha1Rc2128Cbc 
PbeSha1Rc240Cbc 
Pkcs5Pbkd2 
PbaSha1WithSha1Hmac 
WtlsPreMasterKeyGen 
WtlsMasterKeyDerive 
WtlsMasterKeyDeriveDhEcc 
WtlsPrf 
WtlsServerKeyAndMacDerive 
WtlsClientKeyAndMacDerive 
Tls10MacServer 
Tls10MacClient 
Tls12Mac 
Tls12Kdf 
Tls12MasterKeyDerive 
Tls12KeyAndMacDerive 
Tls12MasterKeyDeriveDh 
Tls12KeySafeDerive 
TlsMac 
TlsKdf 
KeyWrapLynks 
KeyWrapSetOaep 
CmsSig 
KipDerive 
KipWrap 
KipMac 
CamelliaKeyGen 
CamelliaEcb 
CamelliaCbc 
CamelliaMac 
CamelliaMacGeneral 
CamelliaCbcPad 
CamelliaEcbEncryptData 
CamelliaCbcEncryptData 
CamelliaCtr 
AriaKeyGen 
AriaEcb 
AriaCbc 
AriaMac 
AriaMacGeneral 
AriaCbcPad 
AriaEcbEncryptData 
AriaCbcEncryptData 
SeedKeyGen 
SeedEcb 
SeedCbc 
SeedMac 
SeedMacGeneral 
SeedCbcPad 
SeedEcbEncryptData 
SeedCbcEncryptData 
SkipjackKeyGen 
SkipjackEcb64 
SkipjackCbc64 
SkipjackOfb64 
SkipjackCfb64 
SkipjackCfb32 
SkipjackCfb16 
SkipjackCfb8 
SkipjackWrap 
SkipjackPrivateWrap 
SkipjackRelayx 
KeaKeyPairGen 
KeaKeyDerive 
KeaDerive 
FortezzaTimestamp 
BatonKeyGen 
BatonEcb128 
BatonEcb96 
BatonCbc128 
BatonCounter 
BatonShuffle 
BatonWrap 
EcdsaKeyPairGen 
EcKeyPairGen 
Ecdsa 
EcdsaSha1 
EcdsaSha224 
EcdsaSha256 
EcdsaSha384 
EcdsaSha512 
EcKeyPairGenWExtraBits 
Ecdh1Derive 
Ecdh1CofactorDerive 
EcmqvDerive 
EcdhAesKeyWrap 
RsaAesKeyWrap 
JuniperKeyGen 
JuniperEcb128 
JuniperCbc128 
JuniperCounter 
JuniperShuffle 
JuniperWrap 
Fasthash 
AesXts 
AesXtsKeyGen 
AesKeyGen 
AesEcb 
AesCbc 
AesMac 
AesMacGeneral 
AesCbcPad 
AesCtr 
AesGcm 
AesCcm 
AesCts 
AesCmac 
AesCmacGeneral 
AesXcbcMac 
AesXcbcMac96 
AesGmac 
BlowfishKeyGen 
BlowfishCbc 
TwofishKeyGen 
TwofishCbc 
BlowfishCbcPad 
TwofishCbcPad 
DesEcbEncryptData 
DesCbcEncryptData 
Des3EcbEncryptData 
Des3CbcEncryptData 
AesEcbEncryptData 
AesCbcEncryptData 
Gostr3410KeyPairGen 
Gostr3410 
Gostr3410WithGostr3411 
Gostr3410KeyWrap 
Gostr3410Derive 
Gostr3411 
Gostr3411Hmac 
Gost28147KeyGen 
Gost28147Ecb 
Gost28147 
Gost28147Mac 
Gost28147KeyWrap 
Chacha20KeyGen 
Chacha20 
Poly1305KeyGen 
Poly1305 
DsaParameterGen 
DhPkcsParameterGen 
X942DhParameterGen 
DsaProbablisticParameterGen 
DsaProbabilisticParameterGen 
DsaShaweTaylorParameterGen 
DsaFipsGGen 
AesOfb 
AesCfb64 
AesCfb8 
AesCfb128 
AesCfb1 
AesKeyWrap 
AesKeyWrapPad 
AesKeyWrapKwp 
AesKeyWrapPkcs7 
RsaPkcsTpm11 
RsaPkcsOaepTpm11 
Sha1KeyGen 
Sha224KeyGen 
Sha256KeyGen 
Sha384KeyGen 
Sha512KeyGen 
Sha512_224KeyGen 
Sha512_256KeyGen 
Sha512TKeyGen 
Null 
Blake2b160 
Blake2b160Hmac 
Blake2b160HmacGeneral 
Blake2b160KeyDerive 
Blake2b160KeyGen 
Blake2b256 
Blake2b256Hmac 
Blake2b256HmacGeneral 
Blake2b256KeyDerive 
Blake2b256KeyGen 
Blake2b384 
Blake2b384Hmac 
Blake2b384HmacGeneral 
Blake2b384KeyDerive 
Blake2b384KeyGen 
Blake2b512 
Blake2b512Hmac 
Blake2b512HmacGeneral 
Blake2b512KeyDerive 
Blake2b512KeyGen 
Salsa20 
Chacha20Poly1305 
Salsa20Poly1305 
X3dhInitialize 
X3dhRespond 
X2ratchetInitialize 
X2ratchetRespond 
X2ratchetEncrypt 
X2ratchetDecrypt 
Xeddsa 
HkdfDerive 
HkdfData 
HkdfKeyGen 
Salsa20_KeyGen 
EcdsaSha3_224 
EcdsaSha3_256 
EcdsaSha3_384 
EcdsaSha3_512 
EcEdwardsKeyPairGen 
EcMontgomeryKeyPairGen 
Eddsa 
Sp800_108CounterKdf 
Sp800_108FeedbackKdf 
Sp800_108DoublePipelineKdf 
Ike2PrfPlusDerive 
IkePrfDerive 
Ike1PrfDerive 
Ike1ExtendedDerive 
HssKeyPairGen 
Hss 
XmssKeyPairGen 
XmssmtKeyPairGen 
Xmss 
Xmssmt 
EcdhXAesKeyWrap 
EcdhCofAesKeyWrap 
PubKeyFromPrivKey 
MlKemKeyPairGen 
MlKem 
MlDsaKeyPairGen 
MlDsa 
HashMlDsa 
HashMlDsaSha224 
HashMlDsaSha256 
HashMlDsaSha384 
HashMlDsaSha512 
HashMlDsaSha3_224 
HashMlDsaSha3_256 
HashMlDsaSha3_384 
HashMlDsaSha3_512 
HashMlDsaShake128 
HashMlDsaShake256 
SlhDsaKeyPairGen 
SlhDsa 
HashSlhDsa 
HashSlhDsaSha224 
HashSlhDsaSha256 
HashSlhDsaSha384 
HashSlhDsaSha512 
HashSlhDsaSha3_224 
HashSlhDsaSha3_256 
HashSlhDsaSha3_384 
HashSlhDsaSha3_512 
HashSlhDsaShake128 
HashSlhDsaShake256 
Tls12ExtendedMasterKeyDerive 
Tls12ExtendedMasterKeyDeriveDh 
VendorDefined 

Definition at line 488 of file p11.h.

505 Dsa = CKM_DSA,
556 Rc4 = CKM_RC4,
582 Md2 = CKM_MD2,
585 Md5 = CKM_MD5,
588 Sha1 = CKM_SHA_1,
612 Hotp = CKM_HOTP,
613 Acti = CKM_ACTI,
643 Cast5KeyGen = CKM_CAST5_KEY_GEN,
645 Cast5Ecb = CKM_CAST5_ECB,
647 Cast5Cbc = CKM_CAST5_CBC,
649 Cast5Mac = CKM_CAST5_MAC,
651 Cast5MacGeneral = CKM_CAST5_MAC_GENERAL,
653 Cast5CbcPad = CKM_CAST5_CBC_PAD,
701 PbeMd5Cast5Cbc = CKM_PBE_MD5_CAST5_CBC,
703 PbeSha1Cast5Cbc = CKM_PBE_SHA1_CAST5_CBC,
782 EcdsaKeyPairGen = CKM_ECDSA_KEY_PAIR_GEN,
851 DsaProbablisticParameterGen = CKM_DSA_PROBABLISTIC_PARAMETER_GEN, // TODO(Botan4) remove this typo
874 Null = CKM_NULL,
924 Hss = CKM_HSS,
927 Xmss = CKM_XMSS,
963};
#define CKM_HASH_ML_DSA_SHA3_512
Definition pkcs11.h:580
#define CKM_HASH_ML_DSA_SHA3_256
Definition pkcs11.h:578
#define CKM_AES_XTS_KEY_GEN
Definition pkcs11.h:882
#define CKM_SEED_KEY_GEN
Definition pkcs11.h:831
#define CKM_TLS_MASTER_KEY_DERIVE
Definition pkcs11.h:753
#define CKM_DSA_PARAMETER_GEN
Definition pkcs11.h:926
#define CKM_WTLS_CLIENT_KEY_AND_MAC_DERIVE
Definition pkcs11.h:797
#define CKM_CONCATENATE_BASE_AND_DATA
Definition pkcs11.h:744
#define CKM_PKCS5_PBKD2
Definition pkcs11.h:790
#define CKM_AES_GMAC
Definition pkcs11.h:897
#define CKM_KIP_DERIVE
Definition pkcs11.h:811
#define CKM_DSA_SHA3_512
Definition pkcs11.h:567
#define CKM_SHAKE_128_KEY_DERIVATION
Definition pkcs11.h:774
#define CKM_NULL
Definition pkcs11.h:951
#define CKM_SSL3_SHA1_MAC
Definition pkcs11.h:758
#define CKM_SSL3_MASTER_KEY_DERIVE
Definition pkcs11.h:749
#define CKM_RSA_PKCS
Definition pkcs11.h:541
#define CKM_ECDSA_SHA1
Definition pkcs11.h:863
#define CKM_CHACHA20_KEY_GEN
Definition pkcs11.h:922
#define CKM_IDEA_ECB
Definition pkcs11.h:737
#define CKM_GOSTR3411_HMAC
Definition pkcs11.h:916
#define CKM_WTLS_PRE_MASTER_KEY_GEN
Definition pkcs11.h:792
#define CKM_BLAKE2B_512_HMAC
Definition pkcs11.h:968
#define CKM_SHA3_384_HMAC
Definition pkcs11.h:705
#define CKM_DES3_CMAC
Definition pkcs11.h:652
#define CKM_RC2_MAC
Definition pkcs11.h:633
#define CKM_SHA256_KEY_DERIVATION
Definition pkcs11.h:762
#define CKM_SHA3_512_HMAC
Definition pkcs11.h:709
#define CKM_BLAKE2B_160
Definition pkcs11.h:952
#define CKM_RSA_X_509
Definition pkcs11.h:543
#define CKM_SEED_MAC_GENERAL
Definition pkcs11.h:835
#define CKM_ARIA_KEY_GEN
Definition pkcs11.h:823
#define CKM_EC_KEY_PAIR_GEN_W_EXTRA_BITS
Definition pkcs11.h:868
#define CKM_AES_CTR
Definition pkcs11.h:889
#define CKM_TLS12_MAC
Definition pkcs11.h:800
#define CKM_HASH_ML_DSA_SHA256
Definition pkcs11.h:574
#define CKM_IKE2_PRF_PLUS_DERIVE
Definition pkcs11.h:996
#define CKM_DES3_CBC
Definition pkcs11.h:647
#define CKM_TWOFISH_CBC_PAD
Definition pkcs11.h:903
#define CKM_SP800_108_FEEDBACK_KDF
Definition pkcs11.h:994
#define CKM_AES_CMAC
Definition pkcs11.h:893
#define CKM_BLAKE2B_256_KEY_GEN
Definition pkcs11.h:961
#define CKM_SKIPJACK_CFB8
Definition pkcs11.h:846
#define CKM_RSA_X9_31_KEY_PAIR_GEN
Definition pkcs11.h:550
#define CKM_CONCATENATE_BASE_AND_KEY
Definition pkcs11.h:743
#define CKM_SHA_1_KEY_GEN
Definition pkcs11.h:943
#define CKM_DSA_SHA3_384
Definition pkcs11.h:566
#define CKM_SHA512_256
Definition pkcs11.h:612
#define CKM_SEED_ECB_ENCRYPT_DATA
Definition pkcs11.h:837
#define CKM_FORTEZZA_TIMESTAMP
Definition pkcs11.h:853
#define CKM_HASH_ML_DSA
Definition pkcs11.h:570
#define CKM_MD5
Definition pkcs11.h:666
#define CKM_SHA512_HMAC_GENERAL
Definition pkcs11.h:689
#define CKM_SHA3_256_RSA_PKCS
Definition pkcs11.h:622
#define CKM_CAST3_ECB
Definition pkcs11.h:719
#define CKM_X2RATCHET_DECRYPT
Definition pkcs11.h:980
#define CKM_SKIPJACK_CFB64
Definition pkcs11.h:843
#define CKM_DES_CBC_ENCRYPT_DATA
Definition pkcs11.h:905
#define CKM_SHA_1_HMAC
Definition pkcs11.h:670
#define CKM_SHA3_224_HMAC_GENERAL
Definition pkcs11.h:702
#define CKM_HASH_SLH_DSA_SHA512
Definition pkcs11.h:593
#define CKM_CAMELLIA_MAC
Definition pkcs11.h:817
#define CKM_IDEA_KEY_GEN
Definition pkcs11.h:736
#define CKM_ECDH1_COFACTOR_DERIVE
Definition pkcs11.h:870
#define CKM_ARIA_CBC_ENCRYPT_DATA
Definition pkcs11.h:830
#define CKM_SALSA20_KEY_GEN
Definition pkcs11.h:985
#define CKM_CAMELLIA_KEY_GEN
Definition pkcs11.h:814
#define CKM_BLAKE2B_384_HMAC
Definition pkcs11.h:963
#define CKM_HSS
Definition pkcs11.h:1001
#define CKM_SHA3_512_HMAC_GENERAL
Definition pkcs11.h:710
#define CKM_ECDSA_SHA224
Definition pkcs11.h:864
#define CKM_BATON_KEY_GEN
Definition pkcs11.h:854
#define CKM_XEDDSA
Definition pkcs11.h:981
#define CKM_MD2
Definition pkcs11.h:663
#define CKM_BATON_CBC128
Definition pkcs11.h:857
#define CKM_DSA
Definition pkcs11.h:557
#define CKM_AES_CFB8
Definition pkcs11.h:934
#define CKM_HKDF_DATA
Definition pkcs11.h:983
#define CKM_HASH_SLH_DSA_SHA224
Definition pkcs11.h:590
#define CKM_CMS_SIG
Definition pkcs11.h:810
#define CKM_RIPEMD128
Definition pkcs11.h:672
#define CKM_AES_CBC_PAD
Definition pkcs11.h:888
#define CKM_CAST3_CBC
Definition pkcs11.h:720
#define CKM_ECDH1_DERIVE
Definition pkcs11.h:869
#define CKM_VENDOR_DEFINED
Definition pkcs11.h:1009
#define CKM_TWOFISH_KEY_GEN
Definition pkcs11.h:900
#define CKM_HASH_SLH_DSA_SHA384
Definition pkcs11.h:592
#define CKM_DSA_SHA3_256
Definition pkcs11.h:565
#define CKM_AES_XTS
Definition pkcs11.h:881
#define CKM_SHA512_224_HMAC_GENERAL
Definition pkcs11.h:610
#define CKM_SKIPJACK_RELAYX
Definition pkcs11.h:849
#define CKM_SHA512_224_HMAC
Definition pkcs11.h:609
#define CKM_MD5_HMAC_GENERAL
Definition pkcs11.h:668
#define CKM_MD2_RSA_PKCS
Definition pkcs11.h:544
#define CKM_SHA_1_HMAC_GENERAL
Definition pkcs11.h:671
#define CKM_TLS10_MAC_CLIENT
Definition pkcs11.h:799
#define CKM_JUNIPER_ECB128
Definition pkcs11.h:875
#define CKM_SKIPJACK_CBC64
Definition pkcs11.h:841
#define CKM_DES_ECB
Definition pkcs11.h:639
#define CKM_CAST_CBC
Definition pkcs11.h:714
#define CKM_BLAKE2B_384
Definition pkcs11.h:962
#define CKM_WTLS_SERVER_KEY_AND_MAC_DERIVE
Definition pkcs11.h:796
#define CKM_PBE_SHA1_DES2_EDE_CBC
Definition pkcs11.h:787
#define CKM_X9_42_DH_KEY_PAIR_GEN
Definition pkcs11.h:585
#define CKM_RC5_MAC
Definition pkcs11.h:733
#define CKM_RSA_PKCS_KEY_PAIR_GEN
Definition pkcs11.h:540
#define CKM_RC2_CBC
Definition pkcs11.h:632
#define CKM_IKE1_PRF_DERIVE
Definition pkcs11.h:998
#define CKM_KEA_KEY_DERIVE
Definition pkcs11.h:851
#define CKM_JUNIPER_KEY_GEN
Definition pkcs11.h:874
#define CKM_RC5_CBC
Definition pkcs11.h:732
#define CKM_ARIA_CBC_PAD
Definition pkcs11.h:828
#define CKM_HSS_KEY_PAIR_GEN
Definition pkcs11.h:1000
#define CKM_SHA512_KEY_DERIVATION
Definition pkcs11.h:764
#define CKM_TLS_KDF
Definition pkcs11.h:807
#define CKM_AES_MAC_GENERAL
Definition pkcs11.h:887
#define CKM_X2RATCHET_INITIALIZE
Definition pkcs11.h:977
#define CKM_CAST128_CBC_PAD
Definition pkcs11.h:729
#define CKM_BATON_ECB128
Definition pkcs11.h:855
#define CKM_BLOWFISH_CBC
Definition pkcs11.h:899
#define CKM_SHA3_256_RSA_PKCS_PSS
Definition pkcs11.h:625
#define CKM_FASTHASH
Definition pkcs11.h:880
#define CKM_TLS12_EXTENDED_MASTER_KEY_DERIVE_DH
Definition pkcs11.h:621
#define CKM_XMSSMT
Definition pkcs11.h:1005
#define CKM_ARIA_ECB
Definition pkcs11.h:824
#define CKM_HASH_ML_DSA_SHAKE128
Definition pkcs11.h:581
#define CKM_X3DH_RESPOND
Definition pkcs11.h:976
#define CKM_HKDF_KEY_GEN
Definition pkcs11.h:984
#define CKM_DES_CBC
Definition pkcs11.h:640
#define CKM_BLAKE2B_256
Definition pkcs11.h:957
#define CKM_SHA384_HMAC_GENERAL
Definition pkcs11.h:686
#define CKM_SECURID_KEY_GEN
Definition pkcs11.h:690
#define CKM_IDEA_MAC_GENERAL
Definition pkcs11.h:740
#define CKM_TLS_KEY_AND_MAC_DERIVE
Definition pkcs11.h:754
#define CKM_GOST28147_ECB
Definition pkcs11.h:918
#define CKM_SECURID
Definition pkcs11.h:691
#define CKM_AES_CCM
Definition pkcs11.h:891
#define CKM_SHA512_224_KEY_DERIVATION
Definition pkcs11.h:611
#define CKM_SHA256
Definition pkcs11.h:678
#define CKM_DSA_FIPS_G_GEN
Definition pkcs11.h:931
#define CKM_IDEA_CBC_PAD
Definition pkcs11.h:741
#define CKM_SHA512_T_HMAC_GENERAL
Definition pkcs11.h:618
#define CKM_CDMF_CBC_PAD
Definition pkcs11.h:658
#define CKM_AES_CFB64
Definition pkcs11.h:933
#define CKM_TLS_MASTER_KEY_DERIVE_DH
Definition pkcs11.h:755
#define CKM_DSA_SHA3_224
Definition pkcs11.h:564
#define CKM_DES_KEY_GEN
Definition pkcs11.h:638
#define CKM_HASH_ML_DSA_SHA384
Definition pkcs11.h:575
#define CKM_CAST3_MAC_GENERAL
Definition pkcs11.h:722
#define CKM_PBE_SHA1_RC2_128_CBC
Definition pkcs11.h:788
#define CKM_AES_KEY_WRAP_KWP
Definition pkcs11.h:939
#define CKM_DSA_SHA512
Definition pkcs11.h:562
#define CKM_SSL3_PRE_MASTER_KEY_GEN
Definition pkcs11.h:748
#define CKM_SSL3_MASTER_KEY_DERIVE_DH
Definition pkcs11.h:751
#define CKM_IDEA_MAC
Definition pkcs11.h:739
#define CKM_MD5_RSA_PKCS
Definition pkcs11.h:545
#define CKM_DSA_SHA384
Definition pkcs11.h:561
#define CKM_RIPEMD128_HMAC_GENERAL
Definition pkcs11.h:674
#define CKM_ECDH_X_AES_KEY_WRAP
Definition pkcs11.h:1006
#define CKM_PUB_KEY_FROM_PRIV_KEY
Definition pkcs11.h:1008
#define CKM_PBA_SHA1_WITH_SHA1_HMAC
Definition pkcs11.h:791
#define CKM_DES_CBC_PAD
Definition pkcs11.h:643
#define CKM_BLAKE2B_160_KEY_DERIVE
Definition pkcs11.h:955
#define CKM_SHA512_T
Definition pkcs11.h:616
#define CKM_DES3_CBC_PAD
Definition pkcs11.h:650
#define CKM_BLAKE2B_256_HMAC
Definition pkcs11.h:958
#define CKM_SHA512_T_KEY_DERIVATION
Definition pkcs11.h:619
#define CKM_SHA3_384
Definition pkcs11.h:704
#define CKM_KEA_DERIVE
Definition pkcs11.h:852
#define CKM_DH_PKCS_DERIVE
Definition pkcs11.h:572
#define CKM_CAMELLIA_MAC_GENERAL
Definition pkcs11.h:818
#define CKM_MD2_HMAC_GENERAL
Definition pkcs11.h:665
#define CKM_SHA3_512_KEY_DERIVATION
Definition pkcs11.h:772
#define CKM_SEED_CBC_ENCRYPT_DATA
Definition pkcs11.h:838
#define CKM_DES3_CMAC_GENERAL
Definition pkcs11.h:651
#define CKM_CAST128_MAC_GENERAL
Definition pkcs11.h:728
#define CKM_HASH_SLH_DSA
Definition pkcs11.h:589
#define CKM_ARIA_CBC
Definition pkcs11.h:825
#define CKM_CAMELLIA_CTR
Definition pkcs11.h:822
#define CKM_PBE_SHA1_RC4_40
Definition pkcs11.h:785
#define CKM_SHA3_512
Definition pkcs11.h:708
#define CKM_TLS10_MAC_SERVER
Definition pkcs11.h:798
#define CKM_X9_42_DH_DERIVE
Definition pkcs11.h:586
#define CKM_AES_KEY_WRAP
Definition pkcs11.h:937
#define CKM_SKIPJACK_PRIVATE_WRAP
Definition pkcs11.h:848
#define CKM_KEY_WRAP_LYNKS
Definition pkcs11.h:808
#define CKM_SHA512_RSA_PKCS_PSS
Definition pkcs11.h:605
#define CKM_SHA3_384_RSA_PKCS
Definition pkcs11.h:623
#define CKM_CAMELLIA_CBC
Definition pkcs11.h:816
#define CKM_ECDSA_SHA512
Definition pkcs11.h:867
#define CKM_RSA_PKCS_OAEP
Definition pkcs11.h:549
#define CKM_DES_OFB64
Definition pkcs11.h:659
#define CKM_HASH_SLH_DSA_SHA3_224
Definition pkcs11.h:594
#define CKM_PBE_SHA1_RC4_128
Definition pkcs11.h:784
#define CKM_CDMF_MAC
Definition pkcs11.h:656
#define CKM_RSA_PKCS_OAEP_TPM_1_1
Definition pkcs11.h:942
#define CKM_SHA512_RSA_PKCS
Definition pkcs11.h:602
#define CKM_DES3_MAC_GENERAL
Definition pkcs11.h:649
#define CKM_SP800_108_COUNTER_KDF
Definition pkcs11.h:993
#define CKM_CAST_CBC_PAD
Definition pkcs11.h:717
#define CKM_SLH_DSA
Definition pkcs11.h:584
#define CKM_SHA224_HMAC
Definition pkcs11.h:682
#define CKM_SSL3_MD5_MAC
Definition pkcs11.h:757
#define CKM_EXTRACT_KEY_FROM_KEY
Definition pkcs11.h:747
#define CKM_SKIPJACK_CFB32
Definition pkcs11.h:844
#define CKM_ECMQV_DERIVE
Definition pkcs11.h:871
#define CKM_ECDSA_SHA3_224
Definition pkcs11.h:986
#define CKM_AES_KEY_GEN
Definition pkcs11.h:883
#define CKM_SHA3_384_HMAC_GENERAL
Definition pkcs11.h:706
#define CKM_CAST_MAC_GENERAL
Definition pkcs11.h:716
#define CKM_SP800_108_DOUBLE_PIPELINE_KDF
Definition pkcs11.h:995
#define CKM_BLAKE2B_512_HMAC_GENERAL
Definition pkcs11.h:969
#define CKM_SHA3_512_KEY_GEN
Definition pkcs11.h:711
#define CKM_IDEA_CBC
Definition pkcs11.h:738
#define CKM_WTLS_MASTER_KEY_DERIVE_DH_ECC
Definition pkcs11.h:794
#define CKM_EDDSA
Definition pkcs11.h:992
#define CKM_BLAKE2B_384_KEY_GEN
Definition pkcs11.h:966
#define CKM_DSA_KEY_PAIR_GEN
Definition pkcs11.h:556
#define CKM_RC4_KEY_GEN
Definition pkcs11.h:636
#define CKM_ACTI_KEY_GEN
Definition pkcs11.h:695
#define CKM_SHA224
Definition pkcs11.h:681
#define CKM_SHA1_RSA_X9_31
Definition pkcs11.h:552
#define CKM_AES_CBC_ENCRYPT_DATA
Definition pkcs11.h:909
#define CKM_GOSTR3410
Definition pkcs11.h:911
#define CKM_XMSS
Definition pkcs11.h:1004
#define CKM_CAMELLIA_CBC_PAD
Definition pkcs11.h:819
#define CKM_SHA3_384_KEY_GEN
Definition pkcs11.h:707
#define CKM_HASH_SLH_DSA_SHA3_256
Definition pkcs11.h:595
#define CKM_CAMELLIA_ECB_ENCRYPT_DATA
Definition pkcs11.h:820
#define CKM_SKIPJACK_CFB16
Definition pkcs11.h:845
#define CKM_WTLS_MASTER_KEY_DERIVE
Definition pkcs11.h:793
#define CKM_SKIPJACK_KEY_GEN
Definition pkcs11.h:839
#define CKM_POLY1305
Definition pkcs11.h:925
#define CKM_SHA3_384_RSA_PKCS_PSS
Definition pkcs11.h:626
#define CKM_GOST28147_KEY_WRAP
Definition pkcs11.h:921
#define CKM_SHA224_RSA_PKCS_PSS
Definition pkcs11.h:607
#define CKM_EC_EDWARDS_KEY_PAIR_GEN
Definition pkcs11.h:990
#define CKM_MD5_KEY_DERIVATION
Definition pkcs11.h:759
#define CKM_BATON_ECB96
Definition pkcs11.h:856
#define CKM_CAST3_MAC
Definition pkcs11.h:721
#define CKM_CDMF_KEY_GEN
Definition pkcs11.h:653
#define CKM_SHA512_224
Definition pkcs11.h:608
#define CKM_KEA_KEY_PAIR_GEN
Definition pkcs11.h:850
#define CKM_SHA256_HMAC
Definition pkcs11.h:679
#define CKM_HASH_SLH_DSA_SHA256
Definition pkcs11.h:591
#define CKM_X9_42_MQV_DERIVE
Definition pkcs11.h:588
#define CKM_TLS12_EXTENDED_MASTER_KEY_DERIVE
Definition pkcs11.h:620
#define CKM_GOST28147
Definition pkcs11.h:919
#define CKM_CDMF_ECB
Definition pkcs11.h:654
#define CKM_POLY1305_KEY_GEN
Definition pkcs11.h:924
#define CKM_TLS12_MASTER_KEY_DERIVE
Definition pkcs11.h:802
#define CKM_BLAKE2B_384_HMAC_GENERAL
Definition pkcs11.h:964
#define CKM_SHA256_KEY_GEN
Definition pkcs11.h:945
#define CKM_SHA3_224_RSA_PKCS
Definition pkcs11.h:628
#define CKM_BATON_SHUFFLE
Definition pkcs11.h:859
#define CKM_SHA3_224
Definition pkcs11.h:700
#define CKM_HASH_SLH_DSA_SHAKE256
Definition pkcs11.h:599
#define CKM_SHA512_256_HMAC_GENERAL
Definition pkcs11.h:614
#define CKM_RC5_MAC_GENERAL
Definition pkcs11.h:734
#define CKM_RC2_CBC_PAD
Definition pkcs11.h:635
#define CKM_SEED_CBC_PAD
Definition pkcs11.h:836
#define CKM_GENERIC_SECRET_KEY_GEN
Definition pkcs11.h:742
#define CKM_DH_PKCS_KEY_PAIR_GEN
Definition pkcs11.h:571
#define CKM_DES3_ECB_ENCRYPT_DATA
Definition pkcs11.h:906
#define CKM_CDMF_MAC_GENERAL
Definition pkcs11.h:657
#define CKM_SHA384
Definition pkcs11.h:684
#define CKM_SHA512_KEY_GEN
Definition pkcs11.h:947
#define CKM_TLS_PRE_MASTER_KEY_GEN
Definition pkcs11.h:752
#define CKM_EC_KEY_PAIR_GEN
Definition pkcs11.h:861
#define CKM_SHA384_KEY_GEN
Definition pkcs11.h:946
#define CKM_RC5_KEY_GEN
Definition pkcs11.h:730
#define CKM_AES_GCM
Definition pkcs11.h:890
#define CKM_DH_PKCS_PARAMETER_GEN
Definition pkcs11.h:927
#define CKM_PBE_MD5_CAST128_CBC
Definition pkcs11.h:782
#define CKM_SHA384_HMAC
Definition pkcs11.h:685
#define CKM_BLAKE2B_160_KEY_GEN
Definition pkcs11.h:956
#define CKM_CDMF_CBC
Definition pkcs11.h:655
#define CKM_RC5_CBC_PAD
Definition pkcs11.h:735
#define CKM_HKDF_DERIVE
Definition pkcs11.h:982
#define CKM_SHA1_RSA_PKCS
Definition pkcs11.h:546
#define CKM_SHA512
Definition pkcs11.h:687
#define CKM_MD2_KEY_DERIVATION
Definition pkcs11.h:760
#define CKM_ML_KEM
Definition pkcs11.h:563
#define CKM_DSA_SHAWE_TAYLOR_PARAMETER_GEN
Definition pkcs11.h:930
#define CKM_SHA512_224_KEY_GEN
Definition pkcs11.h:948
#define CKM_ARIA_MAC_GENERAL
Definition pkcs11.h:827
#define CKM_X2RATCHET_RESPOND
Definition pkcs11.h:978
#define CKM_CAMELLIA_CBC_ENCRYPT_DATA
Definition pkcs11.h:821
#define CKM_AES_CFB128
Definition pkcs11.h:935
#define CKM_AES_CMAC_GENERAL
Definition pkcs11.h:894
#define CKM_HASH_SLH_DSA_SHA3_512
Definition pkcs11.h:597
#define CKM_XMSSMT_KEY_PAIR_GEN
Definition pkcs11.h:1003
#define CKM_PBE_MD5_CAST_CBC
Definition pkcs11.h:780
#define CKM_SHA1_KEY_DERIVATION
Definition pkcs11.h:761
#define CKM_RIPEMD160
Definition pkcs11.h:675
#define CKM_RSA_9796
Definition pkcs11.h:542
#define CKM_SLH_DSA_KEY_PAIR_GEN
Definition pkcs11.h:583
#define CKM_JUNIPER_WRAP
Definition pkcs11.h:879
#define CKM_EC_MONTGOMERY_KEY_PAIR_GEN
Definition pkcs11.h:991
#define CKM_CAST_ECB
Definition pkcs11.h:713
#define CKM_HASH_SLH_DSA_SHAKE128
Definition pkcs11.h:598
#define CKM_BATON_COUNTER
Definition pkcs11.h:858
#define CKM_CAST3_KEY_GEN
Definition pkcs11.h:718
#define CKM_TLS_PRF
Definition pkcs11.h:756
#define CKM_JUNIPER_CBC128
Definition pkcs11.h:876
#define CKM_SHA224_RSA_PKCS
Definition pkcs11.h:606
#define CKM_PBE_SHA1_DES3_EDE_CBC
Definition pkcs11.h:786
#define CKM_ML_DSA
Definition pkcs11.h:569
#define CKM_RIPEMD160_RSA_PKCS
Definition pkcs11.h:548
#define CKM_AES_CTS
Definition pkcs11.h:892
#define CKM_X9_42_DH_PARAMETER_GEN
Definition pkcs11.h:928
#define CKM_JUNIPER_COUNTER
Definition pkcs11.h:877
#define CKM_SHA512_256_HMAC
Definition pkcs11.h:613
#define CKM_KIP_WRAP
Definition pkcs11.h:812
CK_ULONG CK_MECHANISM_TYPE
Definition pkcs11.h:59
#define CKM_TLS12_KEY_SAFE_DERIVE
Definition pkcs11.h:805
#define CKM_PBE_SHA1_CAST128_CBC
Definition pkcs11.h:783
#define CKM_SHA3_512_RSA_PKCS
Definition pkcs11.h:624
#define CKM_TLS12_KDF
Definition pkcs11.h:801
#define CKM_SHA3_384_KEY_DERIVATION
Definition pkcs11.h:770
#define CKM_AES_KEY_WRAP_PAD
Definition pkcs11.h:938
#define CKM_CONCATENATE_DATA_AND_BASE
Definition pkcs11.h:745
#define CKM_BLAKE2B_512
Definition pkcs11.h:967
#define CKM_GOSTR3410_KEY_WRAP
Definition pkcs11.h:913
#define CKM_BLAKE2B_160_HMAC_GENERAL
Definition pkcs11.h:954
#define CKM_XOR_BASE_AND_DATA
Definition pkcs11.h:746
#define CKM_ECDSA
Definition pkcs11.h:862
#define CKM_ECDSA_SHA384
Definition pkcs11.h:866
#define CKM_RSA_X9_31
Definition pkcs11.h:551
#define CKM_XMSS_KEY_PAIR_GEN
Definition pkcs11.h:1002
#define CKM_GOST28147_KEY_GEN
Definition pkcs11.h:917
#define CKM_HASH_ML_DSA_SHA224
Definition pkcs11.h:573
#define CKM_GOSTR3411
Definition pkcs11.h:915
#define CKM_DSA_PROBABILISTIC_PARAMETER_GEN
Definition pkcs11.h:929
#define CKM_PBE_MD2_DES_CBC
Definition pkcs11.h:778
#define CKM_DES_OFB8
Definition pkcs11.h:660
#define CKM_RIPEMD160_HMAC
Definition pkcs11.h:676
#define CKM_HOTP
Definition pkcs11.h:693
#define CKM_KEY_WRAP_SET_OAEP
Definition pkcs11.h:809
#define CKM_KIP_MAC
Definition pkcs11.h:813
#define CKM_CAST3_CBC_PAD
Definition pkcs11.h:723
#define CKM_ECDSA_SHA3_256
Definition pkcs11.h:987
#define CKM_DSA_SHA224
Definition pkcs11.h:559
#define CKM_TLS_MAC
Definition pkcs11.h:806
#define CKM_CHACHA20_POLY1305
Definition pkcs11.h:973
#define CKM_DES_CFB64
Definition pkcs11.h:661
#define CKM_AES_CFB1
Definition pkcs11.h:936
#define CKM_SHA3_256_HMAC
Definition pkcs11.h:697
#define CKM_DES_ECB_ENCRYPT_DATA
Definition pkcs11.h:904
#define CKM_BLAKE2B_384_KEY_DERIVE
Definition pkcs11.h:965
#define CKM_BLAKE2B_256_HMAC_GENERAL
Definition pkcs11.h:959
#define CKM_PBE_SHA1_RC2_40_CBC
Definition pkcs11.h:789
#define CKM_GOSTR3410_DERIVE
Definition pkcs11.h:914
#define CKM_SHAKE_256_KEY_DERIVATION
Definition pkcs11.h:776
#define CKM_SHA256_HMAC_GENERAL
Definition pkcs11.h:680
#define CKM_AES_ECB_ENCRYPT_DATA
Definition pkcs11.h:908
#define CKM_RIPEMD128_RSA_PKCS
Definition pkcs11.h:547
#define CKM_ECDSA_SHA256
Definition pkcs11.h:865
#define CKM_BATON_WRAP
Definition pkcs11.h:860
#define CKM_ECDSA_SHA3_512
Definition pkcs11.h:989
#define CKM_AES_OFB
Definition pkcs11.h:932
#define CKM_HOTP_KEY_GEN
Definition pkcs11.h:692
#define CKM_SHA512_T_KEY_GEN
Definition pkcs11.h:950
#define CKM_ML_KEM_KEY_PAIR_GEN
Definition pkcs11.h:555
#define CKM_TWOFISH_CBC
Definition pkcs11.h:901
#define CKM_SHA512_256_KEY_GEN
Definition pkcs11.h:949
#define CKM_SHA3_224_RSA_PKCS_PSS
Definition pkcs11.h:629
#define CKM_IKE_PRF_DERIVE
Definition pkcs11.h:997
#define CKM_RIPEMD128_HMAC
Definition pkcs11.h:673
#define CKM_HASH_ML_DSA_SHA3_224
Definition pkcs11.h:577
#define CKM_ACTI
Definition pkcs11.h:694
#define CKM_CAST_KEY_GEN
Definition pkcs11.h:712
#define CKM_SHA3_256_KEY_GEN
Definition pkcs11.h:699
#define CKM_ML_DSA_KEY_PAIR_GEN
Definition pkcs11.h:568
#define CKM_DES3_KEY_GEN
Definition pkcs11.h:645
#define CKM_DES3_CBC_ENCRYPT_DATA
Definition pkcs11.h:907
#define CKM_CAST128_MAC
Definition pkcs11.h:726
#define CKM_MD5_HMAC
Definition pkcs11.h:667
#define CKM_DES3_ECB
Definition pkcs11.h:646
#define CKM_AES_CBC
Definition pkcs11.h:885
#define CKM_SEED_MAC
Definition pkcs11.h:834
#define CKM_AES_MAC
Definition pkcs11.h:886
#define CKM_SHA256_RSA_PKCS_PSS
Definition pkcs11.h:603
#define CKM_SKIPJACK_WRAP
Definition pkcs11.h:847
#define CKM_SKIPJACK_ECB64
Definition pkcs11.h:840
#define CKM_SHA384_KEY_DERIVATION
Definition pkcs11.h:763
#define CKM_X3DH_INITIALIZE
Definition pkcs11.h:975
#define CKM_RSA_PKCS_PSS
Definition pkcs11.h:553
#define CKM_SKIPJACK_OFB64
Definition pkcs11.h:842
#define CKM_GOSTR3410_WITH_GOSTR3411
Definition pkcs11.h:912
#define CKM_SHA1_RSA_PKCS_PSS
Definition pkcs11.h:554
#define CKM_DES2_KEY_GEN
Definition pkcs11.h:644
#define CKM_GOSTR3410_KEY_PAIR_GEN
Definition pkcs11.h:910
#define CKM_SHA512_256_KEY_DERIVATION
Definition pkcs11.h:615
#define CKM_ECDSA_SHA3_384
Definition pkcs11.h:988
#define CKM_SHA384_RSA_PKCS
Definition pkcs11.h:601
#define CKM_ARIA_MAC
Definition pkcs11.h:826
#define CKM_SHA224_KEY_DERIVATION
Definition pkcs11.h:765
#define CKM_HASH_SLH_DSA_SHA3_384
Definition pkcs11.h:596
#define CKM_JUNIPER_SHUFFLE
Definition pkcs11.h:878
#define CKM_HASH_ML_DSA_SHAKE256
Definition pkcs11.h:582
#define CKM_SEED_ECB
Definition pkcs11.h:832
#define CKM_BLAKE2B_160_HMAC
Definition pkcs11.h:953
#define CKM_CAMELLIA_ECB
Definition pkcs11.h:815
#define CKM_AES_KEY_WRAP_PKCS7
Definition pkcs11.h:940
#define CKM_ECDH_AES_KEY_WRAP
Definition pkcs11.h:872
#define CKM_PBE_MD5_CAST3_CBC
Definition pkcs11.h:781
#define CKM_RC4
Definition pkcs11.h:637
#define CKM_RSA_AES_KEY_WRAP
Definition pkcs11.h:873
#define CKM_IKE1_EXTENDED_DERIVE
Definition pkcs11.h:999
#define CKM_PBE_MD5_DES_CBC
Definition pkcs11.h:779
#define CKM_SHA512_T_HMAC
Definition pkcs11.h:617
#define CKM_SHA512_HMAC
Definition pkcs11.h:688
#define CKM_RIPEMD160_HMAC_GENERAL
Definition pkcs11.h:677
#define CKM_SHA256_RSA_PKCS
Definition pkcs11.h:600
#define CKM_CAST_MAC
Definition pkcs11.h:715
#define CKM_RC2_MAC_GENERAL
Definition pkcs11.h:634
#define CKM_RC2_KEY_GEN
Definition pkcs11.h:630
#define CKM_CAST128_KEY_GEN
Definition pkcs11.h:724
#define CKM_AES_XCBC_MAC
Definition pkcs11.h:895
#define CKM_BLAKE2B_512_KEY_GEN
Definition pkcs11.h:971
#define CKM_BLAKE2B_512_KEY_DERIVE
Definition pkcs11.h:970
#define CKM_SHA384_RSA_PKCS_PSS
Definition pkcs11.h:604
#define CKM_RSA_PKCS_TPM_1_1
Definition pkcs11.h:941
#define CKM_SSL3_KEY_AND_MAC_DERIVE
Definition pkcs11.h:750
#define CKM_DES_MAC_GENERAL
Definition pkcs11.h:642
#define CKM_CAST128_CBC
Definition pkcs11.h:727
#define CKM_AES_ECB
Definition pkcs11.h:884
#define CKM_ARIA_ECB_ENCRYPT_DATA
Definition pkcs11.h:829
#define CKM_X2RATCHET_ENCRYPT
Definition pkcs11.h:979
#define CKM_CHACHA20
Definition pkcs11.h:923
#define CKM_SALSA20
Definition pkcs11.h:972
#define CKM_X9_42_DH_HYBRID_DERIVE
Definition pkcs11.h:587
#define CKM_SHA3_224_HMAC
Definition pkcs11.h:701
#define CKM_BLOWFISH_KEY_GEN
Definition pkcs11.h:898
#define CKM_GOST28147_MAC
Definition pkcs11.h:920
#define CKM_CAST128_ECB
Definition pkcs11.h:725
#define CKM_SEED_CBC
Definition pkcs11.h:833
#define CKM_SHA3_224_KEY_DERIVATION
Definition pkcs11.h:768
#define CKM_DSA_SHA256
Definition pkcs11.h:560
#define CKM_DES_CFB8
Definition pkcs11.h:662
#define CKM_SHA3_512_RSA_PKCS_PSS
Definition pkcs11.h:627
#define CKM_HASH_ML_DSA_SHA3_384
Definition pkcs11.h:579
#define CKM_BLOWFISH_CBC_PAD
Definition pkcs11.h:902
#define CKM_SHA3_224_KEY_GEN
Definition pkcs11.h:703
#define CKM_SHA_1
Definition pkcs11.h:669
#define CKM_DSA_SHA1
Definition pkcs11.h:558
#define CKM_AES_XCBC_MAC_96
Definition pkcs11.h:896
#define CKM_WTLS_PRF
Definition pkcs11.h:795
#define CKM_BLAKE2B_256_KEY_DERIVE
Definition pkcs11.h:960
#define CKM_DES_MAC
Definition pkcs11.h:641
#define CKM_RC2_ECB
Definition pkcs11.h:631
#define CKM_TLS12_KEY_AND_MAC_DERIVE
Definition pkcs11.h:803
#define CKM_MD2_HMAC
Definition pkcs11.h:664
#define CKM_HASH_ML_DSA_SHA512
Definition pkcs11.h:576
#define CKM_TLS12_MASTER_KEY_DERIVE_DH
Definition pkcs11.h:804
#define CKM_SHA3_256_HMAC_GENERAL
Definition pkcs11.h:698
#define CKM_RC5_ECB
Definition pkcs11.h:731
#define CKM_SHA224_HMAC_GENERAL
Definition pkcs11.h:683
#define CKM_ECDH_COF_AES_KEY_WRAP
Definition pkcs11.h:1007
#define CKM_SHA3_256
Definition pkcs11.h:696
#define CKM_SHA3_256_KEY_DERIVATION
Definition pkcs11.h:766
#define CKM_DES3_MAC
Definition pkcs11.h:648
#define CKM_SHA224_KEY_GEN
Definition pkcs11.h:944
#define CKM_SALSA20_POLY1305
Definition pkcs11.h:974

◆ MGF

Enumerator
MgfUnused 
Mgf1Sha1 
Mgf1Sha256 
Mgf1Sha384 
Mgf1Sha512 
Mgf1Sha224 
Mgf1Sha3_224 
Mgf1Sha3_256 
Mgf1Sha3_384 
Mgf1Sha3_512 

Definition at line 390 of file p11.h.

391 MgfUnused = 0,
401};
#define CKG_MGF1_SHA256
Definition pkcs11.h:445
#define CKG_MGF1_SHA3_224
Definition pkcs11.h:449
#define CKG_MGF1_SHA512
Definition pkcs11.h:447
#define CKG_MGF1_SHA224
Definition pkcs11.h:448
#define CKG_MGF1_SHA3_256
Definition pkcs11.h:450
#define CKG_MGF1_SHA384
Definition pkcs11.h:446
#define CKG_MGF1_SHA3_384
Definition pkcs11.h:451
#define CKG_MGF1_SHA3_512
Definition pkcs11.h:452
CK_ULONG CK_RSA_PKCS_MGF_TYPE
Definition pkcs11.h:71
#define CKG_MGF1_SHA1
Definition pkcs11.h:444

◆ MlDsaParameterSet

Enumerator
MlDsa44 
MlDsa65 
MlDsa87 

Definition at line 1008 of file p11.h.

1012};
#define CKP_ML_DSA_87
Definition pkcs11.h:1066
#define CKP_ML_DSA_65
Definition pkcs11.h:1065
#define CKP_ML_DSA_44
Definition pkcs11.h:1064
CK_ULONG CK_ML_DSA_PARAMETER_SET_TYPE
Definition pkcs11.h:60

◆ MlKemParameterSet

Enumerator
MlKem512 
MlKem768 
MlKem1024 

Definition at line 1029 of file p11.h.

1033};
CK_ULONG CK_ML_KEM_PARAMETER_SET_TYPE
Definition pkcs11.h:61
#define CKP_ML_KEM_512
Definition pkcs11.h:1069
#define CKP_ML_KEM_768
Definition pkcs11.h:1070
#define CKP_ML_KEM_1024
Definition pkcs11.h:1071

◆ Notification

Enumerator
Surrender 
OtpChanged 

Definition at line 965 of file p11.h.

968};
#define CKN_SURRENDER
Definition pkcs11.h:1025
CK_ULONG CK_NOTIFICATION
Definition pkcs11.h:62
#define CKN_OTP_CHANGED
Definition pkcs11.h:1026

◆ ObjectClass

Enumerator
Data 
Certificate 
PublicKey 
PrivateKey 
SecretKey 
HwFeature 
DomainParameters 
Mechanism 
OtpKey 
Profile 
Validation 
Trust 
VendorDefined 

Definition at line 970 of file p11.h.

971 Data = CKO_DATA,
984};
CK_MECHANISM Mechanism
Definition p11.h:1206
#define CKO_VALIDATION
Definition pkcs11.h:1039
#define CKO_PUBLIC_KEY
Definition pkcs11.h:1031
#define CKO_SECRET_KEY
Definition pkcs11.h:1033
#define CKO_CERTIFICATE
Definition pkcs11.h:1030
CK_ULONG CK_OBJECT_CLASS
Definition pkcs11.h:63
#define CKO_PROFILE
Definition pkcs11.h:1038
#define CKO_OTP_KEY
Definition pkcs11.h:1037
#define CKO_DATA
Definition pkcs11.h:1029
#define CKO_PRIVATE_KEY
Definition pkcs11.h:1032
#define CKO_MECHANISM
Definition pkcs11.h:1036
#define CKO_HW_FEATURE
Definition pkcs11.h:1034
#define CKO_VENDOR_DEFINED
Definition pkcs11.h:1041
#define CKO_DOMAIN_PARAMETERS
Definition pkcs11.h:1035
#define CKO_TRUST
Definition pkcs11.h:1040

◆ OtpChallengeRequirement

Enumerator
OtpParamIgnored 
OtpParamOptional 
OtpParamMandatory 

Definition at line 246 of file p11.h.

◆ OtpFormat

enum class Botan::PKCS11::OtpFormat : CK_ULONG
strong
Enumerator
OtpFormatDecimal 
OtpFormatHexadecimal 
OtpFormatAlphanumeric 
OtpFormatBinary 

Definition at line 239 of file p11.h.

239 : CK_ULONG {
244};
#define CK_OTP_FORMAT_DECIMAL
Definition pkcs11.h:110
#define CK_OTP_FORMAT_BINARY
Definition pkcs11.h:113
#define CK_OTP_FORMAT_HEXADECIMAL
Definition pkcs11.h:111
#define CK_OTP_FORMAT_ALPHANUMERIC
Definition pkcs11.h:112

◆ OtpParamType

Enumerator
OtpValue 
OtpPin 
OtpChallenge 
OtpTime 
OtpCounter 
OtpFlags 
OtpOutputLength 
OtpOutputFormat 

Definition at line 228 of file p11.h.

237};
#define CK_OTP_CHALLENGE
Definition pkcs11.h:102
#define CK_OTP_VALUE
Definition pkcs11.h:100
#define CK_OTP_TIME
Definition pkcs11.h:103
#define CK_OTP_OUTPUT_LENGTH
Definition pkcs11.h:106
#define CK_OTP_PIN
Definition pkcs11.h:101
CK_ULONG CK_OTP_PARAM_TYPE
Definition pkcs11.h:65
#define CK_OTP_FLAGS
Definition pkcs11.h:105
#define CK_OTP_COUNTER
Definition pkcs11.h:104
#define CK_OTP_OUTPUT_FORMAT
Definition pkcs11.h:107

◆ PrfDataType

Enumerator
Sp800_108IterationVariable 
Sp800_108Counter 
Sp800_108DkmLength 
Sp800_108ByteArray 
Sp800_108KeyHandle 

Definition at line 259 of file p11.h.

265};
#define CK_SP800_108_ITERATION_VARIABLE
Definition pkcs11.h:127
#define CK_SP800_108_KEY_HANDLE
Definition pkcs11.h:132
CK_ULONG CK_PRF_DATA_TYPE
Definition pkcs11.h:68
#define CK_SP800_108_COUNTER
Definition pkcs11.h:129
#define CK_SP800_108_BYTE_ARRAY
Definition pkcs11.h:131
#define CK_SP800_108_DKM_LENGTH
Definition pkcs11.h:130

◆ ProfileId

Enumerator
InvalidId 
BaselineProvider 
ExtendedProvider 
AuthenticationToken 
PublicCertificatesToken 
CompleteProvider 
HkdfTlsToken 
VendorDefined 

Definition at line 986 of file p11.h.

986 : CK_PROFILE_ID {
995};
#define CKP_COMPLETE_PROVIDER
Definition pkcs11.h:1049
#define CKP_PUBLIC_CERTIFICATES_TOKEN
Definition pkcs11.h:1048
#define CKP_BASELINE_PROVIDER
Definition pkcs11.h:1045
#define CKP_AUTHENTICATION_TOKEN
Definition pkcs11.h:1047
#define CKP_VENDOR_DEFINED
Definition pkcs11.h:1051
#define CKP_HKDF_TLS_TOKEN
Definition pkcs11.h:1050
#define CKP_EXTENDED_PROVIDER
Definition pkcs11.h:1046
#define CKP_INVALID_ID
Definition pkcs11.h:1044
CK_ULONG CK_PROFILE_ID
Definition pkcs11.h:69

◆ PseudoRandom

Enumerator
Pkcs5Pbkd2HmacSha1 
Pkcs5Pbkd2HmacGostr3411 
Pkcs5Pbkd2HmacSha224 
Pkcs5Pbkd2HmacSha256 
Pkcs5Pbkd2HmacSha384 
Pkcs5Pbkd2HmacSha512 
Pkcs5Pbkd2HmacSha512224 
Pkcs5Pbkd2HmacSha512256 

Definition at line 997 of file p11.h.

1006};
#define CKP_PKCS5_PBKD2_HMAC_SHA512_256
Definition pkcs11.h:1061
#define CKP_PKCS5_PBKD2_HMAC_SHA224
Definition pkcs11.h:1056
#define CKP_PKCS5_PBKD2_HMAC_SHA384
Definition pkcs11.h:1058
#define CKP_PKCS5_PBKD2_HMAC_GOSTR3411
Definition pkcs11.h:1055
CK_ULONG CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE
Definition pkcs11.h:66
#define CKP_PKCS5_PBKD2_HMAC_SHA512
Definition pkcs11.h:1059
#define CKP_PKCS5_PBKD2_HMAC_SHA1
Definition pkcs11.h:1054
#define CKP_PKCS5_PBKD2_HMAC_SHA512_224
Definition pkcs11.h:1060
#define CKP_PKCS5_PBKD2_HMAC_SHA256
Definition pkcs11.h:1057

◆ PublicPointEncoding

enum class Botan::PKCS11::PublicPointEncoding : uint32_t
strong
Enumerator
Raw 
Der 

Definition at line 1183 of file p11.h.

◆ ReturnValue

enum class Botan::PKCS11::ReturnValue : CK_RV
strong
Enumerator
OK 
Cancel 
HostMemory 
SlotIdInvalid 
GeneralError 
FunctionFailed 
ArgumentsBad 
NoEvent 
NeedToCreateThreads 
CantLock 
AttributeReadOnly 
AttributeSensitive 
AttributeTypeInvalid 
AttributeValueInvalid 
ActionProhibited 
DataInvalid 
DataLenRange 
DeviceError 
DeviceMemory 
DeviceRemoved 
EncryptedDataInvalid 
EncryptedDataLenRange 
AeadDecryptFailed 
FunctionCanceled 
FunctionNotParallel 
FunctionNotSupported 
KeyHandleInvalid 
KeySizeRange 
KeyTypeInconsistent 
KeyNotNeeded 
KeyChanged 
KeyNeeded 
KeyIndigestible 
KeyFunctionNotPermitted 
KeyNotWrappable 
KeyUnextractable 
MechanismInvalid 
MechanismParamInvalid 
ObjectHandleInvalid 
OperationActive 
OperationNotInitialized 
PinIncorrect 
PinInvalid 
PinLenRange 
PinExpired 
PinLocked 
SessionClosed 
SessionCount 
SessionHandleInvalid 
SessionParallelNotSupported 
SessionReadOnly 
SessionExists 
SessionReadOnlyExists 
SessionReadWriteSoExists 
SignatureInvalid 
SignatureLenRange 
TemplateIncomplete 
TemplateInconsistent 
TokenNotPresent 
TokenNotRecognized 
TokenWriteProtected 
UnwrappingKeyHandleInvalid 
UnwrappingKeySizeRange 
UnwrappingKeyTypeInconsistent 
UserAlreadyLoggedIn 
UserNotLoggedIn 
UserPinNotInitialized 
UserTypeInvalid 
UserAnotherAlreadyLoggedIn 
UserTooManyTypes 
WrappedKeyInvalid 
WrappedKeyLenRange 
WrappingKeyHandleInvalid 
WrappingKeySizeRange 
WrappingKeyTypeInconsistent 
RandomSeedNotSupported 
RandomNoRng 
DomainParamsInvalid 
CurveNotSupported 
BufferTooSmall 
SavedStateInvalid 
InformationSensitive 
StateUnsaveable 
CryptokiNotInitialized 
CryptokiAlreadyInitialized 
MutexBad 
MutexNotLocked 
NewPinMode 
NextOtp 
ExceededMaxIterations 
FipsSelfTestFailed 
LibraryLoadFailed 
PinTooWeak 
PublicKeyInvalid 
FunctionRejected 
TokenResourceExceeded 
OperationCancelFailed 
KeyExhausted 
Pending 
SessionAsyncNotSupported 
SeedRandomRequired 
OperationNotValidated 
TokenNotInitialized 
ParameterSetNotSupported 
VendorDefined 

Definition at line 1055 of file p11.h.

1055 : CK_RV {
1056 OK = CKR_OK,
1161};
#define CKR_NEXT_OTP
Definition pkcs11.h:1176
#define CKR_SESSION_COUNT
Definition pkcs11.h:1135
#define CKR_DEVICE_MEMORY
Definition pkcs11.h:1106
#define CKR_GENERAL_ERROR
Definition pkcs11.h:1092
#define CKR_MECHANISM_INVALID
Definition pkcs11.h:1124
#define CKR_SLOT_ID_INVALID
Definition pkcs11.h:1091
#define CKR_KEY_CHANGED
Definition pkcs11.h:1118
#define CKR_ATTRIBUTE_TYPE_INVALID
Definition pkcs11.h:1100
#define CKR_FUNCTION_CANCELED
Definition pkcs11.h:1111
#define CKR_PENDING
Definition pkcs11.h:1186
#define CKR_KEY_UNEXTRACTABLE
Definition pkcs11.h:1123
#define CKR_DATA_INVALID
Definition pkcs11.h:1103
#define CKR_UNWRAPPING_KEY_HANDLE_INVALID
Definition pkcs11.h:1149
#define CKR_NEED_TO_CREATE_THREADS
Definition pkcs11.h:1096
#define CKR_WRAPPING_KEY_SIZE_RANGE
Definition pkcs11.h:1161
#define CKR_MECHANISM_PARAM_INVALID
Definition pkcs11.h:1125
#define CKR_TOKEN_NOT_RECOGNIZED
Definition pkcs11.h:1147
#define CKR_ATTRIBUTE_SENSITIVE
Definition pkcs11.h:1099
#define CKR_RANDOM_NO_RNG
Definition pkcs11.h:1164
#define CKR_PARAMETER_SET_NOT_SUPPORTED
Definition pkcs11.h:1191
#define CKR_PIN_LEN_RANGE
Definition pkcs11.h:1131
#define CKR_DEVICE_ERROR
Definition pkcs11.h:1105
#define CKR_RANDOM_SEED_NOT_SUPPORTED
Definition pkcs11.h:1163
#define CKR_SESSION_PARALLEL_NOT_SUPPORTED
Definition pkcs11.h:1137
#define CKR_KEY_EXHAUSTED
Definition pkcs11.h:1185
#define CKR_ATTRIBUTE_READ_ONLY
Definition pkcs11.h:1098
#define CKR_KEY_FUNCTION_NOT_PERMITTED
Definition pkcs11.h:1121
#define CKR_WRAPPING_KEY_TYPE_INCONSISTENT
Definition pkcs11.h:1162
CK_ULONG CK_RV
Definition pkcs11.h:73
#define CKR_SESSION_EXISTS
Definition pkcs11.h:1139
#define CKR_FUNCTION_REJECTED
Definition pkcs11.h:1182
#define CKR_SESSION_READ_ONLY
Definition pkcs11.h:1138
#define CKR_OPERATION_CANCEL_FAILED
Definition pkcs11.h:1184
#define CKR_TOKEN_RESOURCE_EXCEEDED
Definition pkcs11.h:1183
#define CKR_ENCRYPTED_DATA_LEN_RANGE
Definition pkcs11.h:1109
#define CKR_SIGNATURE_INVALID
Definition pkcs11.h:1142
#define CKR_SESSION_HANDLE_INVALID
Definition pkcs11.h:1136
#define CKR_USER_ANOTHER_ALREADY_LOGGED_IN
Definition pkcs11.h:1156
#define CKR_ARGUMENTS_BAD
Definition pkcs11.h:1094
#define CKR_CANCEL
Definition pkcs11.h:1089
#define CKR_PIN_TOO_WEAK
Definition pkcs11.h:1180
#define CKR_PIN_EXPIRED
Definition pkcs11.h:1132
#define CKR_PIN_LOCKED
Definition pkcs11.h:1133
#define CKR_LIBRARY_LOAD_FAILED
Definition pkcs11.h:1179
#define CKR_CANT_LOCK
Definition pkcs11.h:1097
#define CKR_TOKEN_NOT_PRESENT
Definition pkcs11.h:1146
#define CKR_CRYPTOKI_NOT_INITIALIZED
Definition pkcs11.h:1171
#define CKR_PIN_INCORRECT
Definition pkcs11.h:1129
#define CKR_TOKEN_NOT_INITIALIZED
Definition pkcs11.h:1190
#define CKR_WRAPPED_KEY_INVALID
Definition pkcs11.h:1158
#define CKR_WRAPPING_KEY_HANDLE_INVALID
Definition pkcs11.h:1160
#define CKR_MUTEX_NOT_LOCKED
Definition pkcs11.h:1174
#define CKR_USER_TOO_MANY_TYPES
Definition pkcs11.h:1157
#define CKR_SESSION_CLOSED
Definition pkcs11.h:1134
#define CKR_AEAD_DECRYPT_FAILED
Definition pkcs11.h:1110
#define CKR_OBJECT_HANDLE_INVALID
Definition pkcs11.h:1126
#define CKR_PIN_INVALID
Definition pkcs11.h:1130
#define CKR_UNWRAPPING_KEY_SIZE_RANGE
Definition pkcs11.h:1150
#define CKR_ENCRYPTED_DATA_INVALID
Definition pkcs11.h:1108
#define CKR_CRYPTOKI_ALREADY_INITIALIZED
Definition pkcs11.h:1172
#define CKR_FUNCTION_FAILED
Definition pkcs11.h:1093
#define CKR_OPERATION_NOT_INITIALIZED
Definition pkcs11.h:1128
#define CKR_ACTION_PROHIBITED
Definition pkcs11.h:1102
#define CKR_SESSION_READ_ONLY_EXISTS
Definition pkcs11.h:1140
#define CKR_SESSION_READ_WRITE_SO_EXISTS
Definition pkcs11.h:1141
#define CKR_KEY_SIZE_RANGE
Definition pkcs11.h:1115
#define CKR_TEMPLATE_INCONSISTENT
Definition pkcs11.h:1145
#define CKR_OPERATION_ACTIVE
Definition pkcs11.h:1127
#define CKR_DATA_LEN_RANGE
Definition pkcs11.h:1104
#define CKR_BUFFER_TOO_SMALL
Definition pkcs11.h:1167
#define CKR_USER_PIN_NOT_INITIALIZED
Definition pkcs11.h:1154
#define CKR_USER_ALREADY_LOGGED_IN
Definition pkcs11.h:1152
#define CKR_STATE_UNSAVEABLE
Definition pkcs11.h:1170
#define CKR_INFORMATION_SENSITIVE
Definition pkcs11.h:1169
#define CKR_NEW_PIN_MODE
Definition pkcs11.h:1175
#define CKR_OK
Definition pkcs11.h:1088
#define CKR_OPERATION_NOT_VALIDATED
Definition pkcs11.h:1189
#define CKR_ATTRIBUTE_VALUE_INVALID
Definition pkcs11.h:1101
#define CKR_FUNCTION_NOT_SUPPORTED
Definition pkcs11.h:1113
#define CKR_USER_NOT_LOGGED_IN
Definition pkcs11.h:1153
#define CKR_DEVICE_REMOVED
Definition pkcs11.h:1107
#define CKR_SEED_RANDOM_REQUIRED
Definition pkcs11.h:1188
#define CKR_DOMAIN_PARAMS_INVALID
Definition pkcs11.h:1165
#define CKR_TOKEN_WRITE_PROTECTED
Definition pkcs11.h:1148
#define CKR_TEMPLATE_INCOMPLETE
Definition pkcs11.h:1144
#define CKR_KEY_NOT_NEEDED
Definition pkcs11.h:1117
#define CKR_NO_EVENT
Definition pkcs11.h:1095
#define CKR_VENDOR_DEFINED
Definition pkcs11.h:1192
#define CKR_HOST_MEMORY
Definition pkcs11.h:1090
#define CKR_FUNCTION_NOT_PARALLEL
Definition pkcs11.h:1112
#define CKR_SESSION_ASYNC_NOT_SUPPORTED
Definition pkcs11.h:1187
#define CKR_SIGNATURE_LEN_RANGE
Definition pkcs11.h:1143
#define CKR_CURVE_NOT_SUPPORTED
Definition pkcs11.h:1166
#define CKR_FIPS_SELF_TEST_FAILED
Definition pkcs11.h:1178
#define CKR_USER_TYPE_INVALID
Definition pkcs11.h:1155
#define CKR_KEY_HANDLE_INVALID
Definition pkcs11.h:1114
#define CKR_MUTEX_BAD
Definition pkcs11.h:1173
#define CKR_SAVED_STATE_INVALID
Definition pkcs11.h:1168
#define CKR_WRAPPED_KEY_LEN_RANGE
Definition pkcs11.h:1159
#define CKR_EXCEEDED_MAX_ITERATIONS
Definition pkcs11.h:1177
#define CKR_KEY_INDIGESTIBLE
Definition pkcs11.h:1120
#define CKR_KEY_NEEDED
Definition pkcs11.h:1119
#define CKR_PUBLIC_KEY_INVALID
Definition pkcs11.h:1181
#define CKR_KEY_TYPE_INCONSISTENT
Definition pkcs11.h:1116
#define CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT
Definition pkcs11.h:1151
#define CKR_KEY_NOT_WRAPPABLE
Definition pkcs11.h:1122

◆ SessionState

Enumerator
RoPublicSession 
RoUserFunctions 
RwPublicSession 
RwUserFunctions 
RwSoFunctions 

Definition at line 1035 of file p11.h.

1035 : CK_STATE {
1041};
#define CKS_RW_PUBLIC_SESSION
Definition pkcs11.h:1197
#define CKS_RO_USER_FUNCTIONS
Definition pkcs11.h:1196
#define CKS_RW_USER_FUNCTIONS
Definition pkcs11.h:1198
#define CKS_RO_PUBLIC_SESSION
Definition pkcs11.h:1195
CK_ULONG CK_STATE
Definition pkcs11.h:79
#define CKS_RW_SO_FUNCTIONS
Definition pkcs11.h:1199

◆ SessionValidationFlagsType

Enumerator
LastValidationOk 

Definition at line 1043 of file p11.h.

1045};
CK_ULONG CK_SESSION_VALIDATION_FLAGS_TYPE
Definition pkcs11.h:75
#define CKS_LAST_VALIDATION_OK
Definition pkcs11.h:1202

◆ SlhDsaParameterSet

Enumerator
SlhDsaSha2_128s 
SlhDsaShake128s 
SlhDsaSha2_128f 
SlhDsaShake128f 
SlhDsaSha2_192s 
SlhDsaShake192s 
SlhDsaSha2_192f 
SlhDsaShake192f 
SlhDsaSha2_256s 
SlhDsaShake256s 
SlhDsaSha2_256f 
SlhDsaShake256f 

Definition at line 1014 of file p11.h.

1027};
#define CKP_SLH_DSA_SHA2_192F
Definition pkcs11.h:1080
#define CKP_SLH_DSA_SHA2_128F
Definition pkcs11.h:1076
#define CKP_SLH_DSA_SHAKE_128F
Definition pkcs11.h:1077
#define CKP_SLH_DSA_SHA2_192S
Definition pkcs11.h:1078
#define CKP_SLH_DSA_SHA2_256S
Definition pkcs11.h:1082
#define CKP_SLH_DSA_SHAKE_192F
Definition pkcs11.h:1081
#define CKP_SLH_DSA_SHA2_256F
Definition pkcs11.h:1084
CK_ULONG CK_SLH_DSA_PARAMETER_SET_TYPE
Definition pkcs11.h:76
#define CKP_SLH_DSA_SHAKE_256S
Definition pkcs11.h:1083
#define CKP_SLH_DSA_SHA2_128S
Definition pkcs11.h:1074
#define CKP_SLH_DSA_SHAKE_128S
Definition pkcs11.h:1075
#define CKP_SLH_DSA_SHAKE_192S
Definition pkcs11.h:1079
#define CKP_SLH_DSA_SHAKE_256F
Definition pkcs11.h:1085

◆ Sp800_108DkmLengthMethod

Enumerator
Sp800_108DkmLengthSumOfKeys 
Sp800_108DkmLengthSumOfSegments 

Definition at line 267 of file p11.h.

◆ Trust

enum class Botan::PKCS11::Trust : CK_TRUST
strong
Enumerator
TrustUnknown 
Trusted 
TrustAnchor 
NotTrusted 
TrustMustVerifyTrust 

Definition at line 1047 of file p11.h.

1047 : CK_TRUST {
1053};
#define CKT_TRUST_MUST_VERIFY_TRUST
Definition pkcs11.h:1209
CK_ULONG CK_TRUST
Definition pkcs11.h:80
#define CKT_TRUSTED
Definition pkcs11.h:1206
#define CKT_TRUST_ANCHOR
Definition pkcs11.h:1207
#define CKT_NOT_TRUSTED
Definition pkcs11.h:1208
#define CKT_TRUST_UNKNOWN
Definition pkcs11.h:1205

◆ UserType

Enumerator
SO 
User 
ContextSpecific 

Definition at line 1163 of file p11.h.

1163 : CK_USER_TYPE {
1164 SO = CKU_SO,
1165 User = CKU_USER,
1167};
#define CKU_USER
Definition pkcs11.h:1213
CK_ULONG CK_USER_TYPE
Definition pkcs11.h:81
#define CKU_SO
Definition pkcs11.h:1212
#define CKU_CONTEXT_SPECIFIC
Definition pkcs11.h:1214

◆ ValidationAuthorityType

Enumerator
AuthorityTypeUnspecified 
AuthorityTypeNistCmvp 
AuthorityTypeCommonCriteria 

Definition at line 1169 of file p11.h.

◆ ValidationType

Enumerator
TypeUnspecified 
TypeSoftware 
TypeHardware 
TypeFirmware 
TypeHybrid 

Definition at line 1175 of file p11.h.

1181};
#define CKV_TYPE_FIRMWARE
Definition pkcs11.h:1225
#define CKV_TYPE_HYBRID
Definition pkcs11.h:1226
#define CKV_TYPE_UNSPECIFIED
Definition pkcs11.h:1222
#define CKV_TYPE_SOFTWARE
Definition pkcs11.h:1223
CK_ULONG CK_VALIDATION_TYPE
Definition pkcs11.h:83
#define CKV_TYPE_HARDWARE
Definition pkcs11.h:1224

Function Documentation

◆ change_pin()

void Botan::PKCS11::change_pin ( Slot & slot,
const secure_string & old_pin,
const secure_string & new_pin )

Change PIN with old PIN to new PIN

Parameters
slotThe slot with the attached token
old_pinThe old user PIN
new_pinThe new user PIN

Definition at line 46 of file p11.cpp.

46 {
47 Session session(slot, false);
48 session.login(UserType::User, old_pin);
49 session.set_pin(old_pin, new_pin);
50}
Represents a PKCS#11 session.
Definition p11_types.h:125

References Botan::PKCS11::Session::login(), Botan::PKCS11::Session::set_pin(), and User.

◆ change_so_pin()

void Botan::PKCS11::change_so_pin ( Slot & slot,
const secure_string & old_so_pin,
const secure_string & new_so_pin )

Change SO_PIN with old SO_PIN to new SO_PIN

Parameters
slotThe slot with the attached token
old_so_pinThe old SO_PIN
new_so_pinThe new SO_PIN

Definition at line 52 of file p11.cpp.

52 {
53 Session session(slot, false);
54 session.login(UserType::SO, old_so_pin);
55 session.set_pin(old_so_pin, new_so_pin);
56}

References Botan::PKCS11::Session::login(), Botan::PKCS11::Session::set_pin(), and SO.

◆ flags()

◆ initialize_token()

void Botan::PKCS11::initialize_token ( Slot & slot,
std::string_view label,
const secure_string & so_pin,
const secure_string & pin )

Initializes a token

Parameters
slotThe slot with the attached token that should be initialized
labelThe token label
so_pinPIN of the security officer. Will be set if the token is uninitialized other this has to be the current SO_PIN
pinThe user PIN that will be set

Definition at line 41 of file p11.cpp.

41 {
42 slot.initialize(label, so_pin);
43 set_pin(slot, so_pin, pin);
44}
void initialize(std::string_view label, const secure_string &so_pin) const
Definition p11_slot.cpp:45
void set_pin(Slot &slot, const secure_string &so_pin, const secure_string &pin)
Definition p11.cpp:58

References Botan::PKCS11::Slot::initialize(), and set_pin().

◆ operator|()

Flag Botan::PKCS11::operator| ( Flag a,
Flag b )
inline

Definition at line 377 of file p11.h.

377 {
378 // NOLINTNEXTLINE(clang-analyzer-optin.core.EnumCastOutOfRange)
379 return static_cast<Flag>(static_cast<CK_FLAGS>(a) | static_cast<CK_FLAGS>(b));
380}

◆ set_pin()

void Botan::PKCS11::set_pin ( Slot & slot,
const secure_string & so_pin,
const secure_string & pin )

Sets user PIN with SO_PIN

Parameters
slotThe slot with the attached token
so_pinPIN of the security officer
pinThe user PIN that should be set

Definition at line 58 of file p11.cpp.

58 {
59 Session session(slot, false);
60 session.login(UserType::SO, so_pin);
61 session.init_pin(pin);
62}

References Botan::PKCS11::Session::init_pin(), Botan::PKCS11::Session::login(), and SO.

Referenced by initialize_token().

Variable Documentation

◆ False

const Bbool Botan::PKCS11::False = 0

Definition at line 1225 of file p11.h.

Referenced by Botan::PKCS11::AttributeContainer::add_bool().

◆ ThrowException

◆ True

const Bbool Botan::PKCS11::True = 1

Definition at line 1224 of file p11.h.

Referenced by Botan::PKCS11::AttributeContainer::add_bool().