I've played with cryptography and codes for at least 50 years. Because I've had fun doing it. Maybe you would find it fun too?
I've published many things to the web, for many audiences, with various degrees of skill. (I wish I could claim that the very apt ambiguity in that was deliberate. It wasn't. But either interpretation is valid!)
Now, April 2014, I'm making a "fresh attempt". I'm trying to build an "organized" tour of all the bits which I think are fun.
This page is part of my Flat-Earth-Academy.com
As such, it contains a mix of things you ought to know... I'll try to be selective, keep that to a core of essential things... and material which I hope you will interesting and fun. (I confess: in these cryptography and codes pages, there is more of the latter than of the former. However, if you take the trouble to master the material here, it will "exercise your mind", which is also important, in spite of not being a primary objective of the Flat Earth Academy.)
I hope you will begin with the page I've created to introduce my Flat-Earth-Academy.com's pages on codes and cryptography. For a start, there are several challenges there for you... some simple, some not so simple. But not so simple that anyone's told me they've beaten them... yet. And it explains the difference between "codes" and "cryptography"... one of those things you probably "ought" to know!
You might be wondering why these pages about cryptography are on the "Mathematics" branch of the Flat Earth Academy curriculum tree. They easily could have gone on a Computing branch, a History branch, etc.
Eventually, these page will probably concentrate on ways of encrypting and decrypting ciphers. (That's the bit I find fun!) Those activities are primarily mathematical... although the more you know about languages, for a start what language was used for the plaintext of a ciphertext you are trying to hack, the faster will decrypt something you want to read.
Some people spend their energies trying to read things that were not meant for them. Others spend their energy on trying invent a better mousetrap. I mean code or cipher. (Remember: What do we mean by "better" is a good question all by itself.)
Which will you get the most fun from? Of course, whichever team you join, you'll need to study the opposition. Code or cipher breakers need to think about how their opponents might have done something. Code or cipher makers need to anticipate how the breakers might overcome the makers' best efforts.
"Know your enemy"... as the wise man said over 2,000 years ago.
Clicking on any of the following will open a new window or tab. (You may have to go there "by hand"... but you can set your browser to do that automatically, which works well.) When you've read the resulting page, you only need to close it's window, and you will find yourself back here. It was "underneath" what you were reading.
Random Numbers. Non-random thoughts. How they help cryptographers. What is "random"? Living with.. indeed we need their flaws... the pseudo-random number generators which are easy to come by.
A way to use random numbers for encrypting, and on the same page gone into the elegance of XOR, which is useful for cryptography, and modular arithmetic which isn't as good, but neither is it quite as strange.
Many ciphers incorporate the use of a key. Here are some general thoughts on keys.
Design Considerations: I discuss the broad requirements and opportunities which establish the design challenge for encryption (or coding) systems. I fear the page is a bit dull? But I think it has important material. And if you read it in the right frame of mind, I hope you will enjoy thoughts of how "big" the whole question of keeping secrets is. Some feedback on the merits of this page particularly welcome.
Letter frequency tables: a tool of cryptanalysts.
A simple but effective mechanical encryption machine from over a century ago, something you could make for yourself. Invented by a famous person, but who was famous in other areas.
Licensing users: Software is often protected by using a "registration key" unique to a given authorized use. This page discusses the hows and whys. Probably most useful if you are enjoy computer programming.
These links take you only to things I've published, things at least vaguely connected with cryptography. (The list isn't just a "link farm". Or what Google would throw up.)
They are listed separately from the links in the previous section only because the following pages weren't written to "go together", either with one another, or with the material above. There may be the occasional bit of overlap. Not much, as I recall. They are for a variety of rather different audiences, as I hope the descriptions make clear. With the recent "fuss" about the Pi computer, I hope the first will be of use to anyone trying to get kids interested in programming again.
Have you heard of Flattr? Great new idea to make it easy for you to send small thank you$ to people who provide Good Stuff on the web. If you want to send $$erious thank yous, there are better ways, but for a small "tip" here and there, Flattr ticks a lot of boxes which no one else has found a way to do yet. Please at least check out my introduction to Flattr, if you haven't heard of it? "No obligation", as they say!Top page, Flat Earth Academy page about cryptography.
Search across all my sites with the Google search button at the top of the page the link will take you to.
Search just this site without using forms,
Or... again to search just this site, use...
The search engine merely looks for the words you type, so....
*! Spell them properly !*
Don't bother with "How do I get rich?" That will merely return pages with "how", "do", "I", "get" and "rich".
I have other sites. My Google custom search button will include things from them....
One of my SheepdogGuides pages.
My site at Arunet.
--Click here to visit editor's freeware, shareware page.--
This page's editor, Tom Boyd, will be pleased if you get in touch by email.
Page tested for compliance with INDUSTRY (not MS-only) standards, using the free, publicly accessible validator at validator.w3.org. Mostly passes. There were two "unknown attributes" in Google+ button code, two further "wrong" things in the Google Translate code, and similar in Flattr code. Sigh.