The purpose of id/ is to manage a public online identity.
- Any application can retrieve data associated with an identity.
- An identity can be composed of email addresses, bitcoin/namecoin/*coin addresses, gpg key, xmpp address, etc.
- Each application type that want to store data associated with an identity must be added in the registered applications list with a description on how data will be formatted.
- namespace : id/
- name :
- lowercase,
- a-z, 0-9
- space : max one space between other characters, not as first or last
- prefixed with "id/"
Regexp (to be confirmed) :
^id/[a-z0-9]([ ]?[a-z0-9])*$
- value : max 1023 characters, json encoded
Fecthing all data from the identity of "khal" :
$ namecoind name_show '''id/khal''' { "email" : "khal@dot-bit.org", "bitcoin" : "1J3EKMfboca3SESWGrQKESsG1MA9yK6vN4", "namecoin" : "N2pGWAh65TWpWmEFrFssRQkQubbczJSKi9" }
Fecthing bitcoin data from the identity of "khal" :
$ namecoind name_jsonget '''id/khal''' bitcoin { "bitcoin" : "1J3EKMfboca3SESWGrQKESsG1MA9yK6vN4", }
Application | Description | Rules | Examples |
---|---|---|---|
associate the id with an email address | must contain an email address |
{ "email" : "khal@dot-bit.org" } | |
namecoin | associate the id with a namecoin address |
|
$ namecoind name_show id/khal
{
"namecoin" :
{
"N2pGWAh65TWpWmEFrFssRQkQubbczJSKi9"
}
}
$ namecoind name_show id/khal
{
"namecoin" :
{
["N15mJsVMHNtVDedDnD8vu82M5hCfn3nJWq",]
}
}
$ namecoind name_show id/khal
{
"namecoin" :
{
"default" : "N15mJsVMHNtVDedDnD8vu82M5hCfn3nJWq",
"donation": "N2pGWAh65TWpWmEFrFssRQkQubbczJSKi9"
}
}
|
Application | Description | Rules | Examples |
---|---|---|---|
bitcoin | associate the id with a bitcoin address |
|
$ namecoind name_show id/khal
{
"bitcoin" :
{
"default" : "1KHAL8bUjnkMRMg9yd2dNrYnJgZGH8Nj6T",
"donation": "1J3EKMfboca3SESWGrQKESsG1MA9yK6vN4"
}
}
Allow to securely get a different address for each customer (or anything else, information between brackets will be asked to user) on an untrusted channel (like http), signed with a bitcoin address.
$ namecoind name_show id/khal
{
"bitcoin" :
{
"default" :
{
"url" : "http://merchant.com/bitcoin/getnewaddres/{Your customer id}",
"signedWith" : "1KHAL8bUjnkMRMg9yd2dNrYnJgZGH8Nj6T",
"useOnce": true
}
}
}
|
gpg | associate the id with a gpg public key | TODO | See Personal_Namespace |
xmpp | associate the id with an xmpp/jabber id |
|
{ "xmpp" : "jabber@dot-bit.org" } |
bitmessage | associate the id with a bitmessage address |
|
{ "bitmessage" : "BM-orkCbppXWSqPpAxnz6jnfTZ2djb5pJKDb" } |