# 3.1 Personalized Web3 Identity

HNDL empowers users to create unique handles, enhancing their identity within the Web3 ecosystem and simplifying interactions. Handles can be used as decentralized usernames, smart contract wallets enabling access to various web3 or web2 services using SIWH(Sign-In With HNDL).

### **Store Public Data**

Users can store text-based information in their handles using the `UpdateTokenURI` function from the manage handle page. This feature allows users to store a wide range of text-based data, including:

* IPFS hashes
* Zone Files
* Notes and journals
* HTML-embedded images and videos
* Legal documentation
* Anything text-based

*Note: There is currently no official standard for how the token URI should operate for HNDL; it is still in the experimental stage. However, we believe a JSON format would be more practical for all use cases.*

*JSON Example:*

```

{
    "attributes": [
        {
            "trait_type": "Handle",
            "value": "Parent"
        },
        {
            "trait_type": "Letters",
            "value": "7"
        }
        {
            "trait_type": "Digits",
            "value": "0"
        }
        {
            "trait_type": "Hyphen",
            "value": "0"
        }
        {
            "trait_type": "Punycode",
            "value": "No"
        }                
        {
            "trait_type": "Name",
            "value": "Satoshi Nakamoto"
        }
        {
            "trait_type": "Phone Number",
            "value": "012 345 6789"
        }        
        {
            "trait_type": "E-mail",
            "value": "satoshin@gmx.com"
        }
        {
            "trait_type": "Website",
            "value": "https://www.bitcoin.org"
        }
        
    ],
    "description": "HNDL, an acronym for Handle Naming Decentralized Ledger, represents an innovative decentralized handle naming system developed on the Rootstock sidechain.",
    "image": "link to inscription",
    "hamdle": "satoshi.₿"

}
```

*It's essential to keep in mind that when a handle expires, the TokenURI data will continue to exist. However, if the handle is burned, the associated TokenURI data will not be retrievable*.

### **Token Bound Account (ERC-6551)**

<figure><img src="/files/FwSq4MPqwCvrUSuGyct0" alt=""><figcaption><p>Source: <a href="https://research.ancient8.gg/research/en/articles/erc-6551-a-new-enhancement-for-gaming-and-nft-projects">https://research.ancient8.gg/research/en/articles/erc-6551-a-new-enhancement-for-gaming-and-nft-projects</a></p></figcaption></figure>

Users can further enhance their handle capabilities by resolving to a token bound account. This protocol enables ERC-721 tokens (in this case, handles) to become a wallet of their own, with their own address that behaves like any other crypto wallet. This allows users to receive and send ERC assets directly from their handle.

### **Sign In With HNDL (SIWH)**

<figure><img src="/files/m3xO33ZLznFBgwgRDDNS" alt=""><figcaption><p>Sign-In With HNDL</p></figcaption></figure>

Users can sign in to applications using their handle while retaining ownership of their public and private data through zero-knowledge proofs, making it perfect for storing personal documents, government IDs, and credentials. Data are assigned to an app ID, which represents the application, and can only be accessed by the corresponding app ID during the sign-in session.

### **ZK-ERC-6551**

More information on this feature is coming soon. Stay tuned for updates on how ZK-ERC-6551 will further enhance the HNDL ecosystem.

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://studybitcoin.gitbook.io/hndl-bitcoin-handle-naming-system/3.1-personalized-web3-identity.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
