diff --git a/protobuf/trezor.proto b/protobuf/trezor.proto index 2aafd09384..2e4d3b1732 100644 --- a/protobuf/trezor.proto +++ b/protobuf/trezor.proto @@ -1,7 +1,9 @@ /* This file describes Protocol buffers messages for bitcoin hardware wallet devices. - Author: slush + Author: Marek "slush" Palatinus + + Version: 0.1 */ // Specifies which script will be used for given transaction output. @@ -16,7 +18,7 @@ enum RequestType { TXOUTPUT = 1; } -// Reset device's internal state +// Ask for device details // // Response: Features message Initialize { @@ -24,10 +26,10 @@ message Initialize { // Response object for Initialize. message Features { - optional string vendor = 2; // Name of the manufacturer, e.g. "trezor" - optional uint32 major_version = 3; // Major version of the device, e.g. 1 - optional uint32 minor_version = 4; // Minor version of the device, e.g. 0 - optional uint64 maxfee_kb = 10; // Maximum accepted fee per kilobyte of signed transaction + optional bytes vendor = 1; // Name of the manufacturer, e.g. "trezor" + optional uint32 major_version = 2; // Major version of the device, e.g. 1 + optional uint32 minor_version = 3; // Minor version of the device, e.g. 0 + optional uint64 maxfee_kb = 4; // Maximum accepted fee per kilobyte of signed transaction } // Test if device is live, device will send back the message on success @@ -165,14 +167,14 @@ message GetAddress { } message Address { - required string address = 1; // Bitcoin address in base58 encoding corresponding to GetAddress(n) call + required bytes address = 1; // Bitcoin address in base58 encoding corresponding to GetAddress(n) call } // Load seed and related internal settings from computer to the device. Existing seed is overwritten. // // Response: Success, PinMatrixRequest, Failure message LoadDevice { - required string seed = 1; // Seed encoded as a mnemonic (12 english words) + required bytes seed = 1; // Seed encoded as a mnemonic (12 english words) optional bytes pin = 2; // Set PIN protection for important actions } @@ -220,7 +222,7 @@ message TxInput { // Transaction output for SignTx workflow. It is response to TxRequest message sent by the device. message TxOutput { required uint32 index = 1; // Position of output in proposed transaction - required string address = 2; // Target bitcoin address in base58 encoding + required bytes address = 2; // Target bitcoin address in base58 encoding repeated uint32 address_n = 3; // Has higher priority than "address". If the output is to myself, specify parameter for address generation algorithm. required uint64 amount = 4; // Amount to send in satoshis required ScriptType script_type = 5;// Select output script type