// used to pass password and raw key data
typedef std::vector<unsigned char> RawBuffer;
+typedef std::vector<RawBuffer> RawBufferVector;
typedef std::string Alias;
typedef std::vector<Alias> AliasVector;
KEY_NONE,
KEY_RSA_PUBLIC,
KEY_RSA_PRIVATE,
- // KEY_ECDSA_PUBLIC,
- // KEY_ECDSA_PRIVATE,
- // KEY_AES
+ KEY_ECDSA_PUBLIC,
+ KEY_ECDSA_PRIVATE,
+ KEY_AES
+};
+
+enum class DataFormat : int {
+ FORM_DER_BASE64,
+ FORM_DER,
+ FORM_PEM
+};
+
+enum class ElipticCurve : int {
+ prime192v1,
+ prime256v1,
+ secp384r1
};
struct Policy {
// Added by Dongsun Lee
enum class RSAPaddingAlgorithm : int {
- XRSA_PKCS1_PADDING,
- XRSA_SSLV23_PADDING,
- XRSA_NO_PADDING,
- XRSA_PKCS1_OAEP_PADDING,
- XRSA_X931_PADDING
+ PKCS1,
+// SSLV23, // not supported
+// NONE, // not supported
+// PKCS1_OAEP, // not supported
+ X931
+};
+
+enum class DBCMAlgType : int {
+ NONE,
+ AES_CBC_256,
+ COUNT
};
// Internal types
-class KeyImpl;
+class GenericKey;
class CertificateImpl;
+const char * ErrorToString(int error);
+
} // namespace CKM