Monero
Loading...
Searching...
No Matches
hw::core::device_default Class Reference

#include <device_default.hpp>

Inheritance diagram for hw::core::device_default:
Collaboration diagram for hw::core::device_default:

Public Member Functions

 device_default ()
 ~device_default ()
 device_default (const device_default &device)=delete
device_defaultoperator= (const device_default &device)=delete
 operator bool () const override
bool set_name (const std::string &name) override
const std::string get_name () const override
bool init (void) override
bool release () override
bool connect (void) override
bool disconnect () override
bool set_mode (device_mode mode) override
device_type get_type () const override
void lock (void) override
void unlock (void) override
bool try_lock (void) override
bool get_public_address (cryptonote::account_public_address &pubkey) override
bool get_secret_keys (crypto::secret_key &viewkey, crypto::secret_key &spendkey) override
bool generate_chacha_key (const cryptonote::account_keys &keys, crypto::chacha_key &key, uint64_t kdf_rounds) override
bool derive_subaddress_public_key (const crypto::public_key &pub, const crypto::key_derivation &derivation, const std::size_t output_index, crypto::public_key &derived_pub) override
crypto::public_key get_subaddress_spend_public_key (const cryptonote::account_keys &keys, const cryptonote::subaddress_index &index) override
std::vector< crypto::public_keyget_subaddress_spend_public_keys (const cryptonote::account_keys &keys, uint32_t account, uint32_t begin, uint32_t end) override
cryptonote::account_public_address get_subaddress (const cryptonote::account_keys &keys, const cryptonote::subaddress_index &index) override
crypto::secret_key get_subaddress_secret_key (const crypto::secret_key &sec, const cryptonote::subaddress_index &index) override
bool verify_keys (const crypto::secret_key &secret_key, const crypto::public_key &public_key) override
bool scalarmultKey (rct::key &aP, const rct::key &P, const rct::key &a) override
bool scalarmultBase (rct::key &aG, const rct::key &a) override
bool sc_secret_add (crypto::secret_key &r, const crypto::secret_key &a, const crypto::secret_key &b) override
crypto::secret_key generate_keys (crypto::public_key &pub, crypto::secret_key &sec, const crypto::secret_key &recovery_key=crypto::secret_key(), bool recover=false) override
bool generate_key_derivation (const crypto::public_key &pub, const crypto::secret_key &sec, crypto::key_derivation &derivation) override
bool conceal_derivation (crypto::key_derivation &derivation, const crypto::public_key &tx_pub_key, const std::vector< crypto::public_key > &additional_tx_pub_keys, const crypto::key_derivation &main_derivation, const std::vector< crypto::key_derivation > &additional_derivations) override
bool derivation_to_scalar (const crypto::key_derivation &derivation, const size_t output_index, crypto::ec_scalar &res) override
bool derive_secret_key (const crypto::key_derivation &derivation, const std::size_t output_index, const crypto::secret_key &sec, crypto::secret_key &derived_sec) override
bool derive_public_key (const crypto::key_derivation &derivation, const std::size_t output_index, const crypto::public_key &pub, crypto::public_key &derived_pub) override
bool secret_key_to_public_key (const crypto::secret_key &sec, crypto::public_key &pub) override
bool generate_key_image (const crypto::public_key &pub, const crypto::secret_key &sec, crypto::key_image &image) override
bool derive_view_tag (const crypto::key_derivation &derivation, const std::size_t output_index, crypto::view_tag &view_tag) override
void generate_tx_proof (const crypto::hash &prefix_hash, const crypto::public_key &R, const crypto::public_key &A, const boost::optional< crypto::public_key > &B, const crypto::public_key &D, const crypto::secret_key &r, crypto::signature &sig) override
bool open_tx (crypto::secret_key &tx_key) override
void get_transaction_prefix_hash (const cryptonote::transaction_prefix &tx, crypto::hash &h) override
bool encrypt_payment_id (crypto::hash8 &payment_id, const crypto::public_key &public_key, const crypto::secret_key &secret_key) override
rct::key genCommitmentMask (const rct::key &amount_key) override
bool ecdhEncode (rct::ecdhTuple &unmasked, const rct::key &sharedSec, bool short_amount) override
bool ecdhDecode (rct::ecdhTuple &masked, const rct::key &sharedSec, bool short_amount) override
bool generate_output_ephemeral_keys (const size_t tx_version, const cryptonote::account_keys &sender_account_keys, const crypto::public_key &txkey_pub, const crypto::secret_key &tx_key, const cryptonote::tx_destination_entry &dst_entr, const boost::optional< cryptonote::account_public_address > &change_addr, const size_t output_index, const bool &need_additional_txkeys, const std::vector< crypto::secret_key > &additional_tx_keys, std::vector< crypto::public_key > &additional_tx_public_keys, std::vector< rct::key > &amount_keys, crypto::public_key &out_eph_public_key, bool use_view_tags, crypto::view_tag &view_tag) override
bool mlsag_prehash (const std::string &blob, size_t inputs_size, size_t outputs_size, const rct::keyV &hashes, const rct::ctkeyV &outPk, rct::key &prehash) override
bool mlsag_prepare (const rct::key &H, const rct::key &xx, rct::key &a, rct::key &aG, rct::key &aHP, rct::key &rvII) override
bool mlsag_prepare (rct::key &a, rct::key &aG) override
bool mlsag_hash (const rct::keyV &long_message, rct::key &c) override
bool mlsag_sign (const rct::key &c, const rct::keyV &xx, const rct::keyV &alpha, const size_t rows, const size_t dsRows, rct::keyV &ss) override
bool clsag_prepare (const rct::key &p, const rct::key &z, rct::key &I, rct::key &D, const rct::key &H, rct::key &a, rct::key &aG, rct::key &aH) override
bool clsag_hash (const rct::keyV &data, rct::key &hash) override
bool clsag_sign (const rct::key &c, const rct::key &a, const rct::key &p, const rct::key &z, const rct::key &mu_P, const rct::key &mu_C, rct::key &s) override
bool close_tx (void) override
Public Member Functions inherited from hw::device
 device ()
