Ceramics
Last updated
Last updated
Ceramics is building Decentralised Identity (DID) open-source solution which can be used across various blockchain solutions for creating, hosting and sharing streams of data https://ceramic.network/
Ceramics uses CIPs - Ceramic Improvement Proposals which are standards for the Ceramic platform, including core protocol specifications…
As every network, Ceramics wants to decentralise its power to the community. CIPs are step towards decentralisation of the platform and giving power to the hands of community.
"NFT is a DID method that uses the Ceramic network to resolve DID documents for NFTs"
"A DID method for any NFT on any blockchain. The DID document is statically generated from on-chain data. The DID associated to the blockchain account of the asset's current owner (using CAIP-10 Links) is the only entity authorized to act on behalf of the NFT DID, authenticate in DID-based systems, and make updates to streams or other data owned by the NFT DID. When ownership of the NFT changes, so does the controller permissions" - author of intro article https://blog.ceramic.network/what-is-ceramic/
"The NFT DID Method converts any non-fungible token on any blockchain into a decentralized identifier where the owner of the NFT is the controller of the DID. This is achieved by using the Chain Agnostic Improvement Proposals to describe NFT assets and blockchain accounts, as well as the Ceramic network to find the DID associated with the owner of the NFT."- CIP author
DID Document Metadata
create
- populate using the blockchain timestamp from the block when the NFT was created
updated
- populate using the blockchain timestamp from the block of the most recent owner change
ERC721 API does not provide any way to query this data, you may want to use The Graph protocol to create subgraphs for NFTs that are supported
The following metadata properties MAY be populated (if possible).
create
- populate using the blockchain timestamp from the block when the NFT was created
updated
- populate using the blockchain timestamp from the block when the given version owner became owner
versionId
- integer, should equal the number of owners until the looked up version starts at 0
nextUpdate
- populate using the blockchain timestamp from the block when the next owner became the owner
Transfer the NFT to another account
Burn it
Full implementation of CIP-94 : https://github.com/ceramicnetwork/CIP/blob/main/CIPs/CIP-94/CIP-94.md
NFT DID Resolver: https://github.com/ceramicnetwork/nft-did-resolver/blob/main/README.md
A project that is using NFT DID Resolver: https://github.com/nama-finance/meta-manager
Asset Reference for the ERC721 Asset Namespace - CAIP-22: https://github.com/ChainAgnostic/CAIPs/blob/master/CAIPs/caip-22.md
"Extract the Asset ID from the method specific identifier. From it you can learn which asset on which blockchain to look up the owner of the NFT. Once you have the owner account convert it to a by combining it with the Chain ID from the Asset ID. Using the Ceramic caip10-link
doctype we can now look up the DID which this account points to."- CIP author