AuroraRuntime/Source/Crypto/ECC/PublicECCImpl.hpp

28 lines
689 B
C++
Raw Normal View History

2021-09-21 01:54:47 +00:00
#pragma once
namespace Aurora::Crypto::ECC
{
class PublicECCImpl : public IECCPublic
{
public:
PublicECCImpl(EECCCurve type, ecc_key &key);
~PublicECCImpl();
bool Verify(const Memory::MemoryViewRead &hash,
const Memory::MemoryViewRead &signature) override;
bool Verify(const Memory::MemoryViewRead &plaintext,
const Memory::MemoryViewRead &signature,
EHashType method) override;
bool AsPublicECC(Memory::ByteBuffer &out) override;
2021-09-21 01:54:47 +00:00
EECCCurve GetType() override;
const ecc_key &GetKey();
private:
ecc_key _key;
EECCCurve _type;
};
}