Skip to main content

Overview

The PADO MPC-TLS SDK provides developers with tools to directly implement the zkAttestation solution in dApps without the need for backend cryptography or attestation workflow development.

To attest a user’s web data, create proofs, and implement verification mechanisms, use this SDK along with a set of MPC-TLS APIs.

Some application examples include:

  • Verifying the number of followers on a user’s X account to determine if they are a KOL or a newcomer.
  • Enabling asset verification using the user’s off-chain exchange asset or token status.
  • Verifying the ownership of a user’s social media account, such as TikTok or X, to provide basic PoH capability.
  • And many more based on your needs...

In this initial version, the attestable data source, attestation content, and supported blockchains are pre-set. A future developer platform will allow customization.

Workflows

The basic workflows are as follows:

avatar

The PADO Extension is required to complete the MPC-TLS process on the data source page. When using the PADO MPC-TLS SDK, prompt users in your dApp to install the latest version (above 0.3.13) of the PADO Extension, as it is required.

1. User Onboarding: The user onboards to your dApp, connects their Wallet, and follows your instructions to initiate the data attestation process.

2. Configure zkAttestation Parameters: Before starting the attestation process, ensure that all parameters required by the SDK for this attestation workflow are properly configured.

3. Initiate zkAttestation Process: Your dApp activates the PADO MPC-TLS SDK, requesting the data and attestation content configured in the SDK.

4. Redirect to the Data Source Page: Your dApp redirects the user to the data source page. After the user logs in to their account on that website, the PADO Extension pop-up window will appear in the right corner of the data source page.

5. Initiate zkAttestation Process: The user needs to click the start button on the PADO Extension pop-up window to generate a zkAttestation process.

6. Execute MPC-TLS Protocol: Once the zkAttestation process begins, the MPC-TLS protocol runs between the data source page, the PADO extension, and the PADO server to complete a privacy-preserving attestation process.

7.Return zkAttestation Result: After the zkAttestation process is complete, whether successful or not, the PADO Extension retrieves the result and sends it to the MPC-TLS SDK. For the failed tasks, we provide several error codes to help you better identify and troubleshoot issues.

8. Get and Verify the zkAttestation Result: Your dApp will retrieve the zkAttestation result from the SDK and verify PADO's signature to confirm whether the result is trustworthy.

9. Business Logic: Your dApp will execute business logic based on the proof that users obtain from the SDK. Your dApp will determine how to use the proof, whether to submit it on-chain, and how to use it.

zkAttestation Capabilities

In this initial version, the attestable data source, attestation content, and supported blockchains are pre-designated.

1. Attestable Details

Data SourcesAttestation ContentInput ValueAttestation Result
https://www.binance.comAsset balance in trading accountUSD value, numeric, minimum value of 0.000001, restricted to a 6-decimal-place numberif the "attestation content" is greater than "input value"
Token holding in trading accountToken name, alphabetif the "input value" is equivalent to more than USD 0.1
KYC StatusN/Aif the "attestation content" passed basic KYC verification
Account ownershipN/Aif the "attestation content" owns the associated account
https://www.okx.comTotal asset balanceUSD value, numeric, minimum value of 0.000001, restricted to a 6-decimal-place numberif the "attestation content" is greater than "input value"
Token holdingToken name, alphabetif the "input value" is equivalent to more than USD 0.1
KYC StatusN/Aif the "attestation content" passed basic KYC verification
https://www.tiktok.comAccount ownershipN/Aif the "attestation content" owns the associated account
https://www.x.comAccount ownershipN/Aif the "attestation content" owns the associated account
Social connectionsFollowers number, numeric, minimum value of 0if the "attestation content" is greater than "input value"

2.Supported Blockchains

For the attestation contract, we currently deployed EAS and Verax attestation schemas to the following blockchains:

  • Linea
  • BNB Chain
  • opBNB
  • Arbitrum
  • Scroll

If you have further needs for other blockchains, please contact us through our community for support.