Electroneum
hw::device_cold Class Referenceabstract

#include <device_cold.hpp>

Classes

class  op_progress
 
struct  tx_key_data_t
 
class  tx_progress
 

Public Types

using exported_key_image = std::vector< std::pair< crypto::key_image, crypto::signature > >
 

Public Member Functions

virtual void ki_sync (wallet_shim *wallet, const std::vector<::tools::wallet2::transfer_details > &transfers, exported_key_image &ski)=0
 
virtual void tx_sign (wallet_shim *wallet, const ::tools::wallet2::unsigned_tx_set &unsigned_tx, ::tools::wallet2::signed_tx_set &signed_tx, tx_aux_data &aux_data)=0
 
virtual bool is_get_tx_key_supported () const
 
virtual void load_tx_key_data (tx_key_data_t &res, const std::string &tx_aux_data)=0
 
virtual void get_tx_key (std::vector<::crypto::secret_key > &tx_keys, const tx_key_data_t &tx_aux_data, const ::crypto::secret_key &view_key_priv)=0
 
virtual bool is_live_refresh_supported () const
 
virtual void live_refresh_start ()=0
 
virtual void live_refresh (const ::crypto::secret_key &view_key_priv, 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)=0
 
virtual void live_refresh_finish ()=0
 

Detailed Description

Definition at line 52 of file device_cold.hpp.

Member Typedef Documentation

◆ exported_key_image

Definition at line 55 of file device_cold.hpp.

Member Function Documentation

◆ get_tx_key()

virtual void hw::device_cold::get_tx_key ( std::vector<::crypto::secret_key > &  tx_keys,
const tx_key_data_t tx_aux_data,
const ::crypto::secret_key view_key_priv 
)
pure virtual

Decrypts TX keys.

◆ is_get_tx_key_supported()

virtual bool hw::device_cold::is_get_tx_key_supported ( ) const
inlinevirtual

Get tx key support check.

Definition at line 122 of file device_cold.hpp.

122 { return false; }

◆ is_live_refresh_supported()

virtual bool hw::device_cold::is_live_refresh_supported ( ) const
inlinevirtual

Live refresh support check

Definition at line 140 of file device_cold.hpp.

140 { return false; };

◆ ki_sync()

virtual void hw::device_cold::ki_sync ( wallet_shim wallet,
const std::vector<::tools::wallet2::transfer_details > &  transfers,
exported_key_image ski 
)
pure virtual

Key image sync with the cold protocol.

◆ live_refresh()

virtual void hw::device_cold::live_refresh ( const ::crypto::secret_key view_key_priv,
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 
)
pure virtual

One live refresh step

◆ live_refresh_finish()

virtual void hw::device_cold::live_refresh_finish ( )
pure virtual

Live refresh process termination

◆ live_refresh_start()

virtual void hw::device_cold::live_refresh_start ( )
pure virtual

Starts live refresh process with the device

◆ load_tx_key_data()

virtual void hw::device_cold::load_tx_key_data ( tx_key_data_t res,
const std::string &  tx_aux_data 
)
pure virtual

Loads TX aux data required for tx key.

◆ tx_sign()

virtual void hw::device_cold::tx_sign ( wallet_shim wallet,
const ::tools::wallet2::unsigned_tx_set unsigned_tx,
::tools::wallet2::signed_tx_set signed_tx,
tx_aux_data aux_data 
)
pure virtual

Signs unsigned transaction with the cold protocol.


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