Reveal!
Reveal!
On repeating the experiment a number of times,
\(\text{Completeness,}\)
\(\text{Soundness,}\)
\(\text{Zero-Knowledge!}\)
\(0101\)
\(A\)
\(F\)
\(N\)
\(0\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
\(6\)
\(7\)
\(8\)
\(9\)
\(10\)
\(11\)
\(12\)
\(13\)
\(14\)
\(15\)
\(\text{root}\)
\(\text{nodes}\)
\(\text{leaves}\)
\(\text{hash path}\)
\(\text{depth} = 4\)
Mayur
Name
Customer ID
3769...9201
Currency
USD
Nonce
0
Balance
20,00,000
Account no.
0160...8621
Mayur
3769...9201
INR
4
70,000
0160...8621
Mayur
1282...5092
AED
2
15,000
0289...9013
Prof. SV
2842...0911
INR
97
5,00,000
1902...6765
Suyash
7507...1220
USD
5
10,000
8903...0474
Suyash
7507...1220
BTC
1
2
8903...0474
Saurav
1167...1825
INR
8
50,000
0152...8814
Saurav
2461...9460
ETH
0
1.5
9102...0019
+ 5000
- 5000
19,95,000
15,000
1
6
Customer ID
376...201
Currency
USD
Nonce
1
Balance
19,95,000
Account no.
016...621
376...201
INR
4
70,000
016...621
028...013
128...092
AED
2
15,000
190...765
284...911
INR
97
5,00,000
890...474
750...220
USD
6
15,000
890...474
750...220
BTC
1
2
015...814
116...825
INR
8
50,000
910...019
246...460
ETH
0
1.5
ETH Addr
HEZ Addr
Token ID
RollupTx
HermezWithdraw
Regular accounts
Internal accounts
User
Coordinator
\(\textsf{CreateAccountDeposit}\)
\(\textsf{CreateAccountDepositTransfer}\)
\(\textsf{Deposit}\)
\(\textsf{DepositTransfer}\)
\(\textsf{ForceTransfer}\)
\(\textsf{ForceExit}\)
\(\textsf{CreateAccountEth}\)
\(\textsf{CreateAccountBjj}\)
\(\textsf{Transfer}\)
\(\textsf{Exit}\)
\(\textsf{TransferToEthAddress}\)
\(\textsf{TransferToBjj}\)
\(A_{\text{ETH}}\)
\(i_{\text{from}}\)
\(d\)
\(a\)
\(t_{\text{id}}\)
\(i_{\text{to}}\)
\(\underbrace{\hspace{4.4cm}}\)
\(A_{\text{BJJ}}\)
\(\texttt{Hermez.sol}\)
\(\textsf{AddToken}\)
\(\textsf{L1UserTx}\)
\(\textsf{Withdraw}\)
\(\textsf{forgeBatch}\)
Users
Coordinator
\(\textsf{bid}\)
\(\pi\)
\(\{0,1\}\)
\(\texttt{Consensus.sol}\)
\(\textsf{processForge}\)
\(\texttt{Verifier.sol}\)
\(\textsf{verify}(\pi)\)
\(\{0,1\}\)
\(\underbrace{\hspace{4.2cm}}\)
\(\textsf{forgeL1Timeout}\)
\(\underbrace{\hspace{4.2cm}}\)
\(\textsf{forgeL1Timeout}\)
\(\textsf{L1-L2 batch}\)
\(\textsf{L2 batch}\)