Proxy - Server

Interacting with Pandora is done through an API server. This server communicates with the rollup node and acts as a proxy. That is, it exposes a different API from the one of the rollup node (which is generic and agnostic w.r.t. the rollup) which is instead tailored to the Pandora rollup.

For instance, when the balance (on pandora) is requested, the API server makes an RPC call to the rollup node in order to read the (possibly historical) data contained in the durable storage of the rollup state. The raw data is then translated to a balance information that is returned to the user.

The proxy server can also be configured to sign notarization requests automatically, i.e. on behalf of the users. Of course this means that the signer associated with the server is the one that pays for all notarization requests but this is how Pandora is meant to be used in a semi-decentralized way. This allows to hide all blockchain elements from the users and offer instead a purely traditional RPC based API for notarization with Pandora.

The proxy server is stateless (at the moment) and relies on the rollup node capabilities for a lot of its operations (see below). In particular, notarization requests are sent to the rollup node as L2 messages which will take care of batching them in L1 transactions and injecting those on a Tezos Layer1 node with the best latency.

Pandora Proxy Server