PKDNS
PKDNS (Public Key DNS) allows you to resolve and publish _pubky
records that map public keys to homeservers.
Resolve Record
To resolve a record, you need a PublicKey
. The resolve
method on the Client
will return a SignedPacket
if one is found for the given PublicKey
.
TODO
Publish Record
To publish a record, you need a Keypair
to sign the packet. The publish
method on the Client
will publish the SignedPacket
to the DHT.
TODO
Operations
- Resolve another user's homeserver: Use
pubky.get_homeserver_of(&user_id)
to find where a user's data is hosted - Publish your homeserver (if stale): Use
pkdns().publish_homeserver_if_stale(None)
to update your record only when needed - Force republish: Use
pkdns().publish_homeserver_force(Some(&new_homeserver))
when migrating to a new homeserver - Fetch your own record: Use
pkdns().get_homeserver()
to retrieve your current homeserver information
The homeserver record is published via PKARR and cached by the DHT, allowing other users to discover where your data is stored.