Skip to main content

Transaction

BRN Transactions

If you transact in BRN, the vendor will get TRST tokens equal to your BRN points, and the TRST tokens they received will index itself as the epoch transaction and include the current timestamp.

Example

Let's say Wallet 1 is burning his 50 BRN points and sending TRST to Wallet 2.

It will look something like this:

    {
"method": "burn",
"sender": "brst_1l8j…",
"receiver": "brst_2p3h…",
"amount": 50,
"timestamp": 1740914000,
"key": "A1E5…",
"signature": "9a8b7c…"
},

Here, the "method" determines if it's going to be a burn or a send transaction. Meaning, it determines if you are using BRN or TRST.

The "timestamp" value here is there to keep the record of when the TRST token was first created/minted.

The "key" value here is the hash of this transaction, which is unique for each transaction and is essentially a unique identifier for this transaction.

TRST Transactions

If you transact in TRST, the receiver will get TRST tokens equal to the ones you sent, and it will write two additional things in the ledger:

  1. The "link" value, which will be the "key" value of the preceeding transaction that the current TRST was derived off of.

  2. The "epoch" value, which will be the "key" value of the first/burn transaction that the current TRST was derived off of.

These will be put as additional fields in the current transaction in the ledger. That way, the entire history of TRST can be accounted for.

Example

Let's say the Wallet 2 that just got the TRST from Wallet 1, is sending all of that TRST to Wallet 3.

It will look something like this:

    {
"method": "send",
"sender": "brst_2p3h…",
"receiver": "brst_3v9k…",
"amount": 50,
"timestamp": 1740914040,
"key": "B5I9…",
"link": "A1E5…",
"epoch":"A1E5…",
"signature": "6d5e4f…"
},

As you can see, the "link" value here is the same one as the "key" value of the burn transaction this was derived from.

The "epoch" here happens to be the same as the "link" because, only for the second transaction, "epoch" and "link" both will refer to the same initial transaction.

For future transactions that will be derived from this TRST transaction however, "epoch" will simply be copied over from the last transaction, while "link" will be the "key" of the last transaction.

Let's say now Wallet 3 sends 30 TRST to Wallet 4.

It will look something like this:

    {
"method": "send",
"sender": "brst_3v9k…",
"receiver": "brst_4z9k…",
"amount": 30,
"timestamp": 1740914100,
"key": "C9M3…",
"link": "B5I9…",
"epoch":"A1E5…",
"signature": "3g2h1i…",
}

As you can see, the "link" value here is the same as the "key" value of the TRST it was derived off of. The "epoch"" is the same initial burn transaction.

Usecase

Having TRST transaction-stamped like this, makes it so that its really easy to locate the originator of the TRST tokens, to know the expiry date of those tokens, as well as to know the entire history of each TRST transaction.

This way, the public knows how the tokens are being transacted. This creates a fairer way of valuing the TRST tokens according to their originator, expiry date, legitimacy, transfer frequency, receivers, amount, etc.