User:Elifarley/pds: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
{{Category=Wireless mesh networking}} | {{Category=Wireless mesh networking}} | ||
''' | '''Peer Domain System''' is '''a decentralized name resolution system which provides strong authentication and prevents name conflicts.''' | ||
==Introduction== | |||
One of the design goals is to make it easy to share name resolution data. | One of the design goals is to make it easy to share name resolution data. | ||
==Design Goals== | ==Design Goals== | ||
*strong auth | *strong auth | ||
Line 12: | Line 15: | ||
*integration with existing internet infrastructure (dns, browsers) | *integration with existing internet infrastructure (dns, browsers) | ||
*hard to take down | *hard to take down | ||
==Implementation Ideas== | |||
* Create a DNS server in Python. See if http://www.dnspython.org/ can help. | |||
Looks like this question on [http://stackoverflow.com/questions/4399512/python-dns-server-with-custom-backend Python DNS Server] will help. | |||
==Use Cases== | ==Use Cases== | ||
===single record=== | ===single record=== | ||
PDR - Peer domain record - can be pasted on twitter, discussion forums, web pages, emails and so on | PDR - Peer domain record - can be pasted on twitter, discussion forums, web pages, emails and so on | ||
Line 31: | Line 41: | ||
*signer is optional | *signer is optional | ||
* | * | ||
===pdz file=== | ===pdz file=== | ||
a .pdz file has all records of a given domain. A pds client retrieves the file using a dht like kademlia, bittorrent or other p2p apps. Users can also save such files in a specific folder called pdz, which should be shared with everyone. | a .pdz file has all records of a given domain. A pds client retrieves the file using a dht like kademlia, bittorrent or other p2p apps. Users can also save such files in a specific folder called pdz, which should be shared with everyone. |
Revision as of 01:31, 14 March 2011
Main > Software > Wireless mesh networking
Peer Domain System is a decentralized name resolution system which provides strong authentication and prevents name conflicts.
Introduction
One of the design goals is to make it easy to share name resolution data.
Design Goals
- strong auth
- prevent name conflicts
- easy to use
- scalable
- no single point of failure
- integration with existing internet infrastructure (dns, browsers)
- hard to take down
Implementation Ideas
- Create a DNS server in Python. See if http://www.dnspython.org/ can help.
Looks like this question on Python DNS Server will help.
Use Cases
single record
PDR - Peer domain record - can be pasted on twitter, discussion forums, web pages, emails and so on
#pdr domain scope record-type value expiry-date signer digest
- #pdr magic string
- domain is the name to be resolved
- scope helps prevent name conflicts
- record-type can be a, aaaa, cname
- value can be an ip, standard dns name, other pds name
examples:
#pdr openfarmtech 20110311 c openfarmtech.org 0 elifarley 2afqgwk6
- expiry is optional
- signer is optional
pdz file
a .pdz file has all records of a given domain. A pds client retrieves the file using a dht like kademlia, bittorrent or other p2p apps. Users can also save such files in a specific folder called pdz, which should be shared with everyone.
name#scope@signer.pdz