Default package

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message Address

messages.proto:333

* Response: Contains address derived from device private seed @prev GetAddress

message ApplyFlags

messages.proto:166

* Request: set flags of the device @next Success @next Failure

message ApplySettings

messages.proto:154

* Request: change language and/or label of the device @next Success @next Failure @next ButtonRequest @next PinMatrixRequest

message BackupDevice

messages.proto:389

* Request: Perform backup of the device seed if not backed up using ResetDevice @next ButtonRequest

(message has no fields)

message ButtonAck

messages.proto:219

* Request: Computer agrees to wait for HW button press @prev ButtonRequest

(message has no fields)

message ButtonRequest

messages.proto:210

* Response: Device is waiting for HW button press. @next ButtonAck @next Cancel

enum ButtonRequestType

types.proto:90

* Type of button request @used_in ButtonRequest

Used in: ButtonRequest

message Cancel

messages.proto:245

* Request: Abort last operation that required user interaction @prev ButtonRequest @prev PinMatrixRequest @prev PassphraseRequest

(message has no fields)

message ChangePin

messages.proto:175

* Request: Starts workflow for setting/changing/removing the PIN @next ButtonRequest @next PinMatrixRequest

message CipherKeyValue

messages.proto:538

* Request: Ask device to encrypt or decrypt value of given key @next CipheredKeyValue @next Failure

message CipheredKeyValue

messages.proto:552

* Response: Return ciphered/deciphered value @prev CipherKeyValue

message ClearSession

messages.proto:144

* Request: clear session (removes cached PIN, passphrase, etc). @next Success

(message has no fields)

message CoinType

types.proto:166

* Structure representing Coin @used_in Features

Used in: Features

message DebugLinkDecision

messages.proto:827

* Request: "Press" the button on the device @next Success

message DebugLinkFlashErase

messages.proto:901

* Request: Erase block of flash on device WARNING: Writing to the wrong location can irreparably break the device.

message DebugLinkGetState

messages.proto:835

* Request: Computer asks for device state @next DebugLinkState

(message has no fields)

message DebugLinkLog

messages.proto:864

* Response: Device wants host to log event

message DebugLinkMemory

messages.proto:883

* Response: Device sends memory back @prev DebugLinkMemoryRead

message DebugLinkMemoryRead

messages.proto:874

* Request: Read memory from device @next DebugLinkMemory

message DebugLinkMemoryWrite

messages.proto:891

* Request: Write memory to device. WARNING: Writing to the wrong location can irreparably break the device.

message DebugLinkState

messages.proto:842

* Response: Device current state @prev DebugLinkGetState

message DebugLinkStop

messages.proto:858

* Request: Ask device to restart

(message has no fields)

message DecryptMessage

messages.proto:517

* Request: Ask device to decrypt message @next Success @next Failure

message DecryptedMessage

messages.proto:528

* Response: Decrypted message @prev DecryptedMessage

message ECDHSessionKey

messages.proto:760

* Response: Device provides ECDH session key @prev GetECDHSessionKey

message EncryptMessage

messages.proto:494

* Request: Ask device to encrypt message @next EncryptedMessage @next Failure

message EncryptedMessage

messages.proto:506

* Response: Encrypted message @prev EncryptMessage

message Entropy

messages.proto:278

* Response: Reply with random data generated by internal RNG @prev GetEntropy

message EntropyAck

messages.proto:405

* Request: Provide additional entropy for seed generation function @prev EntropyRequest @next ButtonRequest

message EntropyRequest

messages.proto:397

* Response: Ask for additional entropy from host computer @prev ResetDevice @next EntropyAck

(message has no fields)

message EstimateTxSize

messages.proto:567

* Request: Estimated size of the transaction This behaves exactly like SignTx, which means that it can ask using TxRequest This call is non-blocking (except possible PassphraseRequest to unlock the seed) @next TxSize @next Failure

message EthereumAddress

messages.proto:341

* Response: Contains an Ethereum address derived from device private seed @prev EthereumGetAddress

message EthereumGetAddress

messages.proto:324

* Request: Ask device for Ethereum address corresponding to address_n path @next PassphraseRequest @next EthereumAddress @next Failure

message EthereumMessageSignature

messages.proto:710

* Response: Signed message @prev EthereumSignMessage