virtual ~device ()
virtual device_mode get_mode () const
virtual device_protocol_t device_protocol () const
virtual void set_callback (i_device_callback *callback)
virtual void set_derivation_path (const std::string &derivation_path)
virtual void set_pin (const epee::wipeable_string &pin)
virtual void set_passphrase (const epee::wipeable_string &passphrase)
rct::key scalarmultKey (const rct::key &P, const rct::key &a)
rct::key scalarmultBase (const rct::key &a)
bool decrypt_payment_id (crypto::hash8 &payment_id, const crypto::public_key &public_key, const crypto::secret_key &secret_key)
virtual bool has_ki_cold_sync (void) const
virtual bool has_tx_cold_sign (void) const
virtual bool has_ki_live_refresh (void) const
virtual bool compute_key_image (const cryptonote::account_keys &ack, const crypto::public_key &out_key, const crypto::key_derivation &recv_derivation, size_t real_output_index, const cryptonote::subaddress_index &received_index, cryptonote::keypair &in_ephemeral, crypto::key_image &ki)
virtual void computing_key_images (bool started)
virtual void set_network_type (cryptonote::network_type network_type)
virtual void display_address (const cryptonote::subaddress_index &index, const boost::optional< crypto::hash8 > &payment_id)

Additional Inherited Members

Public Types inherited from hw::device
enum  device_mode { NONE , TRANSACTION_CREATE_REAL , TRANSACTION_CREATE_FAKE , TRANSACTION_PARSE }
enum  device_type { SOFTWARE = 0 , LEDGER = 1 , TREZOR = 2 }
enum  device_protocol_t { PROTOCOL_DEFAULT , PROTOCOL_PROXY , PROTOCOL_COLD }
Protected Attributes inherited from hw::device
std::string name
device_mode mode

Constructor & Destructor Documentation

◆ device_default() [1/2]

hw::core::device_default::device_default ( )

◆ ~device_default()

hw::core::device_default::~device_default ( )

◆ device_default() [2/2]

hw::core::device_default::device_default ( const device_default & device)
delete

Member Function Documentation

◆ close_tx()

bool hw::core::device_default::close_tx ( void )
overridevirtual

Implements hw::device.

◆ clsag_hash()

bool hw::core::device_default::clsag_hash ( const rct::keyV & data,
rct::key & hash )
overridevirtual

Implements hw::device.

◆ clsag_prepare()

bool hw::core::device_default::clsag_prepare ( const rct::key & p,
const rct::key & z,
rct::key & I,
rct::key & D,
const rct::key & H,
rct::key & a,
rct::key & aG,
rct::key & aH )
overridevirtual

Implements hw::device.

◆ clsag_sign()

bool hw::core::device_default::clsag_sign ( const rct::key & c,
const rct::key & a,
const rct::key & p,
const rct::key & z,
const rct::key & mu_P,
const rct::key & mu_C,
rct::key & s )
overridevirtual

Implements hw::device.

◆ conceal_derivation()

bool hw::core::device_default::conceal_derivation ( crypto::key_derivation & derivation,
const crypto::public_key & tx_pub_key,
const std::vector< crypto::public_key > & additional_tx_pub_keys,
const crypto::key_derivation & main_derivation,
const std::vector< crypto::key_derivation > & additional_derivations )
overridevirtual

Implements hw::device.

◆ connect()

