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

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

The One-Day Website

I spent today building http://setTimeout.net, a website that I was inspired to create yesterday evening. I set myself the goal of finishing the project in one day, I’ve managed to get done enough in that time period, and I’m pretty happy with how it turned out. I came up with several ideas for how to… Continue reading The One-Day Website

Launchpad Update

I am almost done rewriting my launchpad code so that it can be run without a kernel module. Instead, I’ll be using libusb, which is a reasonably common and cross-platform library for interacting with USB devices. I’m having a couple issues with callbacks and polling, but I’m making pretty steady progress, and should have a… Continue reading Launchpad Update

Novation Launchpad

Information here is outdated. Look instead at the Latest Progress. The new toy I got for christmas was a novation Launchpad.  It’s a Midi controller developed specifically for ableton live, and is able to both generate midi data or trigger program actions. Since my current computer is running ubuntu, I was planning to use it… Continue reading Novation Launchpad

Secret Santa

Just got a secret santa mix-tape. Hosting the images here for re-posting. You can listen vicariously through the mp3 version posted here.

Published
Categorized as Online