message EthereumSignMessage

messages.proto:690

* Request: Ask device to sign message @next EthereumMessageSignature @next Failure

message EthereumSignTx

messages.proto:646

* Request: Ask device to sign transaction All fields are optional from the protocol's point of view. Each field defaults to value `0` if missing. Note: the first at most 1024 bytes of data MUST be transmitted as part of this message. @next PassphraseRequest @next PinMatrixRequest @next EthereumTxRequest @next Failure

message EthereumTxAck

messages.proto:677

* Request: Transaction payload data. @prev EthereumTxRequest @next EthereumTxRequest

message EthereumTxRequest

messages.proto:665

* Response: Device asks for more data from transaction payload, or returns the signature. If data_length is set, device awaits that many more bytes of payload. Otherwise, the signature_* fields contain the computed transaction signature. All three fields will be present. @prev EthereumSignTx @next EthereumTxAck

message EthereumVerifyMessage

messages.proto:700

* Request: Ask device to verify message @next Success @next Failure

message Failure

messages.proto:200

* Response: Failure of the previous request

enum FailureType

types.proto:34

* Type of failures returned by Failure message @used_in Failure

Used in: Failure

message Features

messages.proto:117

* Response: Reports various information about the device @prev Initialize @prev GetFeatures

message FirmwareErase

messages.proto:786

* Request: Ask device to erase its firmware (so it can be replaced via FirmwareUpload) @next Success @next FirmwareRequest @next Failure

message FirmwareRequest

messages.proto:794

* Response: Ask for firmware chunk @next FirmwareUpload

message FirmwareUpload

messages.proto:804

* Request: Send firmware in binary form to the device @next Success @next Failure

message GetAddress

messages.proto:310

* Request: Ask device for address corresponding to address_n path @next PassphraseRequest @next Address @next Failure

message GetECDHSessionKey

messages.proto:750

* Request: Ask device to generate ECDH session key @next ECDHSessionKey @next Failure

message GetEntropy

messages.proto:270

* Request: Request a sample of random data generated by hardware RNG. May be used for testing. @next ButtonRequest @next Entropy @next Failure

message GetFeatures

messages.proto:109

* Request: Ask for device details (no device reset) @next Features

(message has no fields)

message GetPublicKey

messages.proto:288

* Request: Ask device for public key corresponding to address_n path @next PassphraseRequest @next PublicKey @next Failure

message HDNodePathType

types.proto:157

Used in: MultisigRedeemScriptType

message HDNodeType

types.proto:148

* Structure representing BIP32 (hierarchical deterministic) node Used for imports of private key into the device and exporting public key out of device @used_in PublicKey @used_in LoadDevice @used_in DebugLinkState @used_in Storage

Used in: DebugLinkState, HDNodePathType, LoadDevice, PublicKey

message IdentityType

types.proto:269

* Structure representing identity data @used_in IdentityType

Used in: GetECDHSessionKey, SignIdentity

message Initialize

messages.proto:102

* Request: Reset device to default state and ask for device details @next Features

(message has no fields)

enum InputScriptType

types.proto:66

* Type of script which will be used for transaction output @used_in TxInputType

Used in: GetAddress, SignMessage, TxInputType

message LoadDevice

messages.proto:358

* Request: Load seed and related internal settings from the computer @next ButtonRequest @next Success @next Failure

message MessageSignature

messages.proto:480

* Response: Signed message @prev SignMessage

enum MessageType

messages.proto:18

* Mapping between Trezor wire identifier (uint) and a protobuf message

message MultisigRedeemScriptType

types.proto:183

* Type of redeem script used in input @used_in TxInputType

Used in: GetAddress, TxInputType, TxOutputType

enum OutputScriptType

types.proto:53

* Type of script which will be used for transaction output @used_in TxOutputType

Used in: TxOutputType

message PassphraseAck

messages.proto:260

* Request: Send passphrase back @prev PassphraseRequest

message PassphraseRequest

messages.proto:253

* Response: Device awaits encryption passphrase @next PassphraseAck @next Cancel

(message has no fields)

message PinMatrixAck

messages.proto:235

* Request: Computer responds with encoded PIN @prev PinMatrixRequest

message PinMatrixRequest

messages.proto:227

