Skip to content

src/application/key_storage.hpp

Namespaces

Name
sgns
sgns::application

Classes

Name
class sgns::application::KeyStorage

Source code

#ifndef SUPERGENIUS_APPLICATION_KEY_STORAGE_HPP
#define SUPERGENIUS_APPLICATION_KEY_STORAGE_HPP

#include <libp2p/crypto/key.hpp>

#include "crypto/ed25519_types.hpp"
#include "crypto/sr25519_types.hpp"
#include "singleton/IComponent.hpp"

namespace sgns::application {

  class KeyStorage : public IComponent {
   public:
       ~KeyStorage() override = default;

       [[nodiscard]] virtual crypto::SR25519Keypair getLocalSr25519Keypair() const = 0;

       [[nodiscard]] virtual crypto::ED25519Keypair getLocalEd25519Keypair() const = 0;

       [[nodiscard]] virtual libp2p::crypto::KeyPair getP2PKeypair() const = 0;
  };

}

#endif  // SUPERGENIUS_APPLICATION_KEY_STORAGE_HPP

Updated on 2026-03-04 at 13:10:44 -0800