# Aptos

# SBT Implementation

As the Aptos Token v2 Standard natively supports minting of Soulbound Tokens, we have implemented the kycNFT on Aptos as an SBT using this standard.

The module is deployed using the aptos move create-resource-account-and-publish-package CLI command, meaning the code deployed on chain is immutable.

A public key is stored in the Module's data, which is used to check the signature of new mints coming in from users via the mint_with_signature function, this ensures that only the kycDAO backend can mint new tokens.

The code for the module can be found here

# Metadata

We follow the Aptos standards for NFT metadata. The metadata itself is stored off-chain on IPFS, as a JSON file, which is referred to in the token_uri field of the NFT.

Here is an example of the JSON metadata stored off-chain referred to in the token_uri field:

{
  "name": "kycDAO SBT",
  "symbol": "KYCDAO",
  "description": "A kycDAO SBT from kycDAO",
  "image": "https://ipfs.io/ipfs/QmdCZ1yrHkHMBRRdMRFQyPeVnwGqPpch3BQiBVy62aBesb",
}