I spent most of the day fighting with Symbol's 1 mbit Spectrum card. These are pre 802.11b frequency hopping wireless cards. There is a driver for Linux on SourceForge, so that seemed like a good place to start. But I hit some snags since the driver wasn't really meant for the 2.4 kernel. So I tried turning of the PCMCIA kernel functionality, but that didn't work. Finally I figured out that the driver didn't want to work with PCMCIA tools package 3.2.1. So I switched to 3.2.0, and that made some headway. I also leaned that <linux/malloc.h> has been deprecated for <linux/slab.h>... That caused some confusion as well. But now I have a card that is recognized, so tomorrow the real fun begins. I am going to add some functionality to the driver so that I can change the MAC address, and then I will put it into promiscuous mode. Then all I need to do is tie it in with Kismet, a wireless sniffer, and I am good to go.
At home I installed the Netgear MR314 wireless router. That was actually pretty easy and pleasant. Now I can hack from my bed.
Papers
I just read Doucer's paper on Sybil attacks. The gist of his paper is that you must have some central authority if you want to prevent an attacker from assuming multiple identities. I like his example, hashing an IP address, since the central authority is somewhat hidden but still there. Zooko believes that he is missing the point since trust networks can get around this problem, but then again trust networks will someday fix all our problems and probably become the sentient AI that send robots back in time to kill us. Anyway, this has got me thinking about ways to choose an arbiter that is truly unbiased. I have been thinking about a protocol that is verifiable by both parties and gives either side very small chance to cheat. (I don't think it is possible to eliminate that chance completely since there is a chance that your random arbiter is either a second instance of one party, or a friend.) More to come on this once I have it all worked out, hopefully with some numbers and properties of resistance.
Mnet
itamar* came over on Sunday for Mnet hack day, it was really a lot of fun to have someone to code with. I am helping him port EGTP to Twisted, and he is teaching me the zen of the Twisted reactor. We did end up getting a bit sidetracked though, talking about digital cash and anonimity. On a seperate note, I am still fighting with my dev environment and it is really starting to annoy me. The cygwin bash shell does not play well with Python's os.path.join(). This has led me to explore a tcsh shell not written by cygwin. I hope it works better because it is hard to test code when you can't get the packages installed. (This wasn't a problem before, but now that we are using distutils I am stuck.)
*It is an unfortunate side effect of advogato that one's name is case sensitive, hence my impoliteness at not capitalizing some people's names.
CryptoBrunch
icepick is going to be in town on Sunday the 24th of November, so we are going to try to have a CryptoBrunch. There is a local coffee shop that has WiFi, and we intend to pipe in others over the net. I am also going to try to gather some of the NYC crowd (Itamar is alread in). If you live in NYC and you would like to talk about digital cash, crypto anarchy, p2p systems, or A-Team re-runs drop me an email.