SignedTransaction

Es una transacción con firmas adjuntas. Para enviar una transacción, este mensaje debe serializarse y, luego, incluirse en un SubmitTransactionRequest.

Representación JSON
{
  "serializedClientTransaction": string,
  "senderSignature": string,
  "senderSigningKeySlot": enum (KeySlot),
  "otherSignatures": [
    string
  ],
  "otherSigningKeySlots": [
    enum (KeySlot)
  ]
}
Campos
serializedClientTransaction

string (bytes format)

Obligatorio. Un ClientTransaction serializado con los detalles de la transacción.

Es una cadena codificada en Base64.

senderSignature

string (bytes format)

Obligatorio. Es la firma del remitente de la transacción.

La firma se debe calcular firmando los bytes de serializedClientTransaction con su propia clave privada.

Para una cadena de transacciones, los bytes que se firmarán se calculan como la concatenación de lo siguiente:

  • Es un resumen de la transacción serializada del cliente de toda la cadena.
  • Es un resumen de la transacción firmada serializada de cada unidad de la cadena, en el orden en que aparecen en la cadena.

Los resúmenes se calculan con SHA-256.

Es una cadena codificada en Base64.

senderSigningKeySlot

enum (KeySlot)

Es opcional. Es la ranura de clave del remitente que se usa para firmar la transacción. Si no se especifica, se usa el espacio principal de la cuenta del remitente.

otherSignatures[]

string (bytes format)

Es opcional. Las firmas de las cuentas que se indican como firmantes adicionales de la transacción. La cantidad y el orden de estas firmas deben coincidir con el campo signatories en el ClientTransaction.

Los bytes que se firmarán son los mismos que los del senderSignature, que cada firmante debe firmar con su propia clave privada.

La cantidad y la identidad de los firmantes adicionales dependen del tipo de transacción en particular. En el caso de una cadena de transacciones, se necesita una firma para cada cuenta que aparezca como remitente o como signatario de una unidad de la cadena.

Es una cadena codificada en Base64.

otherSigningKeySlots[]

enum (KeySlot)

Es opcional. Las ranuras de claves de las cuentas que se indican como firmantes adicionales de la transacción. Si se establece, la cantidad y el orden de estas ranuras de claves deben coincidir con el campo otherSignatures en SignedTransaction. Si no se especifica, se establece de forma predeterminada en el espacio principal de cada cuenta.