MetaData Sharing
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

50 lines
1.5 KiB

  1. entangled looks promising, but appears to have been abandoned. SF doesn't have code, but did find:
  2. https://github.com/nandajavarma/entangled
  3. Appears to be using an older version of twisted.
  4. DHT:
  5. https://www.bittorrent.org/beps/bep_0005.html
  6. btdht looks like a great option.
  7. https://btdht.readthedocs.io/en/latest/README.html
  8. Design for using bep44 and bep46.
  9. https://www.bittorrent.org/beps/bep_0044.html
  10. https://www.bittorrent.org/beps/bep_0046.html
  11. for what I need, bep44 isn't enough for me, need to "register" that a key applies to the hash...
  12. idea: user needs to look up where a hash came from. does a query for the hash of the file, and gets back a list of keys.
  13. the key + the hash of the file as the salt gives you the torrent of the metadata that the person is publishing for info about that hash..
  14. Publish data on a file:
  15. Looking up file:
  16. 1. hash file
  17. 2. dht query_keys request:
  18. { 'y': 'q',
  19. 'q': 'query_keys',
  20. 't': <txid>,
  21. 'a': { 'h': <self-identifying hash> }
  22. }
  23. response:
  24. { 'y': 'r',
  25. 't': <txid>,
  26. 'r': { 'k': [ <list of p255 keys> ] }
  27. }
  28. So, there needs to be another add_array(infohash, key) or something similar.
  29. BEP46 is interesting for FreeBSD, there can be a salt for each branch (stable/head), which gets updated
  30. to point to the latest release of each. Or even snapshots. This can be done to always get the latest
  31. release of FreeBSD
  32. https://github.com/webtorrent/webtorrent/issues/886
  33. Python 3 only
  34. https://github.com/bmuller/kademlia
  35. https://github.com/isaaczafuta/pydht