ACSMDownloader/include/rmsdk/dpcrypt.h
2021-05-13 09:39:51 +02:00

144 lines
3.6 KiB
C++

/*
File automatically generated by SOAdvancedDissector.py
More information at http://indefero.soutade.fr/p/soadvanceddissector
*/
#ifndef _DPCRYPT_H
#define _DPCRYPT_H
#include <dp.h>
namespace dpcrypt {
class Certificate;
class CryptProvider;
class Cryptor;
class Hash;
class Identity;
class Key;
class KeyPair;
class Role;
class StreamCryptor;
class Certificate: public dp::RefCounted
{
public:
virtual ~Certificate();
virtual void* getInterfaceID();
virtual void addRef() = 0;
virtual void release() = 0;
virtual void getCommonName() = 0;
virtual void getPublicKey() = 0;
virtual void serialize() = 0;
virtual void isValidForRole(int) = 0;
};
class CryptProvider: public dp::Unknown
{
public:
virtual ~CryptProvider();
virtual void* getInterfaceID();
virtual void getRandomBytes(unsigned int) = 0;
virtual void createHash(int) = 0;
virtual void createKey(int, int, dp::Data const&) = 0;
virtual void generateKey(int) = 0;
virtual void generateKeyPair(int, dpcrypt::KeyPair*) = 0;
virtual void createCryptor(int) = 0;
virtual void createStreamCryptor(int) = 0;
virtual void createCertificate(dp::Data const&) = 0;
virtual void createIdentity(dp::Data const&, dp::String const&) = 0;
virtual void changePKCS12Password(dp::Data const&, dp::String const&, dp::String const&) = 0;
void getProvider();
void setProvider(dpcrypt::CryptProvider*);
};
class Cryptor: public dp::RefCounted
{
public:
virtual ~Cryptor();
virtual void* getInterfaceID();
virtual void addRef() = 0;
virtual void release() = 0;
virtual void encrypt(dp::ref<dpcrypt::Key> const&, dp::Data const&) = 0;
virtual void encrypt(dp::ref<dpcrypt::Key> const&, dp::Data const&, dp::Data const&, bool) = 0;
virtual void decrypt(dp::ref<dpcrypt::Key> const&, dp::Data const&) = 0;
virtual void decrypt(dp::ref<dpcrypt::Key> const&, dp::Data const&, dp::Data const&) = 0;
};
class Hash: public dp::RefCounted
{
public:
virtual ~Hash();
virtual void* getInterfaceID();
virtual void addRef() = 0;
virtual void release() = 0;
virtual void update(dp::Data const&) = 0;
virtual void finalize() = 0;
};
class Identity: public dp::RefCounted
{
public:
virtual ~Identity();
virtual void* getInterfaceID();
virtual void addRef() = 0;
virtual void release() = 0;
virtual void getEECert() = 0;
virtual void getPrivateKey() = 0;
};
class Key: public dp::RefCounted
{
public:
virtual ~Key();
virtual void* getInterfaceID();
virtual void addRef() = 0;
virtual void release() = 0;
virtual void getKeyBitSize() = 0;
virtual void getKeyType() = 0;
virtual void serialize() = 0;
};
class KeyPair
{
public:
KeyPair();
~KeyPair();
};
class Role
{
public:
};
class StreamCryptor: public dp::RefCounted
{
public:
virtual ~StreamCryptor();
virtual void* getInterfaceID();
virtual void addRef() = 0;
virtual void release() = 0;
virtual void initDecrypt(dp::ref<dpcrypt::Key> const&, dp::Data const&) = 0;
virtual void decrypt(unsigned char const*, unsigned int, unsigned int*, unsigned char*, unsigned int) = 0;
virtual void finalize(unsigned char*, unsigned int) = 0;
};
}
#endif // _DPCRYPT_H