Stunning

I’ve started to dive once again into the mess of connection establishment. Network address translation (NAT) is a reality today for most Internet users, and poses a significant hurdle in creating the user-user (or peer-peer) connections. NAT is the process used by your router to provide multiple internal (192.168.x.x) addresses that are all only visible… Continue reading Stunning

SP3

I started running a public sp3 server today. It’s a small side-project I’ve hacked together over the last couple weeks to make it easier for people to play with packet spoofing. The server works similarly to a public proxy, but with the trade-off that while it won’t send high-volumes of traffic, it will allow you… Continue reading SP3

IETF and the HRPC working group

The Internet Engineering Task Force, the multi-stakeholder organization which shepherds the standards process for many of the technologies used on-line, is continuing to evolve that process. Protocol standards are already expected to include discussions on their security and privacy implications, in order to force an explicit conversation on those issues and hopefully encourage the development… Continue reading IETF and the HRPC working group

Webrtc-Adapter

WebRTC continues to develop towards an evolving standard, requiring some additional leg work to use it in projects. In yet another attempt at bridging that gap, I’ve been working on maintaining an adapter lessening some of the deviation from standard in current browsers.

https://www.npmjs.org/package/webrtc-adapter

It currently fixes

  • Response of format of getStats in Chrome
  • Translation to ‘url’ from the standard ‘urls’ when configuration is passed to Firefox
  • Emission of the ‘negotiationneeded’ event when a data channel is created in Firefox

The main hope is that this will be easier to include in projects than previous attempts.

Distributed Computing so far

I gave a half-hour presentation on my research at the admitted students weekend earlier.  I think I was able to convey some sense of the opportunities that Mudd offers for research, and presented a reasonable face of what it could look like. The talk was an explanation of the concepts behind distributed hash tables, and… Continue reading Distributed Computing so far

Torrent Auditor

I have now migrated the python torrent client that I’ve been working on to a google code project. It lives at torrentauditor and now has basic support for actually downloading torrent files. I researched the bittorrent extension protocols this week, but was somewhat frustrated by what I found. Most of the interesting ones are implemented… Continue reading Torrent Auditor

Auditing Bit torrent

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

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