
David Kahn's book is probably the best known and most thorough history of codes and ciphers, cryptography, and cryptanalysis ever written. It covers the development and use of secret writing from ancient times up to the present day. A must read for anyone who is interested in this fascinating field.
I read that just after it came out ... maybe 25[ish] years ago?
In the same field, you should read David Kahn's The Codebreakers
Code by Petzold (https://www.amazon.com/Code-Language-Computer-Hardware-Softw...) - non-technical (in the sense it isn't something to "work through"), covers a lot of interesting topics. Especially approachable for that age.
Elements of Computing Systems by Nisan & Schoken (https://www.amazon.com/Elements-Computing-Systems-second-Pri...) - more technical (has content to work through). I've read the first edition, not the second. Has a companion site: https://www.nand2tetris.org. It's well-written, and a motivated high schooler could work through it.
The Code Book by Singh (https://www.amazon.com/Code-Book-Science-Secrecy-Cryptograph...)
The Codebreakers by Kahn (https://www.amazon.com/Codebreakers-Comprehensive-History-Co...)
I was always interested in ciphers and such as a kid so those two books got my attention when I found them in high school/college. I'm a bit fuzzy, now, about which one I was more interested in but both were good books. (I still have them, may give them a re-read next month.)
There are a few others I have in mind, but just can't recall the titles at the moment.
If you're interested a good story about a one-man struggle to get British secret agents in WWII to start using reasonably secure codes (especially unbreakable one-time-pads), I recommend "Between Silk and Cyanide" by Leo Marks.
A stronger version of the British double-transposition code that Leo Marks hated is the Soviet VIC cipher[0], which only has about 38 bit key strength, but is surprisingly strong for a pencil-and-paper method. For pencil-and-paper plus a deck of playing cards, there's Danial Shiu's improvements on Bruce Schneier's Solitaire[1].
The Allies were reading a good deal of both Japanese and German encrypted communications. This saved the lives of many Allied solders and, perhaps, tipped the balance of the war.
https://en.wikipedia.org/wiki/Magic_(cryptography) https://en.wikipedia.org/wiki/Ultra
David Kahn's book, the Codebreakers, is a good introduction to cryptography and has a lot of this history in it.
