December 2nd, 2006

climbing

Human Key Exchange

I walked over to EME this evening with the ostensible purpose to work on the Byte Brothers contract. But, I forgot to pack the tester in my backpack. D'oh!

Instead, I updated my todo list and started working on some pending homework assignments. After working on that for a while, my mind wandered off to more interesting subjects. I was reading about the brokenness of current secure hashes when a fellow student Devin walked up and asked what I was up to? We started talking, and later on instant messaging I presented him with a problem: (I realize there are inaccuracies in what I said.)

Collapse )

So, we tested it. We also worked on several other theories, including encoding the information visually.

I think the best result from it was realizing that since the problem is a human one, there is more than the single solution of encoding 256 bits of information into something easily differentiable. There is process solution in breaking up the data. Instead of simply splatting 256 bits, instead you could break it up into four segments of 64 bits and compare each of those in series.

Another neat process solution is representing segments of a key as disharmonious tones, and playing two fingerprints represented this way simultaneously. If our ear heard any disharmony, then we would know the keys mismatched.

Solving this problem would open up a lot of interesting social technologies on the Internet. Anyone want to take a shot?