The days are racing by, but I've finally fallen into a nice routine for the semester. Moreso than in past semesters, the line between my life and the 7-day Gregorian calendar has become blurred. I eat when I'm hungry (even if that means dinner at 11:30pm), sleep when I'm tired (or more often, when I can), and work relative to due dates, meetings, and paper deadlines. Every once in awhile, I'll get a slap reminder that the rest of the world runs more by the Monday-Friday, 9am-5pm schedule, and doesn't function as nicely on Sundays or at 4am in the morning. Regardless, I'm managing to stay on top of my coursework, research, ACM obligations, and sanity (well, by my standards anyways). Sleep has been suffering, but I have the rest of my life to do that.
Coursewise, I'm taking Computer Security with Professor Gunter and Professor Borisov. The class has just been lectures so far, but I'll have a midterm, exam, and project to deal with in the coming weeks. I'm taking Wireless Networking with Professor Luo, which I'm really enjoying. The first half the semester has been reading tons of papers (about 4 each week) sectioned off by topics in wireless networking. The second half will be student presentations and projects. I'll be doing a project on anonymity and wireless routing, specifically, quantifying the relationship and guarentees one has between entropy, real-time capacity, and latency of a network with current anonymous routing protocols, and then providing protocol suggestions for future work in anonymous routing. I'm also taking the Security Seminar Reading Group, which meets once a week to discuss and dissect current papers from the big conferences in security. Finally, I'm taking the Network Systems Lab with Professor Hou. I'm pretty sure that my lab partner, Leon, and I have a better understanding of the labs and course material than the professor and TA combined. I'm basing this off of the many errors present in the lecture notes and labs, and on the fact that our lab demos seem to end up with us answering questions the TA has. Then again, we did have some interesting issues come up in our last lab that neither of us has been able to explain. We had to write a Linux kernel module that created files in /proc to display TCP and system statistics periodically. We created a buffer overflow after using some sketchy struct casting, and then couldn't figure out why we couldn't compile after removing the recent code additions. We were getting compiler errors from a file we hadn't touched (/build/include/linux/device.h), so we decided to check out the file, and noticed that our buffer overflow actually wrote over the middle of this random header file, which just so happened to be required by our module. Luckily we had the kernel source available on another machine to just copy over the original header file. Looking back, it would have been much more disastrous if the buffer overflow wrote over our source code or something more necessary. We concluded that the file might have been in memory due to some aggressive Linux caching of the directory (which we had opened recently), but I still can't explain why it wrote to the middle of the file. I suppose since file blocks aren't stored contiguously, that could explain it. If I get ambitious, I'll try and reproduce the error and figure out what happened. Either way, I was thoroughly entertained by the whole thing.
Researchwise, I'm doing an analysis of Morphmix with Nikita Borisov. Morphmix is a p2p circuit-based mix network for anonymous low-latent Internet access. Unlike some other systems out there, each Morphmix node acts as a client and router, so it's scalable to the whole of the Internet. I'm trying to model some aspects of the system to test its anonymity guarantees, and then I'll try and prove these models through simulation. I'm also working on writing a paper with Jason Franklin and Matt Thomas on the insider threat, and what network architecture modifications we can suggest to prevent insider stepping stone attacks.
ACMwise, I have the continual Vice Chair duties to take care of, am organizing SigSAC talks for the year, and helping out with small details of Reflections|Projections, which will be coming up next weekend. I am most looking forward to seeing friends from far places come in for it, and for all of the planning and organizing to finally be done!
Oh! I also decided that I want to get a PhD! Actually, this realization occurred sometime over the summer, but I've decided that I'm going to go ahead and apply this year to transfer into other schools for next year, despite the fact that I won't have graduated with a Masters from UIUC yet. The rationale is that if I don't get in where I want to go as a transfer, I can stick around another year, finish my Masters in corny Illinois, and beg and plead one more time come 2006 applications. And by that time, if I still don't get in, there is always the circus!