* Response: Device is asking computer to show PIN matrix and awaits PIN encoded using this matrix scheme @next PinMatrixAck @next Cancel

enum PinMatrixRequestType

types.proto:108

* Type of PIN request @used_in PinMatrixRequest

Used in: PinMatrixRequest

message Ping

messages.proto:183

* Request: Test if the device is alive, device sends back the message in Success response @next Success

message PublicKey

messages.proto:299

* Response: Contains public key derived from device private seed @prev GetPublicKey

message RecoveryDevice

messages.proto:414

* Request: Start recovery workflow asking user for specific words of mnemonic Used to recovery device safely even on untrusted computer. @next WordRequest

enum RecoveryDeviceType

types.proto:124

* Type of recovery procedure. These should be used as bitmask, e.g., `RecoveryDeviceType_ScrambledWords | RecoveryDeviceType_Matrix` listing every method supported by the host computer. Note that ScrambledWords must be supported by every implementation for backward compatibility; there is no way to not support it. @used_in RecoveryDevice

enum RequestType

types.proto:78

* Type of information required by transaction signing process @used_in TxRequest

Used in: TxRequest

message ResetDevice

messages.proto:374

* Request: Ask device to do initialization involving user interaction @next EntropyRequest @next Failure

message SelfTest

messages.proto:815

* Request: Perform a device self-test @next Success @next Failure

message SetU2FCounter

messages.proto:772

* Request: Set U2F counter @next Success

message SignIdentity

messages.proto:724

* Request: Ask device to sign identity @next SignedIdentity @next Failure

message SignMessage

messages.proto:457

* Request: Ask device to sign message @next MessageSignature @next Failure

message SignTx

messages.proto:588

* Request: Ask device to sign transaction @next PassphraseRequest @next PinMatrixRequest @next TxRequest @next Failure

message SignedIdentity

messages.proto:735

* Response: Device provides signed identity @prev SignIdentity

message SimpleSignTx

messages.proto:605

* Request: Simplified transaction signing This method doesn't support streaming, so there are hardware limits in number of inputs and outputs. In case of success, the result is returned using TxRequest message. @next PassphraseRequest @next PinMatrixRequest @next TxRequest @next Failure

message Success

messages.proto:193

* Response: Success of the previous request

message TransactionType

types.proto:232

* Structure representing transaction @used_in SimpleSignTx

Used in: SimpleSignTx, TxAck

message TxAck

messages.proto:633

* Request: Reported transaction data @prev TxRequest @next TxRequest

message TxInputType

types.proto:194

* Structure representing transaction input @used_in SimpleSignTx @used_in TransactionType

Used in: SimpleSignTx, TransactionType

message TxOutputBinType

types.proto:223

* Structure representing compiled transaction output @used_in TransactionType

Used in: TransactionType

message TxOutputType

types.proto:210

* Structure representing transaction output @used_in SimpleSignTx @used_in TransactionType

Used in: SimpleSignTx, TransactionType

message TxRequest

messages.proto:622

* Response: Device asks for information for signing transaction or returns the last result If request_index is set, device awaits TxAck message (with fields filled in according to request_type) If signature_index is set, 'signature' contains signed input of signature_index's input @prev SignTx @prev SimpleSignTx @prev TxAck

message TxRequestDetailsType

types.proto:248

* Structure representing request details @used_in TxRequest

Used in: TxRequest

message TxRequestSerializedType

types.proto:259

* Structure representing serialized data @used_in TxRequest

Used in: TxRequest

message TxSize

messages.proto:577

* Response: Estimated size of the transaction @prev EstimateTxSize

message VerifyMessage

messages.proto:469

* Request: Ask device to verify message @next Success @next Failure

message WipeDevice

messages.proto:349

* Request: Request device to wipe all sensitive data and settings @next ButtonRequest

(message has no fields)

message WordAck

messages.proto:444

* Request: Computer replies with word from the mnemonic @prev WordRequest @next WordRequest @next Success @next Failure

message WordRequest

messages.proto:433

* Response: Device is waiting for user to enter word of the mnemonic Its position is shown only on device's internal display. @prev RecoveryDevice @prev WordAck

enum WordRequestType

types.proto:134

* Type of Recovery Word request @used_in WordRequest

Used in: WordRequest