bool hw::core::device_default::connect ( void )
overridevirtual

Implements hw::device.

◆ derivation_to_scalar()

bool hw::core::device_default::derivation_to_scalar ( const crypto::key_derivation & derivation,
const size_t output_index,
crypto::ec_scalar & res )
overridevirtual

Implements hw::device.

◆ derive_public_key()

bool hw::core::device_default::derive_public_key ( const crypto::key_derivation & derivation,
const std::size_t output_index,
const crypto::public_key & pub,
crypto::public_key & derived_pub )
overridevirtual

Implements hw::device.

◆ derive_secret_key()

bool hw::core::device_default::derive_secret_key ( const crypto::key_derivation & derivation,
const std::size_t output_index,
const crypto::secret_key & sec,
crypto::secret_key & derived_sec )
overridevirtual

Implements hw::device.

◆ derive_subaddress_public_key()

bool hw::core::device_default::derive_subaddress_public_key ( const crypto::public_key & pub,
const crypto::key_derivation & derivation,
const std::size_t output_index,
crypto::public_key & derived_pub )
overridevirtual

Implements hw::device.

◆ derive_view_tag()

bool hw::core::device_default::derive_view_tag ( const crypto::key_derivation & derivation,
const std::size_t output_index,
crypto::view_tag & view_tag )
overridevirtual

Implements hw::device.

◆ disconnect()

bool hw::core::device_default::disconnect ( void )
overridevirtual

Implements hw::device.

◆ ecdhDecode()

bool hw::core::device_default::ecdhDecode ( rct::ecdhTuple & masked,
const rct::key & sharedSec,
bool short_amount )
overridevirtual

Implements hw::device.

◆ ecdhEncode()

bool hw::core::device_default::ecdhEncode ( rct::ecdhTuple & unmasked,
const rct::key & sharedSec,
bool short_amount )
overridevirtual

Implements hw::device.

◆ encrypt_payment_id()

bool hw::core::device_default::encrypt_payment_id ( crypto::hash8 & payment_id,
const crypto::public_key & public_key,
const crypto::secret_key & secret_key )
overridevirtual

Implements hw::device.

◆ genCommitmentMask()

rct::key hw::core::device_default::genCommitmentMask ( const rct::key & amount_key)
overridevirtual

Implements hw::device.

◆ generate_chacha_key()

bool hw::core::device_default::generate_chacha_key ( const cryptonote::account_keys & keys,
crypto::chacha_key & key,
uint64_t kdf_rounds )
overridevirtual

Implements hw::device.

◆ generate_key_derivation()

bool hw::core::device_default::generate_key_derivation ( const crypto::public_key & pub,
const crypto::secret_key & sec,
crypto::key_derivation & derivation )
overridevirtual

Implements hw::device.

◆ generate_key_image()

bool hw::core::device_default::generate_key_image ( const crypto::public_key & pub,
const crypto::secret_key & sec,
crypto::key_image & image )
overridevirtual

Implements hw::device.

◆ generate_keys()

crypto::secret_key hw::core::device_default::generate_keys ( crypto::public_key & pub,
crypto::secret_key & sec,
const crypto::secret_key & recovery_key = crypto::secret_key(),
bool recover = false )
overridevirtual

Implements hw::device.

◆ generate_output_ephemeral_keys()

bool hw::core::device_default::generate_output_ephemeral_keys ( const size_t tx_version,
const cryptonote::account_keys & sender_account_keys,
const crypto::public_key & txkey_pub,
const crypto::secret_key & tx_key,
const cryptonote::tx_destination_entry & dst_entr,
const boost::optional< cryptonote::account_public_address > & change_addr,
const size_t output_index,
const bool & need_additional_txkeys,
const std::vector< crypto::secret_key > & additional_tx_keys,
std::vector< crypto::public_key > & additional_tx_public_keys,
std::vector< rct::key > & amount_keys,
crypto::public_key & out_eph_public_key,
bool use_view_tags,
crypto::view_tag & view_tag )
overridevirtual

Implements hw::device.

◆ generate_tx_proof()

void hw::core::device_default::generate_tx_proof ( const crypto::hash & prefix_hash,
const crypto::public_key & R,
const crypto::public_key & A,
const boost::optional< crypto::public_key > & B,
const crypto::public_key & D,
const crypto::secret_key & r,
crypto::signature & sig )
overridevirtual

Implements hw::device.

◆ get_name()

const std::string hw::core::device_default::get_name ( ) const
overridevirtual

Implements hw::device.

◆ get_public_address()

bool hw::core::device_default::get_public_address ( cryptonote::account_public_address & pubkey)
overridevirtual

Implements hw::device.

◆ get_secret_keys()

