This interview with Cryptography in .NET Succinctly author Stephen Haunts is part of a series of Q&A blog posts with our Succinctly series authors.
Why were you interested in working with Syncfusion to create e-books for the Succinctly series?
I first heard about the Succinctly series from listening to the .NET Rocks podcast where the Succinctly series was mentioned. I downloaded a few titles that were relevant to a project I was working on and found them very informative. I loved the fact that the books were short and straight to the point. I love reading, but reading a 500-600 page textbook can be too much when I lead a very busy professional and home life.
I am also a Pluralsight author, and I was talking with a fellow author there, Peter Shaw, who writes for Syncfusion. He hooked me up with an editor, and not long after I started work on my first book. I am currently working on my second book for Syncfusion.
I also love the fact that these books are free. As a developer, having access to high quality and technical reviewed material is very valuable. As an author, the fact these books are free means I have a whole new audience opened up for me.
I decided to write about cryptography in .NET as it is a subject I am very familiar with after having to secure information in several financial institutions. I have also blogged about .NET-based cryptography for several years, so it made sense to turn all this experience into a book.
Are these e-books your only technical manuals? Do you have additional titles you would like to share with our developer community?
Cryptography in .NET Succinctly is the first book I have written, so I found the process really fun. I am working on my second book, which is called Message Queuing with RabbitMQ Succinctly. At the time of writing, I am about half way through my first draft. I also maintain a blog about software development, leadership, and architecture at www.stephenhaunts.com, and I have produced two Pluralsight courses, Developer to Manager and Agile Fundamentals.
Each title in the Succinctly series features a graphic of an outdated technology. What is your favorite outdated technology?
When not being involved in software development and leadership, I am very much into electronic music. I run my own music label and sound design company, Haunted House Records, as a hobby, so I am very much a music tech geek. One piece of outdated technology that I own is a vintage synthesizer from 1982 called the Yamaha DX7 mk 1.
Yamaha DX7mk1
By today’s standards this is a very primitive synth, but at the time this was a revolutionary piece of kit. Back then, synthesizers were mostly analog and this was one of the first digital synthesizers on the market. It uses a type of synthesis called frequency modulation and has a very distinctive sound. It was very good for electronic piano sounds as well as percussive and bell-like tones. Many popular music songs from the 1980s featured this sound, and it is quite recognizable. This machine is very heavy—it weighs nearly 20kg—and I bought it when I was 15, so I have owned it for 23 years. Now I feel old! As I have bought and sold musical equipment over the years, I have always held onto the DX7. I don’t tend to use it much these days, but it holds sentimental value for me as it was my first synth, and it took me ages to save up for it, working lots of small part-time jobs when I was still at school.
What have you learned since writing these e-books?
Cryptography can be a very intimidating thing for people who are not familiar with it. For anyone who gets into the mathematics of it, it sure can be complicated and intimidating. The aim of this book was to distil this information down into something that is very easy to understand and is very practical for .NET developers.
People reading this book should finish with a very good understanding about how to secure data in their applications, and the book gives them lots of usable code to make use of. For me, the biggest thing I have learned is how to explain something that is thought of as very complicated and write it in a way that people will pick it up quickly. For me, the subject is pretty straightforward, but that is because I have been using it for so long in my work. Taking this experience and writing it for people who do not have the same experience was a big learning curve and one that I am proud to have done.
I have taken this experience and fed it into the writing of my second book for Syncfusion, and I hope that it will also be a very beneficial book for readers.
Do you have another reference that you would recommend to people interested in cryptography in .NET?
There are so many books out there on cryptography that it can be hard to know where to start. Also, some of these books, if you pick the wrong one to start with, can put you off the subject as they get very technical very quickly. My personal recommendations, apart from my book of course, are the following books, which are ordered by increasing complexity:
General Introduction and Overview
The Code Book: The Secret History of Codes and Code-Breaking by Simon Singh
Cryptography: A Very Short Introduction by Fred Piper and Sean Murphy
Books About Practical Uses and Implementation
Security Driven .NET by Stan Drapkin (available from http://www.securitydriven.net)
Everyday Cryptography: Fundamental Principles and Applications by Keith Martin
Lower Level Books About Cryptography
Applied Cryptography: Protocols, Algorithms, and Source Code in C by Bruce Schneier
Practical Cryptography by Niels Ferguson and Bruce Schneier