A simple Qt based browser with no bullshit that supports PKCS#11 tokens (such as the SuisseID).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
3.5 KiB

// ---------------------------------------------------------------------------
// Name: actTokenConfig.h
// Product: cv act library
// Purpose: Declares all availabl param_id's for ITokenCofing.
//
// Copyright: (c) 2009 cv cryptovision GmbH
// all rights reserved
// Licence: The conditions for the use of this software are regulated
// in the cv act library licence agreement.
//
// Autor: Markus Tesche
// Date: 05/07/2009
// ---------------------------------------------------------------------------
#ifndef ACT_TokenConfig_h
#define ACT_TokenConfig_h
#include "actMode.h"
#include "actIParam.h"
namespace act
{
// according to ISO 24727-3, definition of supported Data Set's
enum DataSetList
{
DATA_SET_NONE = 0,
DATA_SET_PUBLIC_DATA = (1 << 0),
DATA_SET_PRIVATE_DATA = (1 << 1),
DATA_SET_CERTIFICATES = (1 << 2),
DATA_SET_USEFUL_CERTIFICATES = (1 << 3),
DATA_SET_TRUSTED_CERTIFICATES = (1 << 4),
DATA_SET_TRUSTED_PUBLIC_KEYS = (1 << 5),
//
// ...
DATA_SET_NEXT = (1 << 6),
DATA_SET_MASK = DATA_SET_NEXT - 1,
DATA_SET_ALL = PARAM_INVALID_VALUE,
};
enum ObjectTypeList
{
OBJECT_TYPE_NONE = 0,
OBJECT_TYPE_KEY_DES = (1 << 0),
OBJECT_TYPE_KEY_2DES = (1 << 1),
OBJECT_TYPE_KEY_3DES = (1 << 2),
OBJECT_TYPE_KEY_AES = (1 << 3),
OBJECT_TYPE_KEY_RSA = (1 << 4),
OBJECT_TYPE_KEY_DSA = (1 << 5),
OBJECT_TYPE_KEY_DH = (1 << 6),
OBJECT_TYPE_KEY_ECC = (1 << 7),
OBJECT_TYPE_DATA = (1 << 8),
OBJECT_TYPE_CERTIFICATE = (1 << 9),
OBJECT_TYPE_USEFUL_CERTIFICATE = (1 << 10),
OBJECT_TYPE_TRUSTED_CERTIFICATE = (1 << 11),
OBJECT_TYPE_TRUSTED_PUBLIC_KEY = (1 << 12),
//
// Mark an object as private
OBJECT_TYPE_PRVIVATE = (1 << 13),
//
// ...
OBJECT_TYPE_NEXT = (1 << 14),
OBJECT_TYPE_MASK = OBJECT_TYPE_NEXT - 1,
OBJECT_TYPE_ALL = PARAM_INVALID_VALUE,
};
enum ObjectAttributeList
{
OBJECT_ATTR_LABEL_P = OBJECT_TYPE_NEXT,
OBJECT_ATTR_LABEL_P_PUB = OBJECT_ATTR_LABEL_P,
OBJECT_ATTR_LABEL_P_PRV = OBJECT_ATTR_LABEL_P | OBJECT_TYPE_PRVIVATE,
};
enum
{
TC_TYPE = TOKEN_CONFIG,
TC_HAS_TOKEN_CAPABILITIES,
TC_HAS_WRITABLE_AODF,
TC_IS_MOC_ENABLED,
TC_IS_MINIDRIVER_ENABLED,
TC_IS_PROFILE_ERASABLE,
TC_PINPAD_CHAR,
TC_DATA_SET_LIST,
TC_OBJECT_TYPE_LIST,
//
// Object naming - Label Prefix
TC_LABEL_P_PRV_DES = OBJECT_ATTR_LABEL_P_PRV + OBJECT_TYPE_KEY_DES,
TC_LABEL_P_PRV_2DES = OBJECT_ATTR_LABEL_P_PRV + OBJECT_TYPE_KEY_2DES,
TC_LABEL_P_PRV_3DES = OBJECT_ATTR_LABEL_P_PRV + OBJECT_TYPE_KEY_3DES,
TC_LABEL_P_PRV_AES = OBJECT_ATTR_LABEL_P_PRV + OBJECT_TYPE_KEY_AES,
TC_LABEL_P_PUB_RSA = OBJECT_ATTR_LABEL_P_PUB + OBJECT_TYPE_KEY_RSA,
TC_LABEL_P_PRV_RSA = OBJECT_ATTR_LABEL_P_PRV + OBJECT_TYPE_KEY_RSA,
TC_LABEL_P_PUB_ECC = OBJECT_ATTR_LABEL_P_PUB + OBJECT_TYPE_KEY_ECC,
TC_LABEL_P_PRV_ECC = OBJECT_ATTR_LABEL_P_PRV + OBJECT_TYPE_KEY_ECC,
TC_LABEL_P_PUB_DATA = OBJECT_ATTR_LABEL_P_PUB + OBJECT_TYPE_DATA,
TC_LABEL_P_PRV_DATA = OBJECT_ATTR_LABEL_P_PRV + OBJECT_TYPE_DATA,
TC_LABEL_P_PUB_CERTIFICATE = OBJECT_ATTR_LABEL_P_PUB + OBJECT_TYPE_CERTIFICATE,
TC_LABEL_P_PUB_USEFUL_CERTIFICATE = OBJECT_ATTR_LABEL_P_PUB + OBJECT_TYPE_USEFUL_CERTIFICATE,
TC_LABEL_P_PUB_TRUSTED_CERTIFICATE = OBJECT_ATTR_LABEL_P_PUB + OBJECT_TYPE_TRUSTED_CERTIFICATE,
TC_LABEL_P_PUB_TRUSTED_PUBLIC_KEY = OBJECT_ATTR_LABEL_P_PUB + OBJECT_TYPE_TRUSTED_PUBLIC_KEY,
};
} // namespace act
#endif // ACT_TokenConfig_h