ceramicnetwork / CIPs

The Ceramic Improvement Proposal repository
https://cips.ceramic.network/
MIT License
82 stars 22 forks source link

Discussion: Also Known As Definition #55

Open michaelsena opened 4 years ago

michaelsena commented 4 years ago

Discussion for CIP-23.

PR: https://github.com/ceramicnetwork/CIP/pull/70

simonovic86 commented 4 years ago

@michaelsena @oed updated the JSON Schema

michaelsena commented 4 years ago

@smcki012 with this schema we're trying to generalize how an ID can be represented across various contexts. Would be helpful if you could check the Handshake example above and see if it makes sense 👌 🙏 .

smcki012 commented 4 years ago

At first glance here everything looks straight-forward. HNS is a root anchor and its custom built "Urkel" base-2 radix trie allows for 512 bytes of storage for your on-chain reference. The resource guide for acceptable on-chain records can be found here https://hsd-dev.org/guides/resource-records.html

Storing the contextual JSON info you need in the TXT-record is definitely a great way to bridge DID systems (and has been suggested by others, and a primary use case of early HNS indexers, i.e https://github.com/HandshakeAlliance/hindexer). There are some concerns about privacy of having static on-chain records as pointers to users information, but in the instance of identity attestation and not P2P payments (address reuse shouldn't be a standard practice), it's less of an immediate concern.

michaelsena commented 4 years ago

Thanks @smcki012 👌 that's helpful! What's the easiest way to lookup a txt record in Handshake?

smcki012 commented 4 years ago

Thanks @smcki012 👌 that's helpful! What's the easiest way to lookup a txt record in Handshake?

HSD bundles a recursive resolver. When you run it locally you can query it like 'dig MichaelSena txt +short'; indexer would just store all those records for simpler lookups. See also this WIP: https://github.com/handshake-org/hsd/pull/280