Closed krlosMata closed 3 years ago
isAmountNullified
which is 0 for L2 transactions and 1 for L1 invalid transactionsisAmountNullified
is used to set to 0
the amountF
field in data-availability before they are hashed into hash-inputs
circuitsdecode-tx
sets to 0 the userFee
for L1 transactions
Feature
Compute data availability for all processed transactions, including L1, transactions In order to provide massive migration feature. So far, data availability for L1 transactions was forced to be 0. Therefore it was not possible to proof that a certain
forceTransfer
transactions was done to a specific merkle tree index. By including L1 transactions into data availability, it is ensured that any transaction type is represented in smart contract calldata and be used for afterwards for any purpose such as massive migrationsL1 data availability
L1 data availability would be computed as L2 data availability with a slightly difference in
amount
field:effectiveAmountF = amountF * (1 - nullifyAmount)
amountF
is the amount used in the L1 transactionnullifyAmount
is computed and set to 1 if the L1 transaction is not validSteps
isAmountNullified
in circuit