bool hw::core::device_default::get_secret_keys ( crypto::secret_key & viewkey,
crypto::secret_key & spendkey )
overridevirtual

Implements hw::device.

◆ get_subaddress()

cryptonote::account_public_address hw::core::device_default::get_subaddress ( const cryptonote::account_keys & keys,
const cryptonote::subaddress_index & index )
overridevirtual

Implements hw::device.

◆ get_subaddress_secret_key()

crypto::secret_key hw::core::device_default::get_subaddress_secret_key ( const crypto::secret_key & sec,
const cryptonote::subaddress_index & index )
overridevirtual

Implements hw::device.

◆ get_subaddress_spend_public_key()

crypto::public_key hw::core::device_default::get_subaddress_spend_public_key ( const cryptonote::account_keys & keys,
const cryptonote::subaddress_index & index )
overridevirtual

Implements hw::device.

◆ get_subaddress_spend_public_keys()

std::vector< crypto::public_key > hw::core::device_default::get_subaddress_spend_public_keys ( const cryptonote::account_keys & keys,
uint32_t account,
uint32_t begin,
uint32_t end )
overridevirtual

Implements hw::device.

◆ get_transaction_prefix_hash()

void hw::core::device_default::get_transaction_prefix_hash ( const cryptonote::transaction_prefix & tx,
crypto::hash & h )
overridevirtual

Implements hw::device.

◆ get_type()

device_type hw::core::device_default::get_type ( ) const
inlineoverridevirtual

Implements hw::device.

◆ init()

bool hw::core::device_default::init ( void )
overridevirtual

Implements hw::device.

◆ lock()

void hw::core::device_default::lock ( void )
overridevirtual

Implements hw::device.

◆ mlsag_hash()

bool hw::core::device_default::mlsag_hash ( const rct::keyV & long_message,
rct::key & c )
overridevirtual

Implements hw::device.

◆ mlsag_prehash()

bool hw::core::device_default::mlsag_prehash ( const std::string & blob,
size_t inputs_size,
size_t outputs_size,
const rct::keyV & hashes,
const rct::ctkeyV & outPk,
rct::key & prehash )
overridevirtual

Implements hw::device.

◆ mlsag_prepare() [1/2]

bool hw::core::device_default::mlsag_prepare ( const rct::key & H,
const rct::key & xx,
rct::key & a,
rct::key & aG,
rct::key & aHP,
rct::key & rvII )
overridevirtual

Implements hw::device.

◆ mlsag_prepare() [2/2]

bool hw::core::device_default::mlsag_prepare ( rct::key & a,
rct::key & aG )
overridevirtual

Implements hw::device.

◆ mlsag_sign()

bool hw::core::device_default::mlsag_sign ( const rct::key & c,
const rct::keyV & xx,
const rct::keyV & alpha,
const size_t rows,
const size_t dsRows,
rct::keyV & ss )
overridevirtual

Implements hw::device.

◆ open_tx()

bool hw::core::device_default::open_tx ( crypto::secret_key & tx_key)
overridevirtual

Implements hw::device.

◆ operator bool()

hw::core::device_default::operator bool ( ) const
inlineexplicitoverridevirtual

Implements hw::device.

◆ operator=()

device_default & hw::core::device_default::operator= ( const device_default & device)
delete

◆ release()

bool hw::core::device_default::release ( )
overridevirtual

Implements hw::device.

◆ sc_secret_add()

bool hw::core::device_default::sc_secret_add ( crypto::secret_key & r,
const crypto::secret_key & a,
const crypto::secret_key & b )
overridevirtual

Implements hw::device.

◆ scalarmultBase()

bool hw::core::device_default::scalarmultBase ( rct::key & aG,
const rct::key & a )
overridevirtual

Implements hw::device.

◆ scalarmultKey()

bool hw::core::device_default::scalarmultKey ( rct::key & aP,
const rct::key & P,
const rct::key & a )
overridevirtual

Implements hw::device.

◆ secret_key_to_public_key()

bool hw::core::device_default::secret_key_to_public_key ( const crypto::secret_key & sec,
crypto::public_key & pub )
overridevirtual

Implements hw::device.

◆ set_mode()

bool hw::core::device_default::set_mode ( device_mode mode)
overridevirtual

Reimplemented from hw::device.

◆ set_name()

bool hw::core::device_default::set_name ( const std::string & name)
overridevirtual

Implements hw::device.

◆ try_lock()

bool hw::core::device_default::try_lock ( void )
overridevirtual

Implements hw::device.

◆ unlock()

void hw::core::device_default::unlock ( void )
overridevirtual

Implements hw::device.

◆ verify_keys()

bool hw::core::device_default::verify_keys ( const crypto::secret_key & secret_key,
const crypto::public_key & public_key )
overridevirtual

Implements hw::device.


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