mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-02-28 07:12:28 +00:00
65 lines
1.8 KiB
Protocol Buffer
65 lines
1.8 KiB
Protocol Buffer
syntax = "proto2";
|
|
package hw.trezor.messages.nostr;
|
|
|
|
// Sugar for easier handling in Java
|
|
option java_package = "com.satoshilabs.trezor.lib.protobuf";
|
|
option java_outer_classname = "TrezorMessageNostr";
|
|
|
|
/**
|
|
* Request: Ask the device for the Nostr public key
|
|
* @start
|
|
* @next NostrPubkey
|
|
*/
|
|
message NostrGetPubkey {
|
|
repeated uint32 address_n = 1; // used to derive the key
|
|
}
|
|
|
|
/**
|
|
* Response: Nostr pubkey
|
|
* @end
|
|
*/
|
|
message NostrPubkey {
|
|
required bytes pubkey = 1; // pubkey derived from the seed
|
|
}
|
|
|
|
/**
|
|
* @embed
|
|
*/
|
|
message NostrTag {
|
|
// Nostr tags consist of at least one string (the key)
|
|
// followed by an arbitrary number of strings,
|
|
// the first of which (if present) is called "value".
|
|
// See NIP-01: https://github.com/nostr-protocol/nips/blob/master/01.md#tags
|
|
required string key = 1;
|
|
optional string value = 2;
|
|
repeated string extra = 3;
|
|
}
|
|
|
|
/**
|
|
* Request: Ask device to sign an event
|
|
* @start
|
|
* @next NostrEventSignature
|
|
* @next Failure
|
|
*/
|
|
message NostrSignEvent {
|
|
repeated uint32 address_n = 1; // used to derive the key
|
|
|
|
// Nostr event fields, except the ones that are calculated by the signer
|
|
// See NIP-01: https://github.com/nostr-protocol/nips/blob/master/01.md
|
|
|
|
required uint32 created_at = 2; // Event created_at: unix timestamp in seconds
|
|
required uint32 kind = 3; // Event kind: integer between 0 and 65535
|
|
repeated NostrTag tags = 4; // Event tags
|
|
required string content = 5; // Event content: arbitrary string
|
|
}
|
|
|
|
/**
|
|
* Response: Computed event ID and signature
|
|
* @end
|
|
*/
|
|
message NostrEventSignature {
|
|
required bytes pubkey = 1; // pubkey used to sign the event
|
|
required bytes id = 2; // ID of the event
|
|
required bytes signature = 3; // signature of the event
|
|
}
|