#pragma once #include "StarEncode.hpp" #include "StarByteArray.hpp" #include "StarArray.hpp" namespace Star::Curve25519 { constexpr size_t PublicKeySize = 32; constexpr size_t SecretKeySize = 32; constexpr size_t PrivateKeySize = 64; constexpr size_t SignatureSize = 64; typedef Array PublicKey; typedef Array SecretKey; typedef Array PrivateKey; typedef Array Signature; PublicKey const& publicKey(); Signature sign(void* data, size_t len); bool verify(uint8_t const* signature, uint8_t const* publicKey, void* data, size_t len); }