zkMe zkKYC Solutions

What kind of zkKYC solutions does zkMe provide?

zkMe offers three different versions of the solution. The default solution is On-chain Mint, please refer to the following description.

On-chain Mint (Default)

Upon the initial connection of the asset wallet to a chain, it includes the creation of an SBT on the user's SSI wallet on both Polygon and the chain user's wallet connect to, setting data on the SBT, minting the SBT on the blockchain that the user's wallet is linked to, and authorizing the project using the SBT minted on the connected asset chain.

However, to accommodate potential different needs from our clients, we also offer the following two methods, Cross-chain and On-chain Transactional.

Cross-chain

During the initial binding of the asset wallet to a chain, it includes creating an SBT on the user's SSI wallet on Polygon, setting data on the SBT, and obtaining user consent for authorization via a pop-up interface in widget. The user's authorization information is then transmitted to the project through zkMe's API.

On-chain Transactional

When binding the asset wallet to a chain for the first time, it involves creating an SBT on the user's SSI wallet on Polygon, setting data on the SBT, and the user will sign approval to authorize the proof of existence of SBT information on Polygon to the chain user's wallet connects to, then transmitting authorization information to the project through the asset chain.


How does the three versions work

After users complete the zkKYC process, then come to SBT minting and KYC status authorization stage.

Cross-chain

Interaction Instructions

How does it work?

  • For the initial binding of the mainnet asset wallet, the following are carried out:

    • Creating SBT in the user's Polygon Mainnet SSI wallet.

    • Setting data for SBT in the user's Polygon Mainnet SSI wallet.

    • User authorizes the permission of project side to compare their information

    • Project side can transmit information through zkMe's API

  • If the user is binding an asset wallet on the testnet, the following are conducted:

    • User authorizes the permission of project side to compare their information

    • Project side can transmit information through zkMe's API

Flow chart

On-chain Transactional

Interaction Instructions

How does it work?

  • For the initial binding of the mainnet asset wallet, the following are carried out:

    • Creating SBT in the user's Polygon Mainnet SSI wallet.

    • Setting data for SBT in the user's Polygon Mainnet SSI wallet.

    • User authorizes the proof of existence of SBT on Polygon to the chain user's wallet connects to

  • If the user is binding an asset wallet on the testnet, the following are conducted:

    • Authorize KYC information to the project via a pop-up interface within widget.

Flow chart

On-chain Mint (Default)

Interaction Instructions

How does it work?

  • For the initial binding of the mainnet asset wallet, the following are carried out:

    • Creating SBT in the user's Polygon Mainnet SSI wallet.

    • Setting data for SBT in the user's Polygon Mainnet SSI wallet.

    • Minting SBT on the chain user's wallet connects to.

    • Setting data for SBTSetting data for SBT in the connected wallet.

    • User authorizes the minted SBT to the project on the connected chain.

  • If the user is binding an asset wallet on the testnet, the following are conducted:

    • Minting SBT on the chain user's wallet connects to.

    • Setting data for SBT in the user's testnet asset wallet.

    • User authorizes the minted SBT to the project on the connected chain.

Flow chart


Comparison of three solutions

On-chain Mint
On-chain Transactional
Cross-chain

User Side

Binding Wallet with zkMe account

Yes

Yes

Yes

Where SBT(s) is minted

Both Polygon and the chain user's wallet connect to

Only Polygon

Only Polygon

How a User Authorizes the KYC Status of A Project

Mint SBT on the chain user's wallet connects to

Sign approval to authorize the proof of existence of SBT on Polygon to the chain user's wallet connects to

Authorize via a pop-up window in the widget, where users decide whether to grant permission to a project

Project Side

Configure Supported Networks in Dashboard

Yes

Yes

No

How to check the user's KYC status

API and Smart Contract

API and Smart Contract

API