Code References

Encrypted Mempool

request_encrypt_tx
// RPC request for encrypting the transaction
pub async fn request_encrypt_tx(
    rpc_endpoint: Endpoint,
    parameter: EncryptTx,
) -> Option<EncryptTxResponse> 
encrypt_tx_with_zkp
pub fn encrypt_tx_with_zkp(
    raw_tx: String,
    time_lock_puzzle_param: TimeLockPuzzleParam,
    key_validation_zkp_param: ParamsKZG<Bn256>,
    key_validation_proving_key: ProvingKey<G1Affine>,
    encryption_zkp_param: ParamsKZG<Bn256>,
    encryption_proving_key: ProvingKey<G1Affine>,
) -> Result<(EncryptedTx, DecryptionKey, Option<PvdeZkp>)
EncryptTxResponse
pub struct EncryptTxResponse {
    pub encrypted_tx: EncryptedTx,
    pub decryption_key: DecryptionKey,
    pub pvde_zkp: Option<PvdeZkp>,
}
EncryptedTx
pub struct EncryptedTx {
   raw_tx_hash: RawTxHash,
   encrypted_data: EncryptedData,
   time_lock_puzzle: TimeLockPuzzle,
}
SendEncryptedTx
pub struct SendEncryptedTx {
    pub rollup_id: RollupId,
    pub encrypted_tx: EncryptedTx,
    pub pvde_zkp: Option<PvdeZkp>,
}
SendEncryptedTxResponse
provide_decryption_key
ProvideDecryptionKey

Sequencing Layer ↔ User

send_encrypted_tx
add_encrypted_tx

Sequencing Layer ↔ Rolup

AddRollup
RollupType
Operator
add_rollup
GetRawTxList
GetRawTxListResponse
get_raw_tx_list
BlockMetadata
Block
impl BlockMetadata
block is not closed
block is empty, no decrypted transactions
block is not empty, all transactions are decrypted
block is not empty, not all transactions are decrypted

Leader-based

forwarding to the leader
request from followers to sync

Last updated