SignedTransaction

Una transazione con firme allegate. Per inviare una transazione, questo messaggio deve essere serializzato e incluso in un SubmitTransactionRequest.

Rappresentazione JSON
{
  "serializedClientTransaction": string,
  "senderSignature": string,
  "senderSigningKeySlot": enum (KeySlot),
  "otherSignatures": [
    string
  ],
  "otherSigningKeySlots": [
    enum (KeySlot)
  ]
}
Campi
serializedClientTransaction

string (bytes format)

Obbligatorio. Un ClientTransaction serializzato con i dettagli della transazione.

Una stringa con codifica in base64.

senderSignature

string (bytes format)

Obbligatorio. La firma del mittente della transazione.

La firma deve essere calcolata firmando i byte serializedClientTransaction con la propria chiave privata.

Per una catena di transazioni, i byte da firmare vengono calcolati come concatenazione di:

  • Un digest della transazione client serializzata dell'intera catena.
  • Un digest della transazione firmata serializzata di ogni unità della catena, nell'ordine in cui appaiono nella catena.

I digest vengono calcolati utilizzando SHA-256.

Una stringa con codifica in base64.

senderSigningKeySlot

enum (KeySlot)

Facoltativo. Lo slot della chiave del mittente utilizzato per firmare la transazione. Se non specificato, utilizza lo slot principale dell'account mittente.

otherSignatures[]

string (bytes format)

Facoltativo. Le firme degli account elencati come firmatari aggiuntivi della transazione. Il numero e l'ordine di queste firme devono corrispondere al campo signatories in ClientTransaction.

I byte da firmare sono gli stessi di senderSignature, che ogni firmatario deve firmare con la propria chiave privata.

Il numero e l'identità dei firmatari aggiuntivi dipendono dal tipo di transazione specifico. Per una catena di transazioni, è necessaria una firma per ogni account che appare come mittente o come firmatario di un'unità nella catena.

Una stringa con codifica in base64.

otherSigningKeySlots[]

enum (KeySlot)

Facoltativo. Gli slot delle chiavi degli account elencati come firmatari aggiuntivi della transazione. Se impostato, il numero e l'ordine di questi slot chiave devono corrispondere al campo otherSignatures in SignedTransaction. Se non specificato, il valore predefinito è lo slot principale di ogni account.