hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
shared_model::crypto::CryptoProviderEd25519Ursa Class Reference

#include "crypto_provider.hpp"

Collaboration diagram for shared_model::crypto::CryptoProviderEd25519Ursa:
Collaboration graph

Static Public Member Functions

static Signed sign (const Blob &blob, const Keypair &keypair)
 
static bool verify (const Signed &signed_data, const Blob &orig, const PublicKey &public_key)
 
static Keypair generateKeypair ()
 
static Keypair generateKeypair (const Seed &seed)
 

Static Public Attributes

static const size_t kHashLength = 256 / 8
 
static const size_t kPublicKeyLength = 256 / 8
 
static const size_t kPrivateKeyLength = 512 / 8
 
static const size_t kSignatureLength = 512 / 8
 

Detailed Description

Wrapper class for signing-related stuff.

Member Function Documentation

◆ generateKeypair() [1/2]

Keypair shared_model::crypto::CryptoProviderEd25519Ursa::generateKeypair ( )
static

Generates new keypair with a default seed

Returns
Keypair generated

◆ generateKeypair() [2/2]

Keypair shared_model::crypto::CryptoProviderEd25519Ursa::generateKeypair ( const Seed seed)
static

Generates new keypair from a provided seed

Parameters
seed- provided seed
Returns
generated keypair
Here is the call graph for this function:

◆ sign()

Signed shared_model::crypto::CryptoProviderEd25519Ursa::sign ( const Blob blob,
const Keypair keypair 
)
static

Signs the message.

Parameters
blob- blob to sign
keypair- keypair
Returns
Signed object with signed data
Here is the call graph for this function:

◆ verify()

bool shared_model::crypto::CryptoProviderEd25519Ursa::verify ( const Signed signed_data,
const Blob orig,
const PublicKey public_key 
)
static

Verifies signature.

Parameters
signedData- data to verify
orig- original message
publicKey- public key
Returns
true if verify was OK or false otherwise
Here is the call graph for this function:

Member Data Documentation

◆ kHashLength

const size_t shared_model::crypto::CryptoProviderEd25519Ursa::kHashLength = 256 / 8
static

◆ kPrivateKeyLength

const size_t shared_model::crypto::CryptoProviderEd25519Ursa::kPrivateKeyLength = 512 / 8
static

◆ kPublicKeyLength

const size_t shared_model::crypto::CryptoProviderEd25519Ursa::kPublicKeyLength = 256 / 8
static

◆ kSignatureLength

const size_t shared_model::crypto::CryptoProviderEd25519Ursa::kSignatureLength = 512 / 8
static

The documentation for this class was generated from the following files: