Sunday, November 25, 2007

Explaining Group Theory

In idiocracies of yore, a simple substitution code might seem unbreakable, so we start with those as "cryptography," simply mapping A to Q, J to Z or whatever (don't forget the space character).

That kind of mapping is called a "permutation" in the literature, and you can "multiply" permutations (string them together, as in A to Q to M) providing us with a golden opportunity to discuss operator overloading in some computer language that permits same (Python's __mul__ for example).

A subclass of permutation is a polytope rotating (however-many dimensional), where you make sure the permitted ops keep the polytope self-identical in some clearly defined way. It's easy to start with the axes of a tetrahedron, octahedron, cube and so on, tracing out their corresponding spherical great circle maps. These become LCD triangles in some nomenclatures, including our own buckaneer (as per our Python modules etc.).

Internal to group theory is this concept of "orbit" wherein, if you go long enough, you come back to where you started, like a classic electric train around a Christmas Tree (Norman Rockwell type department store imagery, likewise the genesis of Santa Claus), or per the movie Polar Express.

In RSA, we send your plaintext a little way around the track, per some public N as the modulus. Then N's owner, our recipient, uses a secret number d to bring the train back around to the station, where the message pops out, very readable. RSA only works because mathematicians have figured no efficient means to deduce d from N, so N can afford to be public (hence the term "public key cryptography").

Follow-up:
RSA a h.s. topic? (April 2008)