0N/A/*
3645N/A * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
0N/A */
0N/A
0N/A/* Copyright (c) 2002 Graz University of Technology. All rights reserved.
0N/A *
0N/A * Redistribution and use in source and binary forms, with or without
0N/A * modification, are permitted provided that the following conditions are met:
0N/A *
0N/A * 1. Redistributions of source code must retain the above copyright notice,
0N/A * this list of conditions and the following disclaimer.
0N/A *
0N/A * 2. Redistributions in binary form must reproduce the above copyright notice,
0N/A * this list of conditions and the following disclaimer in the documentation
0N/A * and/or other materials provided with the distribution.
0N/A *
0N/A * 3. The end-user documentation included with the redistribution, if any, must
0N/A * include the following acknowledgment:
0N/A *
0N/A * "This product includes software developed by IAIK of Graz University of
0N/A * Technology."
0N/A *
0N/A * Alternately, this acknowledgment may appear in the software itself, if
0N/A * and wherever such third-party acknowledgments normally appear.
0N/A *
0N/A * 4. The names "Graz University of Technology" and "IAIK of Graz University of
0N/A * Technology" must not be used to endorse or promote products derived from
0N/A * this software without prior written permission.
0N/A *
0N/A * 5. Products derived from this software may not be called
0N/A * "IAIK PKCS Wrapper", nor may "IAIK" appear in their name, without prior
0N/A * written permission of Graz University of Technology.
0N/A *
0N/A * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
0N/A * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
0N/A * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
0N/A * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE LICENSOR BE
0N/A * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
0N/A * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
0N/A * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
0N/A * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
0N/A * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
0N/A * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
0N/A * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
0N/A * POSSIBILITY OF SUCH DAMAGE.
0N/A */
0N/A
0N/Apackage sun.security.pkcs11.wrapper;
0N/A
0N/A/**
0N/A * This interface holds constants of the PKCS#11 v2.11 standard.
0N/A * This is mainly the content of the 'pkcs11t.h' header file.
0N/A *
0N/A * Mapping of primitiv data types to Java types:
0N/A * <pre>
0N/A * TRUE .......................................... true
0N/A * FALSE ......................................... false
0N/A * CK_BYTE ....................................... byte
0N/A * CK_CHAR ....................................... char
0N/A * CK_UTF8CHAR ................................... char
0N/A * CK_BBOOL ...................................... boolean
0N/A * CK_ULONG ...................................... long
0N/A * CK_LONG ....................................... long
0N/A * CK_FLAGS ...................................... long
0N/A * CK_NOTIFICATION ............................... long
0N/A * CK_SLOT_ID .................................... long
0N/A * CK_SESSION_HANDLE ............................. long
0N/A * CK_USER_TYPE .................................. long
0N/A * CK_SESSION_HANDLE ............................. long
0N/A * CK_STATE ...................................... long
0N/A * CK_OBJECT_HANDLE .............................. long
0N/A * CK_OBJECT_CLASS ............................... long
0N/A * CK_HW_FEATURE_TYPE ............................ long
0N/A * CK_KEY_TYPE ................................... long
0N/A * CK_CERTIFICATE_TYPE ........................... long
0N/A * CK_ATTRIBUTE_TYPE ............................. long
0N/A * CK_VOID_PTR ................................... Object[]
0N/A * CK_BYTE_PTR ................................... byte[]
0N/A * CK_CHAR_PTR ................................... char[]
0N/A * CK_UTF8CHAR_PTR ............................... char[]
0N/A * CK_MECHANISM_TYPE ............................. long
0N/A * CK_RV ......................................... long
0N/A * CK_RSA_PKCS_OAEP_MGF_TYPE ..................... long
0N/A * CK_RSA_PKCS_OAEP_SOURCE_TYPE .................. long
0N/A * CK_RC2_PARAMS ................................. long
0N/A * CK_MAC_GENERAL_PARAMS ......................... long
0N/A * CK_EXTRACT_PARAMS ............................. long
0N/A * CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE .... long
0N/A * CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE .............. long
0N/A * CK_EC_KDF_TYPE ................................ long
0N/A * CK_X9_42_DH_KDF_TYPE .......................... long
0N/A * </pre>
0N/A *
0N/A * @author <a href="mailto:Karl.Scheibelhofer@iaik.at"> Karl Scheibelhofer </a>
0N/A * @invariants
0N/A */
0N/Apublic interface PKCS11Constants {
0N/A
0N/A public static final boolean TRUE = true;
0N/A
0N/A public static final boolean FALSE = false;
0N/A
0N/A public static final Object NULL_PTR = null;
0N/A
0N/A /* some special values for certain CK_ULONG variables */
0N/A
0N/A // Cryptoki defines CK_UNAVAILABLE_INFORMATION as (~0UL)
0N/A // This means it is 0xffffffff in ILP32/LLP64 but 0xffffffffffffffff in LP64.
0N/A // To avoid these differences on the Java side, the native code treats
0N/A // CK_UNAVAILABLE_INFORMATION specially and always returns (long)-1 for it.
0N/A // See ckULongSpecialToJLong() in pkcs11wrapper.h
0N/A public static final long CK_UNAVAILABLE_INFORMATION = -1;
0N/A public static final long CK_EFFECTIVELY_INFINITE = 0L;
0N/A
0N/A /* The following value is always invalid if used as a session */
0N/A /* handle or object handle */
0N/A public static final long CK_INVALID_HANDLE = 0L;
0N/A
0N/A /* CK_NOTIFICATION enumerates the types of notifications that
0N/A * Cryptoki provides to an application */
0N/A /* CK_NOTIFICATION has been changed from an enum to a CK_ULONG
0N/A * for v2.0 */
0N/A public static final long CKN_SURRENDER = 0L;
0N/A
0N/A /* flags: bit flags that provide capabilities of the slot
0N/A * Bit Flag Mask Meaning
0N/A */
0N/A public static final long CKF_TOKEN_PRESENT = 0x00000001L;
0N/A public static final long CKF_REMOVABLE_DEVICE = 0x00000002L;
0N/A public static final long CKF_HW_SLOT = 0x00000004L;
0N/A
0N/A /* The flags parameter is defined as follows:
0N/A * Bit Flag Mask Meaning
0N/A */
0N/A /* has random # generator */
0N/A public static final long CKF_RNG = 0x00000001L;
0N/A
0N/A /* token is write-protected */
0N/A public static final long CKF_WRITE_PROTECTED = 0x00000002L;
0N/A
0N/A /* user must login */
0N/A public static final long CKF_LOGIN_REQUIRED = 0x00000004L;
0N/A
0N/A /* normal user's PIN is set */
0N/A public static final long CKF_USER_PIN_INITIALIZED = 0x00000008L;
0N/A
0N/A /* CKF_RESTORE_KEY_NOT_NEEDED is new for v2.0. If it is set,
0N/A * that means that *every* time the state of cryptographic
0N/A * operations of a session is successfully saved, all keys
0N/A * needed to continue those operations are stored in the state */
0N/A public static final long CKF_RESTORE_KEY_NOT_NEEDED = 0x00000020L;
0N/A
0N/A /* CKF_CLOCK_ON_TOKEN is new for v2.0. If it is set, that means
0N/A * that the token has some sort of clock. The time on that
0N/A * clock is returned in the token info structure */
0N/A public static final long CKF_CLOCK_ON_TOKEN = 0x00000040L;
0N/A
0N/A /* CKF_PROTECTED_AUTHENTICATION_PATH is new for v2.0. If it is
0N/A * set, that means that there is some way for the user to login
0N/A * without sending a PIN through the Cryptoki library itself */
0N/A public static final long CKF_PROTECTED_AUTHENTICATION_PATH = 0x00000100L;
0N/A
0N/A /* CKF_DUAL_CRYPTO_OPERATIONS is new for v2.0. If it is true,
0N/A * that means that a single session with the token can perform
0N/A * dual simultaneous cryptographic operations (digest and
0N/A * encrypt; decrypt and digest; sign and encrypt; and decrypt
0N/A * and sign) */
0N/A public static final long CKF_DUAL_CRYPTO_OPERATIONS = 0x00000200L;
0N/A
0N/A /* CKF_TOKEN_INITIALIZED if new for v2.10. If it is true, the
0N/A * token has been initialized using C_InitializeToken or an
0N/A * equivalent mechanism outside the scope of PKCS #11.
0N/A * Calling C_InitializeToken when this flag is set will cause
0N/A * the token to be reinitialized. */
0N/A public static final long CKF_TOKEN_INITIALIZED = 0x00000400L;
0N/A
0N/A /* CKF_SECONDARY_AUTHENTICATION if new for v2.10. If it is
0N/A * true, the token supports secondary authentication for
0N/A * private key objects. */
0N/A public static final long CKF_SECONDARY_AUTHENTICATION = 0x00000800L;
0N/A
0N/A /* CKF_USER_PIN_COUNT_LOW if new for v2.10. If it is true, an
0N/A * incorrect user login PIN has been entered at least once
0N/A * since the last successful authentication. */
0N/A public static final long CKF_USER_PIN_COUNT_LOW = 0x00010000L;
0N/A
0N/A /* CKF_USER_PIN_FINAL_TRY if new for v2.10. If it is true,
0N/A * supplying an incorrect user PIN will it to become locked. */
0N/A public static final long CKF_USER_PIN_FINAL_TRY = 0x00020000L;
0N/A
0N/A /* CKF_USER_PIN_LOCKED if new for v2.10. If it is true, the
0N/A * user PIN has been locked. User login to the token is not
0N/A * possible. */
0N/A public static final long CKF_USER_PIN_LOCKED = 0x00040000L;
0N/A
0N/A /* CKF_USER_PIN_TO_BE_CHANGED if new for v2.10. If it is true,
0N/A * the user PIN value is the default value set by token
0N/A * initialization or manufacturing. */
0N/A public static final long CKF_USER_PIN_TO_BE_CHANGED = 0x00080000L;
0N/A
0N/A /* CKF_SO_PIN_COUNT_LOW if new for v2.10. If it is true, an
0N/A * incorrect SO login PIN has been entered at least once since
0N/A * the last successful authentication. */
0N/A public static final long CKF_SO_PIN_COUNT_LOW = 0x00100000L;
0N/A
0N/A /* CKF_SO_PIN_FINAL_TRY if new for v2.10. If it is true,
0N/A * supplying an incorrect SO PIN will it to become locked. */
0N/A public static final long CKF_SO_PIN_FINAL_TRY = 0x00200000L;
0N/A
0N/A /* CKF_SO_PIN_LOCKED if new for v2.10. If it is true, the SO
0N/A * PIN has been locked. SO login to the token is not possible.
0N/A */
0N/A public static final long CKF_SO_PIN_LOCKED = 0x00400000L;
0N/A
0N/A /* CKF_SO_PIN_TO_BE_CHANGED if new for v2.10. If it is true,
0N/A * the SO PIN value is the default value set by token
0N/A * initialization or manufacturing. */
0N/A public static final long CKF_SO_PIN_TO_BE_CHANGED = 0x00800000L;
0N/A
0N/A
0N/A /* CK_USER_TYPE enumerates the types of Cryptoki users */
0N/A /* CK_USER_TYPE has been changed from an enum to a CK_ULONG for
0N/A * v2.0 */
0N/A /* Security Officer */
0N/A public static final long CKU_SO = 0L;
0N/A /* Normal user */
0N/A public static final long CKU_USER = 1L;
0N/A
0N/A /* CK_STATE enumerates the session states */
0N/A /* CK_STATE has been changed from an enum to a CK_ULONG for
0N/A * v2.0 */
0N/A public static final long CKS_RO_PUBLIC_SESSION = 0L;
0N/A public static final long CKS_RO_USER_FUNCTIONS = 1L;
0N/A public static final long CKS_RW_PUBLIC_SESSION = 2L;
0N/A public static final long CKS_RW_USER_FUNCTIONS = 3L;
0N/A public static final long CKS_RW_SO_FUNCTIONS = 4L;
0N/A
0N/A
0N/A /* The flags are defined in the following table:
0N/A * Bit Flag Mask Meaning
0N/A */
0N/A /* session is r/w */
0N/A public static final long CKF_RW_SESSION = 0x00000002L;
0N/A /* no parallel */
0N/A public static final long CKF_SERIAL_SESSION = 0x00000004L;
0N/A
0N/A
0N/A /* The following classes of objects are defined: */
0N/A /* CKO_HW_FEATURE is new for v2.10 */
0N/A /* CKO_DOMAIN_PARAMETERS is new for v2.11 */
0N/A public static final long CKO_DATA = 0x00000000L;
0N/A public static final long CKO_CERTIFICATE = 0x00000001L;
0N/A public static final long CKO_PUBLIC_KEY = 0x00000002L;
0N/A public static final long CKO_PRIVATE_KEY = 0x00000003L;
0N/A public static final long CKO_SECRET_KEY = 0x00000004L;
0N/A public static final long CKO_HW_FEATURE = 0x00000005L;
0N/A public static final long CKO_DOMAIN_PARAMETERS = 0x00000006L;
0N/A public static final long CKO_VENDOR_DEFINED = 0x80000000L;
0N/A
0N/A // pseudo object class ANY (for template manager)
0N/A public static final long PCKO_ANY = 0x7FFFFF23L;
0N/A
0N/A
0N/A /* The following hardware feature types are defined */
0N/A public static final long CKH_MONOTONIC_COUNTER = 0x00000001L;
0N/A public static final long CKH_CLOCK = 0x00000002L;
0N/A public static final long CKH_VENDOR_DEFINED = 0x80000000L;
0N/A
0N/A /* the following key types are defined: */
0N/A public static final long CKK_RSA = 0x00000000L;
0N/A public static final long CKK_DSA = 0x00000001L;
0N/A public static final long CKK_DH = 0x00000002L;
0N/A
0N/A /* CKK_ECDSA and CKK_KEA are new for v2.0 */
0N/A /* CKK_ECDSA is deprecated in v2.11, CKK_EC is preferred. */
0N/A public static final long CKK_ECDSA = 0x00000003L;
0N/A public static final long CKK_EC = 0x00000003L;
0N/A public static final long CKK_X9_42_DH = 0x00000004L;
0N/A public static final long CKK_KEA = 0x00000005L;
0N/A
0N/A public static final long CKK_GENERIC_SECRET = 0x00000010L;
0N/A public static final long CKK_RC2 = 0x00000011L;
0N/A public static final long CKK_RC4 = 0x00000012L;
0N/A public static final long CKK_DES = 0x00000013L;
0N/A public static final long CKK_DES2 = 0x00000014L;
0N/A public static final long CKK_DES3 = 0x00000015L;
0N/A
0N/A /* all these key types are new for v2.0 */
0N/A public static final long CKK_CAST = 0x00000016L;
0N/A public static final long CKK_CAST3 = 0x00000017L;
0N/A /* CKK_CAST5 is deprecated in v2.11, CKK_CAST128 is preferred. */
0N/A public static final long CKK_CAST5 = 0x00000018L;
0N/A /* CAST128=CAST5 */
0N/A public static final long CKK_CAST128 = 0x00000018L;
0N/A public static final long CKK_RC5 = 0x00000019L;
0N/A public static final long CKK_IDEA = 0x0000001AL;
0N/A public static final long CKK_SKIPJACK = 0x0000001BL;
0N/A public static final long CKK_BATON = 0x0000001CL;
0N/A public static final long CKK_JUNIPER = 0x0000001DL;
0N/A public static final long CKK_CDMF = 0x0000001EL;
0N/A public static final long CKK_AES = 0x0000001FL;
0N/A // v2.20
0N/A public static final long CKK_BLOWFISH = 0x00000020L;
0N/A
0N/A public static final long CKK_VENDOR_DEFINED = 0x80000000L;
0N/A
3645N/A // new for v2.20 amendment 3
3645N/A //public static final long CKK_CAMELLIA = 0x00000025L;
3645N/A //public static final long CKK_ARIA = 0x00000026L;
3645N/A
0N/A // pseudo key type ANY (for template manager)
0N/A public static final long PCKK_ANY = 0x7FFFFF22L;
0N/A
0N/A public static final long PCKK_HMAC = 0x7FFFFF23L;
0N/A public static final long PCKK_SSLMAC = 0x7FFFFF24L;
0N/A public static final long PCKK_TLSPREMASTER = 0x7FFFFF25L;
0N/A public static final long PCKK_TLSRSAPREMASTER = 0x7FFFFF26L;
0N/A public static final long PCKK_TLSMASTER = 0x7FFFFF27L;
0N/A
0N/A /* The following certificate types are defined: */
0N/A /* CKC_X_509_ATTR_CERT is new for v2.10 */
0N/A public static final long CKC_X_509 = 0x00000000L;
0N/A public static final long CKC_X_509_ATTR_CERT = 0x00000001L;
0N/A public static final long CKC_VENDOR_DEFINED = 0x80000000L;
0N/A
0N/A
0N/A /* The following attribute types are defined: */
0N/A public static final long CKA_CLASS = 0x00000000L;
0N/A public static final long CKA_TOKEN = 0x00000001L;
0N/A public static final long CKA_PRIVATE = 0x00000002L;
0N/A public static final long CKA_LABEL = 0x00000003L;
0N/A public static final long CKA_APPLICATION = 0x00000010L;
0N/A public static final long CKA_VALUE = 0x00000011L;
0N/A
0N/A /* CKA_OBJECT_ID is new for v2.10 */
0N/A public static final long CKA_OBJECT_ID = 0x00000012L;
0N/A
0N/A public static final long CKA_CERTIFICATE_TYPE = 0x00000080L;
0N/A public static final long CKA_ISSUER = 0x00000081L;
0N/A public static final long CKA_SERIAL_NUMBER = 0x00000082L;
0N/A
0N/A /* CKA_AC_ISSUER, CKA_OWNER, and CKA_ATTR_TYPES are new L;
0N/A * for v2.10 */
0N/A public static final long CKA_AC_ISSUER = 0x00000083L;
0N/A public static final long CKA_OWNER = 0x00000084L;
0N/A public static final long CKA_ATTR_TYPES = 0x00000085L;
0N/A
0N/A /* CKA_TRUSTED is new for v2.11 */
0N/A public static final long CKA_TRUSTED = 0x00000086L;
0N/A
0N/A public static final long CKA_KEY_TYPE = 0x00000100L;
0N/A public static final long CKA_SUBJECT = 0x00000101L;
0N/A public static final long CKA_ID = 0x00000102L;
0N/A public static final long CKA_SENSITIVE = 0x00000103L;
0N/A public static final long CKA_ENCRYPT = 0x00000104L;
0N/A public static final long CKA_DECRYPT = 0x00000105L;
0N/A public static final long CKA_WRAP = 0x00000106L;
0N/A public static final long CKA_UNWRAP = 0x00000107L;
0N/A public static final long CKA_SIGN = 0x00000108L;
0N/A public static final long CKA_SIGN_RECOVER = 0x00000109L;
0N/A public static final long CKA_VERIFY = 0x0000010AL;
0N/A public static final long CKA_VERIFY_RECOVER = 0x0000010BL;
0N/A public static final long CKA_DERIVE = 0x0000010CL;
0N/A public static final long CKA_START_DATE = 0x00000110L;
0N/A public static final long CKA_END_DATE = 0x00000111L;
0N/A public static final long CKA_MODULUS = 0x00000120L;
0N/A public static final long CKA_MODULUS_BITS = 0x00000121L;
0N/A public static final long CKA_PUBLIC_EXPONENT = 0x00000122L;
0N/A public static final long CKA_PRIVATE_EXPONENT = 0x00000123L;
0N/A public static final long CKA_PRIME_1 = 0x00000124L;
0N/A public static final long CKA_PRIME_2 = 0x00000125L;
0N/A public static final long CKA_EXPONENT_1 = 0x00000126L;
0N/A public static final long CKA_EXPONENT_2 = 0x00000127L;
0N/A public static final long CKA_COEFFICIENT = 0x00000128L;
0N/A public static final long CKA_PRIME = 0x00000130L;
0N/A public static final long CKA_SUBPRIME = 0x00000131L;
0N/A public static final long CKA_BASE = 0x00000132L;
0N/A
0N/A /* CKA_PRIME_BITS and CKA_SUB_PRIME_BITS are new for v2.11 */
0N/A public static final long CKA_PRIME_BITS = 0x00000133L;
0N/A public static final long CKA_SUB_PRIME_BITS = 0x00000134L;
0N/A
0N/A public static final long CKA_VALUE_BITS = 0x00000160L;
0N/A public static final long CKA_VALUE_LEN = 0x00000161L;
0N/A
0N/A /* CKA_EXTRACTABLE, CKA_LOCAL, CKA_NEVER_EXTRACTABLE,
0N/A * CKA_ALWAYS_SENSITIVE, CKA_MODIFIABLE, CKA_ECDSA_PARAMS,
0N/A * and CKA_EC_POINT are new for v2.0 */
0N/A public static final long CKA_EXTRACTABLE = 0x00000162L;
0N/A public static final long CKA_LOCAL = 0x00000163L;
0N/A public static final long CKA_NEVER_EXTRACTABLE = 0x00000164L;
0N/A public static final long CKA_ALWAYS_SENSITIVE = 0x00000165L;
0N/A
0N/A /* CKA_KEY_GEN_MECHANISM is new for v2.11 */
0N/A public static final long CKA_KEY_GEN_MECHANISM = 0x00000166L;
0N/A
0N/A public static final long CKA_MODIFIABLE = 0x00000170L;
0N/A
0N/A /* CKA_ECDSA_PARAMS is deprecated in v2.11,
0N/A * CKA_EC_PARAMS is preferred. */
0N/A public static final long CKA_ECDSA_PARAMS = 0x00000180L;
0N/A public static final long CKA_EC_PARAMS = 0x00000180L;
0N/A public static final long CKA_EC_POINT = 0x00000181L;
0N/A
0N/A /* CKA_SECONDARY_AUTH, CKA_AUTH_PIN_FLAGS,
0N/A * CKA_HW_FEATURE_TYPE, CKA_RESET_ON_INIT, and CKA_HAS_RESET
0N/A * are new for v2.10 */
0N/A public static final long CKA_SECONDARY_AUTH = 0x00000200L;
0N/A public static final long CKA_AUTH_PIN_FLAGS = 0x00000201L;
0N/A public static final long CKA_HW_FEATURE_TYPE = 0x00000300L;
0N/A public static final long CKA_RESET_ON_INIT = 0x00000301L;
0N/A public static final long CKA_HAS_RESET = 0x00000302L;
0N/A
0N/A public static final long CKA_VENDOR_DEFINED = 0x80000000L;
0N/A
0N/A /* the following mechanism types are defined: */
0N/A public static final long CKM_RSA_PKCS_KEY_PAIR_GEN = 0x00000000L;
0N/A public static final long CKM_RSA_PKCS = 0x00000001L;
0N/A public static final long CKM_RSA_9796 = 0x00000002L;
0N/A public static final long CKM_RSA_X_509 = 0x00000003L;
0N/A
0N/A /* CKM_MD2_RSA_PKCS, CKM_MD5_RSA_PKCS, and CKM_SHA1_RSA_PKCS
0N/A * are new for v2.0. They are mechanisms which hash and sign */
0N/A public static final long CKM_MD2_RSA_PKCS = 0x00000004L;
0N/A public static final long CKM_MD5_RSA_PKCS = 0x00000005L;
0N/A public static final long CKM_SHA1_RSA_PKCS = 0x00000006L;
0N/A
0N/A /* CKM_RIPEMD128_RSA_PKCS, CKM_RIPEMD160_RSA_PKCS, and
0N/A * CKM_RSA_PKCS_OAEP are new for v2.10 */
0N/A public static final long CKM_RIPEMD128_RSA_PKCS = 0x00000007L;
0N/A public static final long CKM_RIPEMD160_RSA_PKCS = 0x00000008L;
0N/A public static final long CKM_RSA_PKCS_OAEP = 0x00000009L;
0N/A
0N/A /* CKM_RSA_X9_31_KEY_PAIR_GEN, CKM_RSA_X9_31, CKM_SHA1_RSA_X9_31,
0N/A * CKM_RSA_PKCS_PSS, and CKM_SHA1_RSA_PKCS_PSS are new for v2.11 */
0N/A public static final long CKM_RSA_X9_31_KEY_PAIR_GEN = 0x0000000AL;
0N/A public static final long CKM_RSA_X9_31 = 0x0000000BL;
0N/A public static final long CKM_SHA1_RSA_X9_31 = 0x0000000CL;
0N/A public static final long CKM_RSA_PKCS_PSS = 0x0000000DL;
0N/A public static final long CKM_SHA1_RSA_PKCS_PSS = 0x0000000EL;
0N/A
0N/A public static final long CKM_DSA_KEY_PAIR_GEN = 0x00000010L;
0N/A public static final long CKM_DSA = 0x00000011L;
0N/A public static final long CKM_DSA_SHA1 = 0x00000012L;
0N/A public static final long CKM_DH_PKCS_KEY_PAIR_GEN = 0x00000020L;
0N/A public static final long CKM_DH_PKCS_DERIVE = 0x00000021L;
0N/A
0N/A /* CKM_X9_42_DH_KEY_PAIR_GEN, CKM_X9_42_DH_DERIVE,
0N/A * CKM_X9_42_DH_HYBRID_DERIVE, and CKM_X9_42_MQV_DERIVE are new for
0N/A * v2.11 */
0N/A public static final long CKM_X9_42_DH_KEY_PAIR_GEN = 0x00000030L;
0N/A public static final long CKM_X9_42_DH_DERIVE = 0x00000031L;
0N/A public static final long CKM_X9_42_DH_HYBRID_DERIVE = 0x00000032L;
0N/A public static final long CKM_X9_42_MQV_DERIVE = 0x00000033L;
0N/A
0N/A // v2.20
0N/A public static final long CKM_SHA256_RSA_PKCS = 0x00000040L;
0N/A public static final long CKM_SHA384_RSA_PKCS = 0x00000041L;
0N/A public static final long CKM_SHA512_RSA_PKCS = 0x00000042L;
0N/A
0N/A public static final long CKM_RC2_KEY_GEN = 0x00000100L;
0N/A public static final long CKM_RC2_ECB = 0x00000101L;
0N/A public static final long CKM_RC2_CBC = 0x00000102L;
0N/A public static final long CKM_RC2_MAC = 0x00000103L;
0N/A
0N/A /* CKM_RC2_MAC_GENERAL and CKM_RC2_CBC_PAD are new for v2.0 */
0N/A public static final long CKM_RC2_MAC_GENERAL = 0x00000104L;
0N/A public static final long CKM_RC2_CBC_PAD = 0x00000105L;
0N/A
0N/A public static final long CKM_RC4_KEY_GEN = 0x00000110L;
0N/A public static final long CKM_RC4 = 0x00000111L;
0N/A public static final long CKM_DES_KEY_GEN = 0x00000120L;
0N/A public static final long CKM_DES_ECB = 0x00000121L;
0N/A public static final long CKM_DES_CBC = 0x00000122L;
0N/A public static final long CKM_DES_MAC = 0x00000123L;
0N/A
0N/A /* CKM_DES_MAC_GENERAL and CKM_DES_CBC_PAD are new for v2.0 */
0N/A public static final long CKM_DES_MAC_GENERAL = 0x00000124L;
0N/A public static final long CKM_DES_CBC_PAD = 0x00000125L;
0N/A
0N/A public static final long CKM_DES2_KEY_GEN = 0x00000130L;
0N/A public static final long CKM_DES3_KEY_GEN = 0x00000131L;
0N/A public static final long CKM_DES3_ECB = 0x00000132L;
0N/A public static final long CKM_DES3_CBC = 0x00000133L;
0N/A public static final long CKM_DES3_MAC = 0x00000134L;
0N/A
0N/A /* CKM_DES3_MAC_GENERAL, CKM_DES3_CBC_PAD, CKM_CDMF_KEY_GEN,
0N/A * CKM_CDMF_ECB, CKM_CDMF_CBC, CKM_CDMF_MAC,
0N/A * CKM_CDMF_MAC_GENERAL, and CKM_CDMF_CBC_PAD are new for v2.0 */
0N/A public static final long CKM_DES3_MAC_GENERAL = 0x00000135L;
0N/A public static final long CKM_DES3_CBC_PAD = 0x00000136L;
0N/A public static final long CKM_CDMF_KEY_GEN = 0x00000140L;
0N/A public static final long CKM_CDMF_ECB = 0x00000141L;
0N/A public static final long CKM_CDMF_CBC = 0x00000142L;
0N/A public static final long CKM_CDMF_MAC = 0x00000143L;
0N/A public static final long CKM_CDMF_MAC_GENERAL = 0x00000144L;
0N/A public static final long CKM_CDMF_CBC_PAD = 0x00000145L;
0N/A
0N/A public static final long CKM_MD2 = 0x00000200L;
0N/A
0N/A /* CKM_MD2_HMAC and CKM_MD2_HMAC_GENERAL are new for v2.0 */
0N/A public static final long CKM_MD2_HMAC = 0x00000201L;
0N/A public static final long CKM_MD2_HMAC_GENERAL = 0x00000202L;
0N/A
0N/A public static final long CKM_MD5 = 0x00000210L;
0N/A
0N/A /* CKM_MD5_HMAC and CKM_MD5_HMAC_GENERAL are new for v2.0 */
0N/A public static final long CKM_MD5_HMAC = 0x00000211L;
0N/A public static final long CKM_MD5_HMAC_GENERAL = 0x00000212L;
0N/A
0N/A public static final long CKM_SHA_1 = 0x00000220L;
0N/A
0N/A /* CKM_SHA_1_HMAC and CKM_SHA_1_HMAC_GENERAL are new for v2.0 */
0N/A public static final long CKM_SHA_1_HMAC = 0x00000221L;
0N/A public static final long CKM_SHA_1_HMAC_GENERAL = 0x00000222L;
0N/A
0N/A /* CKM_RIPEMD128, CKM_RIPEMD128_HMAC,
0N/A * CKM_RIPEMD128_HMAC_GENERAL, CKM_RIPEMD160, CKM_RIPEMD160_HMAC,
0N/A * and CKM_RIPEMD160_HMAC_GENERAL are new for v2.10 */
0N/A public static final long CKM_RIPEMD128 = 0x00000230L;
0N/A public static final long CKM_RIPEMD128_HMAC = 0x00000231L;
0N/A public static final long CKM_RIPEMD128_HMAC_GENERAL = 0x00000232L;
0N/A public static final long CKM_RIPEMD160 = 0x00000240L;
0N/A public static final long CKM_RIPEMD160_HMAC = 0x00000241L;
0N/A public static final long CKM_RIPEMD160_HMAC_GENERAL = 0x00000242L;
0N/A
0N/A // v2.20
0N/A public static final long CKM_SHA256 = 0x00000250L;
0N/A public static final long CKM_SHA256_HMAC = 0x00000251L;
0N/A public static final long CKM_SHA256_HMAC_GENERAL = 0x00000252L;
0N/A
0N/A public static final long CKM_SHA384 = 0x00000260L;
0N/A public static final long CKM_SHA384_HMAC = 0x00000261L;
0N/A public static final long CKM_SHA384_HMAC_GENERAL = 0x00000262L;
0N/A
0N/A public static final long CKM_SHA512 = 0x00000270L;
0N/A public static final long CKM_SHA512_HMAC = 0x00000271L;
0N/A public static final long CKM_SHA512_HMAC_GENERAL = 0x00000272L;
0N/A
0N/A /* All of the following mechanisms are new for v2.0 */
0N/A /* Note that CAST128 and CAST5 are the same algorithm */
0N/A public static final long CKM_CAST_KEY_GEN = 0x00000300L;
0N/A public static final long CKM_CAST_ECB = 0x00000301L;
0N/A public static final long CKM_CAST_CBC = 0x00000302L;
0N/A public static final long CKM_CAST_MAC = 0x00000303L;
0N/A public static final long CKM_CAST_MAC_GENERAL = 0x00000304L;
0N/A public static final long CKM_CAST_CBC_PAD = 0x00000305L;
0N/A public static final long CKM_CAST3_KEY_GEN = 0x00000310L;
0N/A public static final long CKM_CAST3_ECB = 0x00000311L;
0N/A public static final long CKM_CAST3_CBC = 0x00000312L;
0N/A public static final long CKM_CAST3_MAC = 0x00000313L;
0N/A public static final long CKM_CAST3_MAC_GENERAL = 0x00000314L;
0N/A public static final long CKM_CAST3_CBC_PAD = 0x00000315L;
0N/A public static final long CKM_CAST5_KEY_GEN = 0x00000320L;
0N/A public static final long CKM_CAST128_KEY_GEN = 0x00000320L;
0N/A public static final long CKM_CAST5_ECB = 0x00000321L;
0N/A public static final long CKM_CAST128_ECB = 0x00000321L;
0N/A public static final long CKM_CAST5_CBC = 0x00000322L;
0N/A public static final long CKM_CAST128_CBC = 0x00000322L;
0N/A public static final long CKM_CAST5_MAC = 0x00000323L;
0N/A public static final long CKM_CAST128_MAC = 0x00000323L;
0N/A public static final long CKM_CAST5_MAC_GENERAL = 0x00000324L;
0N/A public static final long CKM_CAST128_MAC_GENERAL = 0x00000324L;
0N/A public static final long CKM_CAST5_CBC_PAD = 0x00000325L;
0N/A public static final long CKM_CAST128_CBC_PAD = 0x00000325L;
0N/A public static final long CKM_RC5_KEY_GEN = 0x00000330L;
0N/A public static final long CKM_RC5_ECB = 0x00000331L;
0N/A public static final long CKM_RC5_CBC = 0x00000332L;
0N/A public static final long CKM_RC5_MAC = 0x00000333L;
0N/A public static final long CKM_RC5_MAC_GENERAL = 0x00000334L;
0N/A public static final long CKM_RC5_CBC_PAD = 0x00000335L;
0N/A public static final long CKM_IDEA_KEY_GEN = 0x00000340L;
0N/A public static final long CKM_IDEA_ECB = 0x00000341L;
0N/A public static final long CKM_IDEA_CBC = 0x00000342L;
0N/A public static final long CKM_IDEA_MAC = 0x00000343L;
0N/A public static final long CKM_IDEA_MAC_GENERAL = 0x00000344L;
0N/A public static final long CKM_IDEA_CBC_PAD = 0x00000345L;
0N/A public static final long CKM_GENERIC_SECRET_KEY_GEN = 0x00000350L;
0N/A public static final long CKM_CONCATENATE_BASE_AND_KEY = 0x00000360L;
0N/A public static final long CKM_CONCATENATE_BASE_AND_DATA = 0x00000362L;
0N/A public static final long CKM_CONCATENATE_DATA_AND_BASE = 0x00000363L;
0N/A public static final long CKM_XOR_BASE_AND_DATA = 0x00000364L;
0N/A public static final long CKM_EXTRACT_KEY_FROM_KEY = 0x00000365L;
0N/A public static final long CKM_SSL3_PRE_MASTER_KEY_GEN = 0x00000370L;
0N/A public static final long CKM_SSL3_MASTER_KEY_DERIVE = 0x00000371L;
0N/A public static final long CKM_SSL3_KEY_AND_MAC_DERIVE = 0x00000372L;
0N/A
0N/A /* CKM_SSL3_MASTER_KEY_DERIVE_DH, CKM_TLS_PRE_MASTER_KEY_GEN,
0N/A * CKM_TLS_MASTER_KEY_DERIVE, CKM_TLS_KEY_AND_MAC_DERIVE, and
0N/A * CKM_TLS_MASTER_KEY_DERIVE_DH are new for v2.11 */
0N/A public static final long CKM_SSL3_MASTER_KEY_DERIVE_DH = 0x00000373L;
0N/A public static final long CKM_TLS_PRE_MASTER_KEY_GEN = 0x00000374L;
0N/A public static final long CKM_TLS_MASTER_KEY_DERIVE = 0x00000375L;
0N/A public static final long CKM_TLS_KEY_AND_MAC_DERIVE = 0x00000376L;
0N/A public static final long CKM_TLS_MASTER_KEY_DERIVE_DH = 0x00000377L;
0N/A public static final long CKM_TLS_PRF = 0x00000378L;
0N/A
0N/A public static final long CKM_SSL3_MD5_MAC = 0x00000380L;
0N/A public static final long CKM_SSL3_SHA1_MAC = 0x00000381L;
0N/A public static final long CKM_MD5_KEY_DERIVATION = 0x00000390L;
0N/A public static final long CKM_MD2_KEY_DERIVATION = 0x00000391L;
0N/A public static final long CKM_SHA1_KEY_DERIVATION = 0x00000392L;
0N/A
0N/A // v2.20
0N/A public static final long CKM_SHA256_KEY_DERIVATION = 0x00000393L;
0N/A public static final long CKM_SHA384_KEY_DERIVATION = 0x00000394L;
0N/A public static final long CKM_SHA512_KEY_DERIVATION = 0x00000395L;
0N/A
0N/A public static final long CKM_PBE_MD2_DES_CBC = 0x000003A0L;
0N/A public static final long CKM_PBE_MD5_DES_CBC = 0x000003A1L;
0N/A public static final long CKM_PBE_MD5_CAST_CBC = 0x000003A2L;
0N/A public static final long CKM_PBE_MD5_CAST3_CBC = 0x000003A3L;
0N/A public static final long CKM_PBE_MD5_CAST5_CBC = 0x000003A4L;
0N/A public static final long CKM_PBE_MD5_CAST128_CBC = 0x000003A4L;
0N/A public static final long CKM_PBE_SHA1_CAST5_CBC = 0x000003A5L;
0N/A public static final long CKM_PBE_SHA1_CAST128_CBC = 0x000003A5L;
0N/A public static final long CKM_PBE_SHA1_RC4_128 = 0x000003A6L;
0N/A public static final long CKM_PBE_SHA1_RC4_40 = 0x000003A7L;
0N/A public static final long CKM_PBE_SHA1_DES3_EDE_CBC = 0x000003A8L;
0N/A public static final long CKM_PBE_SHA1_DES2_EDE_CBC = 0x000003A9L;
0N/A public static final long CKM_PBE_SHA1_RC2_128_CBC = 0x000003AAL;
0N/A public static final long CKM_PBE_SHA1_RC2_40_CBC = 0x000003ABL;
0N/A
0N/A /* CKM_PKCS5_PBKD2 is new for v2.10 */
0N/A public static final long CKM_PKCS5_PBKD2 = 0x000003B0L;
0N/A
0N/A public static final long CKM_PBA_SHA1_WITH_SHA1_HMAC = 0x000003C0L;
0N/A public static final long CKM_KEY_WRAP_LYNKS = 0x00000400L;
0N/A public static final long CKM_KEY_WRAP_SET_OAEP = 0x00000401L;
0N/A
0N/A /* Fortezza mechanisms */
0N/A public static final long CKM_SKIPJACK_KEY_GEN = 0x00001000L;
0N/A public static final long CKM_SKIPJACK_ECB64 = 0x00001001L;
0N/A public static final long CKM_SKIPJACK_CBC64 = 0x00001002L;
0N/A public static final long CKM_SKIPJACK_OFB64 = 0x00001003L;
0N/A public static final long CKM_SKIPJACK_CFB64 = 0x00001004L;
0N/A public static final long CKM_SKIPJACK_CFB32 = 0x00001005L;
0N/A public static final long CKM_SKIPJACK_CFB16 = 0x00001006L;
0N/A public static final long CKM_SKIPJACK_CFB8 = 0x00001007L;
0N/A public static final long CKM_SKIPJACK_WRAP = 0x00001008L;
0N/A public static final long CKM_SKIPJACK_PRIVATE_WRAP = 0x00001009L;
0N/A public static final long CKM_SKIPJACK_RELAYX = 0x0000100AL;
0N/A public static final long CKM_KEA_KEY_PAIR_GEN = 0x00001010L;
0N/A public static final long CKM_KEA_KEY_DERIVE = 0x00001011L;
0N/A public static final long CKM_FORTEZZA_TIMESTAMP = 0x00001020L;
0N/A public static final long CKM_BATON_KEY_GEN = 0x00001030L;
0N/A public static final long CKM_BATON_ECB128 = 0x00001031L;
0N/A public static final long CKM_BATON_ECB96 = 0x00001032L;
0N/A public static final long CKM_BATON_CBC128 = 0x00001033L;
0N/A public static final long CKM_BATON_COUNTER = 0x00001034L;
0N/A public static final long CKM_BATON_SHUFFLE = 0x00001035L;
0N/A public static final long CKM_BATON_WRAP = 0x00001036L;
0N/A
0N/A /* CKM_ECDSA_KEY_PAIR_GEN is deprecated in v2.11,
0N/A * CKM_EC_KEY_PAIR_GEN is preferred */
0N/A public static final long CKM_ECDSA_KEY_PAIR_GEN = 0x00001040L;
0N/A public static final long CKM_EC_KEY_PAIR_GEN = 0x00001040L;
0N/A
0N/A public static final long CKM_ECDSA = 0x00001041L;
0N/A public static final long CKM_ECDSA_SHA1 = 0x00001042L;
0N/A
0N/A /* CKM_ECDH1_DERIVE, CKM_ECDH1_COFACTOR_DERIVE, and CKM_ECMQV_DERIVE
0N/A * are new for v2.11 */
0N/A public static final long CKM_ECDH1_DERIVE = 0x00001050L;
0N/A public static final long CKM_ECDH1_COFACTOR_DERIVE = 0x00001051L;
0N/A public static final long CKM_ECMQV_DERIVE = 0x00001052L;
0N/A
0N/A public static final long CKM_JUNIPER_KEY_GEN = 0x00001060L;
0N/A public static final long CKM_JUNIPER_ECB128 = 0x00001061L;
0N/A public static final long CKM_JUNIPER_CBC128 = 0x00001062L;
0N/A public static final long CKM_JUNIPER_COUNTER = 0x00001063L;
0N/A public static final long CKM_JUNIPER_SHUFFLE = 0x00001064L;
0N/A public static final long CKM_JUNIPER_WRAP = 0x00001065L;
0N/A public static final long CKM_FASTHASH = 0x00001070L;
0N/A
0N/A /* CKM_AES_KEY_GEN, CKM_AES_ECB, CKM_AES_CBC, CKM_AES_MAC,
0N/A * CKM_AES_MAC_GENERAL, CKM_AES_CBC_PAD, CKM_DSA_PARAMETER_GEN,
0N/A * CKM_DH_PKCS_PARAMETER_GEN, and CKM_X9_42_DH_PARAMETER_GEN are
0N/A * new for v2.11 */
0N/A public static final long CKM_AES_KEY_GEN = 0x00001080L;
0N/A public static final long CKM_AES_ECB = 0x00001081L;
0N/A public static final long CKM_AES_CBC = 0x00001082L;
0N/A public static final long CKM_AES_MAC = 0x00001083L;
0N/A public static final long CKM_AES_MAC_GENERAL = 0x00001084L;
0N/A public static final long CKM_AES_CBC_PAD = 0x00001085L;
0N/A // v2.20
0N/A public static final long CKM_BLOWFISH_KEY_GEN = 0x00001090L;
0N/A public static final long CKM_BLOWFISH_CBC = 0x00001091L;
0N/A public static final long CKM_DSA_PARAMETER_GEN = 0x00002000L;
0N/A public static final long CKM_DH_PKCS_PARAMETER_GEN = 0x00002001L;
0N/A public static final long CKM_X9_42_DH_PARAMETER_GEN = 0x00002002L;
0N/A
0N/A public static final long CKM_VENDOR_DEFINED = 0x80000000L;
0N/A
3645N/A // new for v2.20 amendment 3
3645N/A public static final long CKM_SHA224 = 0x00000255L;
3645N/A public static final long CKM_SHA224_HMAC = 0x00000256L;
3645N/A public static final long CKM_SHA224_HMAC_GENERAL = 0x00000257L;
3645N/A public static final long CKM_SHA224_KEY_DERIVATION = 0x00000396L;
3645N/A public static final long CKM_SHA224_RSA_PKCS = 0x00000046L;
3645N/A public static final long CKM_SHA224_RSA_PKCS_PSS = 0x00000047L;
3645N/A public static final long CKM_AES_CTR = 0x00001086L;
3645N/A /*
3645N/A public static final long CKM_CAMELLIA_KEY_GEN = 0x00000550L;
3645N/A public static final long CKM_CAMELLIA_ECB = 0x00000551L;
3645N/A public static final long CKM_CAMELLIA_CBC = 0x00000552L;
3645N/A public static final long CKM_CAMELLIA_MAC = 0x00000553L;
3645N/A public static final long CKM_CAMELLIA_MAC_GENERAL = 0x00000554L;
3645N/A public static final long CKM_CAMELLIA_CBC_PAD = 0x00000555L;
3645N/A public static final long CKM_CAMELLIA_ECB_ENCRYPT_DATA = 0x00000556L;
3645N/A public static final long CKM_CAMELLIA_CBC_ENCRYPT_DATA = 0x00000557L;
3645N/A public static final long CKM_CAMELLIA_CTR = 0x00000558L;
3645N/A public static final long CKM_ARIA_KEY_GEN = 0x00000560L;
3645N/A public static final long CKM_ARIA_ECB = 0x00000561L;
3645N/A public static final long CKM_ARIA_CBC = 0x00000562L;
3645N/A public static final long CKM_ARIA_MAC = 0x00000563L;
3645N/A public static final long CKM_ARIA_MAC_GENERAL = 0x00000564L;
3645N/A public static final long CKM_ARIA_CBC_PAD = 0x00000565L;
3645N/A public static final long CKM_ARIA_ECB_ENCRYPT_DATA = 0x00000566L;
3645N/A public static final long CKM_ARIA_CBC_ENCRYPT_DATA = 0x00000567L;
3645N/A */
3645N/A
0N/A // NSS private
0N/A public static final long CKM_NSS_TLS_PRF_GENERAL = 0x80000373L;
0N/A
0N/A // ids for our pseudo mechanisms SecureRandom and KeyStore
0N/A public static final long PCKM_SECURERANDOM = 0x7FFFFF20L;
0N/A public static final long PCKM_KEYSTORE = 0x7FFFFF21L;
0N/A
0N/A /* The flags are defined as follows:
0N/A * Bit Flag Mask Meaning */
0N/A /* performed by HW */
0N/A public static final long CKF_HW = 0x00000001L;
0N/A
0N/A /* The flags CKF_ENCRYPT, CKF_DECRYPT, CKF_DIGEST, CKF_SIGN,
0N/A * CKG_SIGN_RECOVER, CKF_VERIFY, CKF_VERIFY_RECOVER,
0N/A * CKF_GENERATE, CKF_GENERATE_KEY_PAIR, CKF_WRAP, CKF_UNWRAP,
0N/A * and CKF_DERIVE are new for v2.0. They specify whether or not
0N/A * a mechanism can be used for a particular task */
0N/A public static final long CKF_ENCRYPT = 0x00000100L;
0N/A public static final long CKF_DECRYPT = 0x00000200L;
0N/A public static final long CKF_DIGEST = 0x00000400L;
0N/A public static final long CKF_SIGN = 0x00000800L;
0N/A public static final long CKF_SIGN_RECOVER = 0x00001000L;
0N/A public static final long CKF_VERIFY = 0x00002000L;
0N/A public static final long CKF_VERIFY_RECOVER = 0x00004000L;
0N/A public static final long CKF_GENERATE = 0x00008000L;
0N/A public static final long CKF_GENERATE_KEY_PAIR = 0x00010000L;
0N/A public static final long CKF_WRAP = 0x00020000L;
0N/A public static final long CKF_UNWRAP = 0x00040000L;
0N/A public static final long CKF_DERIVE = 0x00080000L;
0N/A
0N/A /* CKF_EC_F_P, CKF_EC_F_2M, CKF_EC_ECPARAMETERS, CKF_EC_NAMEDCURVE,
0N/A * CKF_EC_UNCOMPRESS, and CKF_EC_COMPRESS are new for v2.11. They
0N/A * describe a token's EC capabilities not available in mechanism
0N/A * information. */
0N/A public static final long CKF_EC_F_P = 0x00100000L;
0N/A public static final long CKF_EC_F_2M = 0x00200000L;
0N/A public static final long CKF_EC_ECPARAMETERS = 0x00400000L;
0N/A public static final long CKF_EC_NAMEDCURVE = 0x00800000L;
0N/A public static final long CKF_EC_UNCOMPRESS = 0x01000000L;
0N/A public static final long CKF_EC_COMPRESS = 0x02000000L;
0N/A
0N/A /* FALSE for 2.01 */
0N/A public static final long CKF_EXTENSION = 0x80000000L;
0N/A
0N/A
0N/A /* CK_RV is a value that identifies the return value of a
0N/A * Cryptoki function */
0N/A /* CK_RV was changed from CK_USHORT to CK_ULONG for v2.0 */
0N/A public static final long CKR_OK = 0x00000000L;
0N/A public static final long CKR_CANCEL = 0x00000001L;
0N/A public static final long CKR_HOST_MEMORY = 0x00000002L;
0N/A public static final long CKR_SLOT_ID_INVALID = 0x00000003L;
0N/A
0N/A /* CKR_FLAGS_INVALID was removed for v2.0 */
0N/A
0N/A /* CKR_GENERAL_ERROR and CKR_FUNCTION_FAILED are new for v2.0 */
0N/A public static final long CKR_GENERAL_ERROR = 0x00000005L;
0N/A public static final long CKR_FUNCTION_FAILED = 0x00000006L;
0N/A
0N/A /* CKR_ARGUMENTS_BAD, CKR_NO_EVENT, CKR_NEED_TO_CREATE_THREADS,
0N/A * and CKR_CANT_LOCK are new for v2.01 */
0N/A public static final long CKR_ARGUMENTS_BAD = 0x00000007L;
0N/A public static final long CKR_NO_EVENT = 0x00000008L;
0N/A public static final long CKR_NEED_TO_CREATE_THREADS = 0x00000009L;
0N/A public static final long CKR_CANT_LOCK = 0x0000000AL;
0N/A
0N/A public static final long CKR_ATTRIBUTE_READ_ONLY = 0x00000010L;
0N/A public static final long CKR_ATTRIBUTE_SENSITIVE = 0x00000011L;
0N/A public static final long CKR_ATTRIBUTE_TYPE_INVALID = 0x00000012L;
0N/A public static final long CKR_ATTRIBUTE_VALUE_INVALID = 0x00000013L;
0N/A public static final long CKR_DATA_INVALID = 0x00000020L;
0N/A public static final long CKR_DATA_LEN_RANGE = 0x00000021L;
0N/A public static final long CKR_DEVICE_ERROR = 0x00000030L;
0N/A public static final long CKR_DEVICE_MEMORY = 0x00000031L;
0N/A public static final long CKR_DEVICE_REMOVED = 0x00000032L;
0N/A public static final long CKR_ENCRYPTED_DATA_INVALID = 0x00000040L;
0N/A public static final long CKR_ENCRYPTED_DATA_LEN_RANGE = 0x00000041L;
0N/A public static final long CKR_FUNCTION_CANCELED = 0x00000050L;
0N/A public static final long CKR_FUNCTION_NOT_PARALLEL = 0x00000051L;
0N/A
0N/A /* CKR_FUNCTION_NOT_SUPPORTED is new for v2.0 */
0N/A public static final long CKR_FUNCTION_NOT_SUPPORTED = 0x00000054L;
0N/A
0N/A public static final long CKR_KEY_HANDLE_INVALID = 0x00000060L;
0N/A
0N/A /* CKR_KEY_SENSITIVE was removed for v2.0 */
0N/A
0N/A public static final long CKR_KEY_SIZE_RANGE = 0x00000062L;
0N/A public static final long CKR_KEY_TYPE_INCONSISTENT = 0x00000063L;
0N/A
0N/A /* CKR_KEY_NOT_NEEDED, CKR_KEY_CHANGED, CKR_KEY_NEEDED,
0N/A * CKR_KEY_INDIGESTIBLE, CKR_KEY_FUNCTION_NOT_PERMITTED,
0N/A * CKR_KEY_NOT_WRAPPABLE, and CKR_KEY_UNEXTRACTABLE are new for
0N/A * v2.0 */
0N/A public static final long CKR_KEY_NOT_NEEDED = 0x00000064L;
0N/A public static final long CKR_KEY_CHANGED = 0x00000065L;
0N/A public static final long CKR_KEY_NEEDED = 0x00000066L;
0N/A public static final long CKR_KEY_INDIGESTIBLE = 0x00000067L;
0N/A public static final long CKR_KEY_FUNCTION_NOT_PERMITTED = 0x00000068L;
0N/A public static final long CKR_KEY_NOT_WRAPPABLE = 0x00000069L;
0N/A public static final long CKR_KEY_UNEXTRACTABLE = 0x0000006AL;
0N/A
0N/A public static final long CKR_MECHANISM_INVALID = 0x00000070L;
0N/A public static final long CKR_MECHANISM_PARAM_INVALID = 0x00000071L;
0N/A
0N/A /* CKR_OBJECT_CLASS_INCONSISTENT and CKR_OBJECT_CLASS_INVALID
0N/A * were removed for v2.0 */
0N/A public static final long CKR_OBJECT_HANDLE_INVALID = 0x00000082L;
0N/A public static final long CKR_OPERATION_ACTIVE = 0x00000090L;
0N/A public static final long CKR_OPERATION_NOT_INITIALIZED = 0x00000091L;
0N/A public static final long CKR_PIN_INCORRECT = 0x000000A0L;
0N/A public static final long CKR_PIN_INVALID = 0x000000A1L;
0N/A public static final long CKR_PIN_LEN_RANGE = 0x000000A2L;
0N/A
0N/A /* CKR_PIN_EXPIRED and CKR_PIN_LOCKED are new for v2.0 */
0N/A public static final long CKR_PIN_EXPIRED = 0x000000A3L;
0N/A public static final long CKR_PIN_LOCKED = 0x000000A4L;
0N/A
0N/A public static final long CKR_SESSION_CLOSED = 0x000000B0L;
0N/A public static final long CKR_SESSION_COUNT = 0x000000B1L;
0N/A public static final long CKR_SESSION_HANDLE_INVALID = 0x000000B3L;
0N/A public static final long CKR_SESSION_PARALLEL_NOT_SUPPORTED = 0x000000B4L;
0N/A public static final long CKR_SESSION_READ_ONLY = 0x000000B5L;
0N/A public static final long CKR_SESSION_EXISTS = 0x000000B6L;
0N/A
0N/A /* CKR_SESSION_READ_ONLY_EXISTS and
0N/A * CKR_SESSION_READ_WRITE_SO_EXISTS are new for v2.0 */
0N/A public static final long CKR_SESSION_READ_ONLY_EXISTS = 0x000000B7L;
0N/A public static final long CKR_SESSION_READ_WRITE_SO_EXISTS = 0x000000B8L;
0N/A
0N/A public static final long CKR_SIGNATURE_INVALID = 0x000000C0L;
0N/A public static final long CKR_SIGNATURE_LEN_RANGE = 0x000000C1L;
0N/A public static final long CKR_TEMPLATE_INCOMPLETE = 0x000000D0L;
0N/A public static final long CKR_TEMPLATE_INCONSISTENT = 0x000000D1L;
0N/A public static final long CKR_TOKEN_NOT_PRESENT = 0x000000E0L;
0N/A public static final long CKR_TOKEN_NOT_RECOGNIZED = 0x000000E1L;
0N/A public static final long CKR_TOKEN_WRITE_PROTECTED = 0x000000E2L;
0N/A public static final long CKR_UNWRAPPING_KEY_HANDLE_INVALID = 0x000000F0L;
0N/A public static final long CKR_UNWRAPPING_KEY_SIZE_RANGE = 0x000000F1L;
0N/A public static final long CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT = 0x000000F2L;
0N/A public static final long CKR_USER_ALREADY_LOGGED_IN = 0x00000100L;
0N/A public static final long CKR_USER_NOT_LOGGED_IN = 0x00000101L;
0N/A public static final long CKR_USER_PIN_NOT_INITIALIZED = 0x00000102L;
0N/A public static final long CKR_USER_TYPE_INVALID = 0x00000103L;
0N/A
0N/A /* CKR_USER_ANOTHER_ALREADY_LOGGED_IN and CKR_USER_TOO_MANY_TYPES
0N/A * are new to v2.01 */
0N/A public static final long CKR_USER_ANOTHER_ALREADY_LOGGED_IN = 0x00000104L;
0N/A public static final long CKR_USER_TOO_MANY_TYPES = 0x00000105L;
0N/A
0N/A public static final long CKR_WRAPPED_KEY_INVALID = 0x00000110L;
0N/A public static final long CKR_WRAPPED_KEY_LEN_RANGE = 0x00000112L;
0N/A public static final long CKR_WRAPPING_KEY_HANDLE_INVALID = 0x00000113L;
0N/A public static final long CKR_WRAPPING_KEY_SIZE_RANGE = 0x00000114L;
0N/A public static final long CKR_WRAPPING_KEY_TYPE_INCONSISTENT = 0x00000115L;
0N/A public static final long CKR_RANDOM_SEED_NOT_SUPPORTED = 0x00000120L;
0N/A
0N/A /* These are new to v2.0 */
0N/A public static final long CKR_RANDOM_NO_RNG = 0x00000121L;
0N/A
0N/A /* These are new to v2.11 */
0N/A public static final long CKR_DOMAIN_PARAMS_INVALID = 0x00000130L;
0N/A
0N/A /* These are new to v2.0 */
0N/A public static final long CKR_BUFFER_TOO_SMALL = 0x00000150L;
0N/A public static final long CKR_SAVED_STATE_INVALID = 0x00000160L;
0N/A public static final long CKR_INFORMATION_SENSITIVE = 0x00000170L;
0N/A public static final long CKR_STATE_UNSAVEABLE = 0x00000180L;
0N/A
0N/A /* These are new to v2.01 */
0N/A public static final long CKR_CRYPTOKI_NOT_INITIALIZED = 0x00000190L;
0N/A public static final long CKR_CRYPTOKI_ALREADY_INITIALIZED = 0x00000191L;
0N/A public static final long CKR_MUTEX_BAD = 0x000001A0L;
0N/A public static final long CKR_MUTEX_NOT_LOCKED = 0x000001A1L;
0N/A
0N/A public static final long CKR_VENDOR_DEFINED = 0x80000000L;
0N/A
0N/A
0N/A /* flags: bit flags that provide capabilities of the slot
0N/A * Bit Flag = Mask
0N/A */
0N/A public static final long CKF_LIBRARY_CANT_CREATE_OS_THREADS = 0x00000001L;
0N/A public static final long CKF_OS_LOCKING_OK = 0x00000002L;
0N/A
0N/A
0N/A /* CKF_DONT_BLOCK is for the function C_WaitForSlotEvent */
0N/A public static final long CKF_DONT_BLOCK = 1L;
0N/A
0N/A
0N/A /* The following MGFs are defined */
0N/A public static final long CKG_MGF1_SHA1 = 0x00000001L;
3645N/A // new for v2.20 amendment 3
3645N/A public static final long CKG_MGF1_SHA224 = 0x00000005L;
0N/A
0N/A /* The following encoding parameter sources are defined */
0N/A public static final long CKZ_DATA_SPECIFIED = 0x00000001L;
0N/A
0N/A
0N/A /* The following PRFs are defined in PKCS #5 v2.0. */
0N/A public static final long CKP_PKCS5_PBKD2_HMAC_SHA1 = 0x00000001L;
0N/A
0N/A
0N/A /* The following salt value sources are defined in PKCS #5 v2.0. */
0N/A public static final long CKZ_SALT_SPECIFIED = 0x00000001L;
0N/A
0N/A /* the following EC Key Derivation Functions are defined */
0N/A public static final long CKD_NULL = 0x00000001L;
0N/A public static final long CKD_SHA1_KDF = 0x00000002L;
0N/A
0N/A /* the following X9.42 Diffie-Hellman Key Derivation Functions are defined */
0N/A public static final long CKD_SHA1_KDF_ASN1 = 0x00000003L;
0N/A public static final long CKD_SHA1_KDF_CONCATENATE = 0x00000004L;
0N/A
0N/A
0N/A // private NSS attribute (for DSA and DH private keys)
0N/A public static final long CKA_NETSCAPE_DB = 0xD5A0DB00L;
0N/A
0N/A // base number of NSS private attributes
0N/A public static final long CKA_NETSCAPE_BASE = 0x80000000L + 0x4E534350L;
0N/A
0N/A // object type for NSS trust
0N/A public static final long CKO_NETSCAPE_TRUST = CKA_NETSCAPE_BASE + 3;
0N/A
0N/A // base number for NSS trust attributes
0N/A public static final long CKA_NETSCAPE_TRUST_BASE = CKA_NETSCAPE_BASE + 0x2000;
0N/A
0N/A // attributes for NSS trust
0N/A public static final long CKA_NETSCAPE_TRUST_SERVER_AUTH = CKA_NETSCAPE_TRUST_BASE + 8;
0N/A public static final long CKA_NETSCAPE_TRUST_CLIENT_AUTH = CKA_NETSCAPE_TRUST_BASE + 9;
0N/A public static final long CKA_NETSCAPE_TRUST_CODE_SIGNING = CKA_NETSCAPE_TRUST_BASE + 10;
0N/A public static final long CKA_NETSCAPE_TRUST_EMAIL_PROTECTION = CKA_NETSCAPE_TRUST_BASE + 11;
0N/A public static final long CKA_NETSCAPE_CERT_SHA1_HASH = CKA_NETSCAPE_TRUST_BASE + 100;
0N/A public static final long CKA_NETSCAPE_CERT_MD5_HASH = CKA_NETSCAPE_TRUST_BASE + 101;
0N/A
0N/A // trust values for each of the NSS trust attributes
0N/A public static final long CKT_NETSCAPE_TRUSTED = CKA_NETSCAPE_BASE + 1;
0N/A public static final long CKT_NETSCAPE_TRUSTED_DELEGATOR = CKA_NETSCAPE_BASE + 2;
0N/A public static final long CKT_NETSCAPE_UNTRUSTED = CKA_NETSCAPE_BASE + 3;
0N/A public static final long CKT_NETSCAPE_MUST_VERIFY = CKA_NETSCAPE_BASE + 4;
0N/A public static final long CKT_NETSCAPE_TRUST_UNKNOWN = CKA_NETSCAPE_BASE + 5; /* default */
0N/A public static final long CKT_NETSCAPE_VALID = CKA_NETSCAPE_BASE + 10;
0N/A public static final long CKT_NETSCAPE_VALID_DELEGATOR = CKA_NETSCAPE_BASE + 11;
0N/A
0N/A}