SignedTransaction

Uma transação com assinaturas anexadas. Para enviar uma transação, essa mensagem precisa ser serializada e incluída em um SubmitTransactionRequest.

Representação JSON
{
  "serializedClientTransaction": string,
  "senderSignature": string,
  "senderSigningKeySlot": enum (KeySlot),
  "otherSignatures": [
    string
  ],
  "otherSigningKeySlots": [
    enum (KeySlot)
  ]
}
Campos
serializedClientTransaction

string (bytes format)

Obrigatório. Um ClientTransaction serializado com os detalhes da transação.

Uma string codificada em base64.

senderSignature

string (bytes format)

Obrigatório. A assinatura do remetente da transação.

A assinatura precisa ser calculada assinando os bytes serializedClientTransaction com a própria chave privada.

Para uma cadeia de transações, os bytes a serem assinados são calculados como a concatenação de:

  • Um resumo da transação serializada do cliente de toda a cadeia.
  • Um resumo da transação assinada serializada de cada unidade na cadeia, na ordem em que aparecem na cadeia.

Os resumos são calculados usando SHA-256.

Uma string codificada em base64.

senderSigningKeySlot

enum (KeySlot)

Opcional. O slot de chave do remetente usado para assinar a transação. Usa o slot principal da conta do remetente se não for especificado.

otherSignatures[]

string (bytes format)

Opcional. As assinaturas das contas listadas como signatárias adicionais da transação. O número e a ordem dessas assinaturas precisam corresponder ao campo signatories no ClientTransaction.

Os bytes a serem assinados são os mesmos do senderSignature, que cada signatário precisa assinar com a própria chave privada.

O número e a identidade dos signatários adicionais dependem do tipo de transação. Para uma cadeia de transações, é necessária uma assinatura para cada conta que aparece como remetente ou signatária de uma unidade na cadeia.

Uma string codificada em base64.

otherSigningKeySlots[]

enum (KeySlot)

Opcional. Os slots de chave das contas listadas como signatários de transações adicionais. Se definido, o número e a ordem desses slots de chave precisam corresponder ao campo otherSignatures em SignedTransaction. Se não for especificado, o padrão será o slot principal de cada conta.