6

If you read "The Anatomy of a Transaction" it seems the transaction ends after the nonce but if you look at the IRI class "transaction.java" I see the following:

buffer.put(Serializer.serialize(validity));
        buffer.put(Serializer.serialize(type));
        buffer.put(Serializer.serialize(arrivalTime));
        buffer.put(Serializer.serialize(height));
        //buffer.put((byte) (confirmed ? 1:0));
        buffer.put((byte) (solid ? 1 : 0));
buffer.put(Serializer.serialize(snapshot));

Have these new fields recently been added to the format and what are they for?

Andrew Arrow
  • 127
  • 6

1 Answers1

3

The latest description of the transaction format as it is sent "on the wire" is in this IOTA Stack Exchange question: What is the IOTA transaction data structure?

And the last field is still the nonce (although its size decreased).

The code you are referring to is not the "on the wire" format, but what is serialized in iri's database. This contains a few more "trusted" flags to speed up transaction processing (like whether the transaction is solid, i.e. all its referenced transactions are already known to this node).

Helmar
  • 1,293
  • 1
  • 15
  • 28
mihi
  • 7,324
  • 2
  • 15
  • 34