Archive for category: Computer Science

Progress on Exhibit 1

July 10, 2010 | Cryptography | By: Mark VandeWettering

Okay, I think I’ve figured out the problem with my code that back propagates cipher wheels to the beginning of the code, and ran it on Exhibit 1 again. It actually matches 603 characters of input, then stalls, after searching 1.8 billion cipher encoding possibilities. I am now trying to figure out if it is […]

More on Chaocipher…

July 9, 2010 | Cryptography | By: Mark VandeWettering

Well, I didn’t have much time left to work on Chaocipher last night, so I left it running on Exhibit 1. It claimed to recover a key that allowed it to match 601 characters of input, but found no better match. But it also uncovered an error in my code. It doesn’t appear that the […]

Progress on the Chaocipher…

July 8, 2010 | Cryptography | By: Mark VandeWettering

My brain has got a bug now. It’s called Chaocipher. Despite the fact that I’m spending my days off with my family, I find that in my odd moments my brain keeps leaping back to Byrne’s cipher. The other night I implemented the basics of key recovery using a chosen plaintext attack (if you have […]

Visual Inspection of Chaocipher Output Implies Weakness

July 6, 2010 | Cryptography | By: Mark VandeWettering

So, first thing this morning, before I had even had coffee or blinked the sleep from my eyes, I decided to try a chosen plaintext attack against Chaocipher. I created a file consisting entirely of 2000 A’s, and passed it through Chaocipher. Here is my output: PKLSD MAVZC UXHEP KLSDM AVZCU XHEPK LSDMA VZCUX HEPKL […]

An Implementation of Byrnes’ Chaocipher

July 5, 2010 | Cryptography | By: Mark VandeWettering

Okay, insomnia got me, so I went ahead and implemented it in Python. It appears to work reasonably well, at least it successfully deciphers their test message. You can specify the key by specifying the -c and -p options, which are the settings for the cipher and plain wheels. You should pass a permutation of […]

The Chaocipher revealed! from Cipher Mysteries

July 5, 2010 | Cryptography | By: Mark VandeWettering

Stumbling back through articles in Slashdot, I found a pretty nifty article on one of my favorite subjects: historical cryptography. The story goes that back in 1918, a cipher system/machine was invented by John F. Byrne. Rumor says that it was very strong, and yet could be implemented using a mechanism that would fit in […]

Revisiting TinyP2P

June 29, 2010 | Computer Science, Web Development, Web Programming | By: Mark VandeWettering

As I was driving in this morning, I entertained a train of thought that led me back to thinking about peer to peer networks. I recalled that I had seen a posting by Ed Felton some years ago about implementing a peer-to-peer networking scheme in a very few lines of Python. A few minutes of […]

Multitasking With iOS 4 is Horrible: Apple Blew It – PCWorld

June 23, 2010 | Computer Science | By: Mark VandeWettering

Jared Newman of PC World thinks that Apple blew it with respect to the multitasking in the iPhone: Multitasking With iOS 4 is Horrible: Apple Blew It – PCWorld Here’s the funny thing though: all these industry pundits keep ranting about how features of the iPhone or iPad are really terrible, and yet when polled, […]

Simple, reliable 2.5D photography

April 25, 2010 | Computer Graphics | By: Mark VandeWettering

I’ve been interested in techniques where amateurs can digitize images and models for quite a bit. This website percolated to the top during today’s relaxing web browsing: it’s pretty spiffy, and is interesting on a couple of fronts, not the least of which is that the author designed the gearbox for tracking a laser using […]

Q: Are there any good, open user interface options?

April 21, 2010 | Computer Science, Programming Languages | By: Mark VandeWettering

Yesterday I was in our Atrium, and Craig had his iPad with him. I got into a discussion with him and Loren about why I thought the device was very cool. (I also told them why I had been actively discouraged from becoming an iPhone developer earlier, but that’s a story for a different time.) […]

A small experiment with a C compiler

March 31, 2010 | Checkers, Computer Science | By: Mark VandeWettering

I’m still somewhat baffled by the performance of my checkers program. I keep pondering that perhaps it would be a good idea to take all the lessons I’ve learned, burn it down, and try again with Milhouse2. After all, in the words of Tom Duff (who may not have said this, but should have) “any […]

Classic Board Games for Computer Implementation?

March 25, 2010 | Checkers, Computer Science, Games and Diversions | By: Mark VandeWettering

So, my experiments with my checkers program Milhouse have been fun and interesting. There is still work to be done: I don’t think a machine that can’t properly play first position can be reasonably said to be a good checkers player (even though I still make errors while practicing it myself against Cake), but I’ve […]

A Shorter Quine in Python

March 20, 2010 | Computer Science | By: Mark VandeWettering

Quines are programs that when run produce themselves as output. Previously I had written a fairly longish one in Python. I was reading Russ Cox’s latest blog article (more skimming than reading actually, it’s neatly subtle) but it said something obvious that I hadn’t clicked on before: the repr function takes a value, and converts […]

Rob Pike on Quantum Computing

February 19, 2010 | Computer Science | By: Mark VandeWettering

Rob Pike is a Google researcher, and has written a bunch of stuff in the past that I’ve enjoyed reading.  He’s also a telescope maker, which scores big points with me.   I recently discovered that he also write an introduction to quantum computing that I had not previously read.   This is an area of computer […]

Gruenberger’s prime path

February 17, 2010 | Computer Science, Math | By: Mark VandeWettering

Here’s an interesting little mathematical morsel from the pages of the bit-player blog having to do with two topics I’ve found interesting in the past: prime numbers and random walks. Let’s consider the sequence of prime numbers > 3. All such primes are congruent to -1 or to 1 modulo 6. So, let’s use that […]