Infrastructure

Pandora's infrastructure is not solely composed of a rollup and a kernel. For proper functionality and to enhance the user experience, other components must be deployed. This includes the proxy-server, detailed in the previous technical section. There are also smart contracts that ensure security in certain critical interactions between a user and Pandora.

In particular, the bridge contract is used for token transfers or withdrawals from the L2. During a transfer, the contract will verify that the amount requested by the deposit entry point is available in the user's L1 account. If so, a message is posted by the smart contract in the inbox and the amount of money specified is withdrawn from the user's L1 account to the smart contract. When the withdrawal entry point is called, a withdrawal request is made by posting a message in the inbox. The contract sends messages with the transaction sender as withdrawer and the verification occurs in the kernel: it directly checks if the balance on the L2 account permits the withdrawal.

For an upgrade request, a unique admin has the right to call the upgrade contract's entry point. If the admin's address is not recognized, the call will fail. Otherwise, an upgrade message is posted in the inbox addressed to Pandora. This message contains what is called a preimage root hash of the upcoming upgrade. The administrator must make the series of preimages available to the rollup so that when the message is read by the kernel, it can reconstruct the code for the next kernel from these images and update itself.