Skip to main content

Proof Request

Place Jobs in the Non-Confidential Market (by User)

In the non-confidential market, once a user is aware of the available market, they can submit a job using public inputs along with the required fee. The market processes the job and provides the user with proof of submission. However, if the user submits incorrect inputs, an attestation is generated to verify that the inputs were wrong.

Return Attestation Proving Incorrect Inputs

An operator can demonstrate that the provided inputs are invalid by retrieving a statement from the IVS (Input Verification Service) attested enclave. Since IVS is an attested enclave that supports the market, its statement can be trusted. Let ( I ) denote the inputs and ( b_i ) denote the bid ID for job ( i ). The statement for invalid inputs is then expressed as:

σIVSi=SignskIVS(i,I)\sigma_{\text{IVS}_{i}} = \operatorname{Sign}_{sk_{\text{IVS}}}(i, I)

σIVSi\sigma_{\text{IVS}_{i}} can then be submitted to prove than inputs indeed provided were wrong.

Place Jobs in Non-Confidential Market (by Relayer)

In this process, a user sends public inputs to a relayer, who then forwards these inputs to an Input Validation Service (IVS) for verification. Once IVS confirms the validity of the inputs, the relayer proceeds to place the job request—with the required fee—into the market. The market then provides proof of job placement back to the relayer, which is subsequently forwarded to the user.

Place Jobs in confidential market (by user)

In this process, the user first retrieves the public key of the matching engine from the KeyRegister. This key is then used by the user to encrypt their private inputs, ensuring that sensitive information remains confidential. Next, the user submits a job to the Market, including the public inputs, the encrypted private inputs, and the associated fee. Upon successful job placement, the Market provides proof to the user, and if any inputs are incorrect, an attestation is returned to indicate the error.

info

Place job with public inputs, encrypted private inputs & fee

You can refer to Step 1 and Step 2 of Secure Data Handling Section to understand how encrypted inputs are posted.

The way to Return attestation proving inputs wrong is same as in non-confidential market.

Place Jobs in Confidential Market (by Relayer)

In this flow, the process begins with the user obtaining the matching engine's public key from the KeyRegister. The user then encrypts their private inputs and sends both the public inputs and encrypted private inputs to the relayer. The relayer forwards these inputs to the Input Validation Service (IVS), which activates communication with the MatchingEngine to authenticate the encrypted private inputs and retrieve the corresponding decrypted inputs. Once IVS confirms the validity of the inputs, the relayer submits the job—comprising the public inputs, encrypted private inputs, and fee—to the Market, which then returns proof of job placement to the user through the relayer.