ckbox is software designed to aid in a specific type of security testing against a spying attack known as van Eck Phreaking or TEMPEST. It involves picking up radiation leaking from an electronic device, such as a monitor, and interpreting the signal to recreate the data contained in the device. This can be thought of as a sort of shoulder-surfing. Eckbox is the first and only open-source software designed that helps to test against this kind of attack. But it's still in early development, so feel free to contribute code, ideas, designs, advice, and nonthreatening e-mails :).
Eckbox is covered by the GPL
, which means you can do pretty much whatever the hell you want with it.
June 10, 2004: I finally released a new version, 0.9.4. The major change is code cleanup -- self-documenting code *and* comments :) -- and there is no longer an eckboxcalib. bw, instead of displaying a chess board type thing now displays a black screen with the bottom right pixel white.
If I'm not lazy, I'll include the averaging of frames together for the next version. Then USBness or FireWireness.
May 25, 2004: I (Nick) kicked Luke off of the team for being a lazy potsmoking bastard (I wouldn't mind the potsmoking so much if he weren't so lazy). I have replaced him with a guy named Ford Kirk, who has a faster computer than me and FireWire, and a guy named Philip "Gresh" Gresham.
I also made a nice Yagi antenna out of a tapemeasure. Wee.
May 12, 2004: Some guy out on the Internet somewhere made the complaint that the limitations of the parallel port prevent any kind of useful imaging, so I'm gonna do it for USB 2.0 or something. Please ignore any and all hardware advice that comes from me until I do so.
May 11, 2004: I switched to the GPL because no one seems to know what the QPL is, and GPL is more synonymous with Open Source. That, and I didn't have any other purpose to update. I hope to soon release another version which will simply be in self-documenting code, as the current code is nearly impossible even for me to read. After that, I'll probably add a feature that allows several frames to be averaged together before being displayed, which should hopefully reduce background noise. If anyone cares to design a good antenna/corresponding circuitry, feel free to do so, as Gresh (another guy who doesn't actually work on the project, but gives advice. Gresh is short for Gresham, his last name) hasn't given us any useful advice on this. School ends for us on 4, June, I think, so that's when you can expect rapid updates again.
April 12, 2004: The web site is being redone by Derek S. Hinch, who may also port eckbox to
April 2, 2004: Sorry I haven't updated in a while. I've been trying to work on the hardware with Luke, but we've both been pretty busy with school. I found a cool web site that has done some research of its own into the hardware. You should probably take a look at it: http://dafh.org/gbppr/mil/eckbox/
March 24, 2004: Luke and I will hopefully get together this weekend and design some better hardware.
March 21, 2004: There will soon be a Polish translation of the site, thanks to Mariusz Gumowski. Woot.
Extra update: I've added a new beta release, thanks to some code by Mariusz Gumowski (yes, the same one). It fixes an issue with input from the parallel port. Also, on the release numbers: I was a little over-optomisitic when numbering the versions, so what I think I will do, is after v0.9, I will either go down to v0.3.* or perhaps the first good release will be v2.0 instead of the traditional 1.0. I'll figure it out for sure when I get to v0.9.9.
March 19, 2004: I've released v0.9.3b1, which fixes the enormous bug in v0.9.3, and uses a better method of orienting the screen. Calibration also takes less time than before.
March 17, 2004: Nearly everyone who e-mails and the one person who saw my ICQ number (sorry man, I was asleep) seem to be from Europe, so if there's anyone who would like to translate anything at all on this site into any European language, that would be just great. Or the non English speaking people can just use google language tools, it really doesn't matter to me.
Extra updatey goodness from the 17th: I've released version 0.9.3 of eckbox, but I don't suggest you download it until tomorrow, at which time I will release a patch (well, technically not a patch, but who cares) that will fix a huge bug in the calibration system. The new release (0.9.3), when it works =) will include a much better calibration system, that will better place the threshold of black/white pixels. It takes longer to calibrate and requires user input, but you should get a much better picture this way. Perhaps the release after the patch will deal with the speed of calibration.
March 16, 2004: I got bored with coding for a while, so now I'm going to try and develop some better hardware with the help of anyone who would care to e-mail me suggestions. Also, I'll probably get around to writing some better hardware docs, maybe even include it in the man pages or something. Previews to coming software attractions: A bug in the color assignment of the pixels will now be fixed by added automated calibration features in eckboxcalib. Oh, and eckbox is now a freshmeat project (since last Friday) too: freshmeat.net/projects/eckbox.
March 13, 2004: I finally got around to submitting eckbox to freshmeat, so it's up there too now. Someone from C'T magazin (some german computer technology mag) emailed me, suspicious that there was a trojan in my configure executable binary. So I rewrote configure (a whopping 4 line C++ program) as a shell script. I didn't think this deserved a full release, hence the really weird version number. Also, since the last update on this page, I've changed the version numbering scheme. Instead of v0.9bx, it is v0.9.x[by], where the 0.9.x is the main v number, and the [by] is a subrelease not worthy of its own number. The square brackets indicate that it might not be there, and don't actually appear on the downloads page.
On a completely unrelated topic, I asked a german guy at school how to say monitor in German, and he said that it is just "Monitor." He then proceded to say that Germany doesn't live in the medieval times, and there is technology there too. Why he said the last part, I don't know. I then asked the german guy next to him how to say mouse, but he just told me to go "fick" myself, which I can only assume is some strange German insult.
March 8, 2004: The first and second C++ versions have been released, they are the v0.9bx's. I don't think I'll continue development in Assembly, as the C++ is so much more pleasant to develop in, and runs nearly as quickly as Assembly programs. It depends on SVGAlib for graphics, so unlike the previous releases (which were admittedly shit), it can only run on Linux, not BSD, not OSX, not Windows, but Linux. It now has a makefile for user-friendliness (woot), and also some man pages for a special bonus helping of user friendliness. I'll probably release v1.0 soon now, as v0.9b2 (the current version as of this writing) seems to be nearly bug-free, although lacking in some features (such as the ability to do other than 800x600 resolution). As predicted in an earlier news dealy, which appears only on the project page at sourceforge.net/projects/eckbox, Eckbox now comprises 3 programs: eckbox, eckboxcalib (calibration), and bw (also for calibration, see the man pages).
March 7, 2004: I've begun rewriting the program in C++, with some improvements. It is now two programs, a calibration program, and the actual spying program. Before it calibrated before each startup, and this one does so a little bit, but not in such a limiting way.
March 6, 2004: Well, I've just realized that assembly language, while marginally faster than C++, sucks. It is most times impossible for me to read, and I'm sure that if anyone else were interested in modifying it, they would find it impossible. That's why I'm rewriting it in C++. This won't be near as hard as it sounds, as the first version of the program, basically a proof of concept, was written in C++. This will be almost as fast as assembly, and MUCH easier to develop in. I'll miss the utter control of Assembly, the listings of commands with the number of CPU cycles included, the lightning fast general purpose registers, and all of that is nice, but I just have more experience with C++, and it's much better suited to Open Source software development.
March 5, 2004: Today I got the docs on the hardware up. Some more stuff in about is up, too.
March 3, 2004: Well it took some hardcore HTML coding, but most of the site is up. The navigation frame to the right is pretty much self-explanatory.
March 2, 2004: Just got the site up, figured out that one of my special characters in my password was preventing ssh login. Now I can do site stuff though. woot.