25 Asymmetric& operator=(Asymmetric
const&);
26 Asymmetric(Asymmetric
const&);
33 virtual ~Asymmetric() =
default;
35 virtual ~Asymmetric() ;
38 virtual bool generateKeyPair(::std::string& privateKey, ::std::string& publicKey) ;
41 constructPublicKey(::std::string
const& modulus, ::std::string
const& exponent, ::std::string& keyOut) ;
43 virtual ::std::string encryptData(
44 ::std::string
const& publicKey,
45 ::std::string
const& data,
46 ::Crypto::Asymmetric::Padding paddingType,
47 ::Crypto::Asymmetric::PubKeyFormat keyFormat,
51 virtual ::std::string decryptData(
52 ::std::string
const& privateKey,
53 ::std::string
const& data,
54 ::Crypto::Asymmetric::Padding paddingType
57 virtual ::std::string signData(
58 ::std::string
const& privateKey,
59 ::std::string
const& data,
60 ::Crypto::Hash::HashType hash,
61 ::Crypto::Asymmetric::PrivateKeySigningFormat format
64 virtual bool verifyData(
65 ::std::string
const& publicKey,
66 ::std::string
const& signature,
67 ::std::string
const& data,
68 ::Crypto::Hash::HashType hash
72 computeSharedSecret(::std::string
const& myPrivateKey, ::std::string
const& peerPublicKey) ;
78 MCNAPI
explicit Asymmetric(::Crypto::Asymmetric::System system);
84 MCNAPI
void*
$ctor(::Crypto::Asymmetric::System system);
98 MCNAPI
bool $constructPublicKey(::std::string
const& modulus, ::std::string
const& exponent, ::std::string& keyOut);
101 ::std::string
const& publicKey,
102 ::std::string
const& data,
103 ::Crypto::Asymmetric::Padding paddingType,
104 ::Crypto::Asymmetric::PubKeyFormat keyFormat,
109 $decryptData(::std::string
const& privateKey, ::std::string
const& data, ::Crypto::Asymmetric::Padding paddingType);
112 ::std::string
const& privateKey,
113 ::std::string
const& data,
114 ::Crypto::Hash::HashType hash,
115 ::Crypto::Asymmetric::PrivateKeySigningFormat format
119 ::std::string
const& publicKey,
120 ::std::string
const& signature,
121 ::std::string
const& data,
122 ::Crypto::Hash::HashType hash
125 MCNAPI ::std::string
$computeSharedSecret(::std::string
const& myPrivateKey, ::std::string
const& peerPublicKey);
MCAPI::std::string $encryptData(::std::string const &publicKey, ::std::string const &data, ::Crypto::Asymmetric::Padding paddingType, ::Crypto::Asymmetric::PubKeyFormat keyFormat, bool useSHA256)