114 return ChaChaPoly::MakePointer<ChaChaPoly>(*
this);
122 return ChaChaPoly::MakePointer<ChaChaPoly>(std::move(*
this));
132 bool DoEncrypt(std::span<const std::byte> input,
Buffer::WriteOnly& output)
const noexcept override;
148 bool DoDecrypt(std::span<const std::byte> input,
Buffer::WriteOnly& output)
const noexcept override;
ChaCha20-Poly1305 crypter.
Definition chachapoly.hxx:64
ChaChaPoly(ChaChaPoly &&other) noexcept=default
Move constructor.
ChaChaPoly(const ChaChaPoly &other)=default
Copy constructor.
PointerType Move() noexcept override
Move this crypter into a new instance.
Definition chachapoly.hxx:121
ChaChaPoly(Secure::Password password)
Construct with a password.
Definition chachapoly.hxx:74
~ChaChaPoly() noexcept
Destructor.
Password-based symmetric crypter.
Definition generic.hxx:57
Shared, wiped container for passwords and raw key material.
Definition password.hxx:104
ReadMode
How a source buffer is consumed.
Definition typedefs.hxx:57
Root namespace of the StormByte suite.
#define STORMBYTE_CRYPTO_PUBLIC
Definition visibility.h:53