> For the complete documentation index, see [llms.txt](https://docs.hashkey.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hashkey.id/protocol/resolver.md).

# Resolver

Resolver records the DID user personal information (eg: `name`, `avatar`, `blockchain address`). DID user can display the personal information by resolver contract. all of the information is optional.

### Architecture

<figure><img src="https://2949467753-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fz3fCDxNqOLDzP6OQmW1S%2Fuploads%2FUJdmrCzH7btcwdRJ4omv%2Fresolver.png?alt=media&amp;token=3438fc6f-a812-4133-a688-ec57cb4ec7ec" alt=""><figcaption></figcaption></figure>

### Core

The `tokenId` is used as the core to bind all information together. TokenId and DID are one-to-one mappings relationship in the DID contract. DID is essentially a non-transferable NFT. Setting DID resolver information is equivalent to setting additional metadata for NFTS.
