17 #ifndef RSAENCODERDECODER_HPP_
18 #define RSAENCODERDECODER_HPP_
22 #include <botan/rsa.h>
36 virtual std::string
encodeData(
const std::uint8_t *data, std::size_t size);
37 virtual std::string
decodeData(
const std::uint8_t *data, std::size_t size);
39 virtual bool verifySignature(
const std::uint8_t *data, std::size_t len,
const std::uint8_t *sig, std::size_t sigLen);
42 std::string cipherPipe(
const std::uint8_t *data, std::size_t size, Botan::Cipher_Dir dir);
45 Botan::AutoSeeded_RNG rng_;
46 std::unique_ptr<Botan::X509_PublicKey> pubKey_;
47 std::unique_ptr<Botan::PKCS8_PrivateKey> privKey_;
48 std::unique_ptr<Botan::X509_PublicKey> remoteKey_;
RsaEncoderDecoder(const PublicKey &pubKey, const PrivateKey &privKey, const PublicKey &remoteKey)
Botan::SymmetricKey SessionKey
Botan::SecureVector< std::uint8_t > EncodedSessionKey
Botan::SecureVector< std::uint8_t > Signature
virtual Signature signData(const std::uint8_t *data, std::size_t size)
virtual std::string decodeData(const std::uint8_t *data, std::size_t size)
virtual EncodedSessionKey getEncodedSessionKey()
virtual std::string encodeData(const std::uint8_t *data, std::size_t size)
virtual bool verifySignature(const std::uint8_t *data, std::size_t len, const std::uint8_t *sig, std::size_t sigLen)
Botan::MemoryVector< std::uint8_t > PublicKey