Code Breaking: A History and Explanation by Rudolph Kippenhahn