One of the strengths of bit torrent is that the primary data transfer protocol is entirely separate from the advertisement protocol. This also has created a strain both in discovering other users who have data, and keeping accurate reports of data that was transfered. The first issue is one that has been developed for extensively,… Continue reading Auditing Bit torrent
Feb 14
Feb 13
Feb 12
Feb 11
Feb 10
Feb 9
Feb 8
Talking to Kad
[python] # Standalone Mainline Kad Client # import socket import time import sys import getopt import random import benc import binascii import select client = "AZ"+str(0x05)+"31"; UDPSocket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM); targetID = "".join(chr(random.randrange(0, 256)) for i in xrange(20)); myID = "".join(chr(random.randrange(0, 256)) for i in xrange(20)); reqs = 0; knownHosts={}; knownPorts={}; def sendData(data,host,port): global UDPSocket,reqs; reqs… Continue reading Talking to Kad
The “Mainline Kademlia” protocol
Kademlia is a description of the network interactions and rpc calls that can form a distributed hash table. Today, these kad based DHTs are one of the most common forms of distributed storage. However, since kademlia does not specify the application level protocol to make calls, it is instead implemented on top of existing application… Continue reading The “Mainline Kademlia” protocol