My Computer Science Heroes

I used to be an electrical engineer, and my heroes were … Maxwell, Faraday, and Ohm, and in electronics it was Kilby and Shockley…

My Computer Science Heroes

I used to be an electrical engineer, and my heroes were … Maxwell, Faraday, and Ohm, and in electronics it was Kilby and Shockley. Virtually everyone who ever studied the subjects knew of their work, and the built the pillars on which the subjects stood. But the minute I saw a transistor — and its crazy npn structure — I knew my future was in the computer industry.

But, in cyber security, you don’t see the general consensus of the great people who created the area and who built significant knowledge. So I’ve decided to document my top heroes (in order of how much they influenced me):

  1. Bruce Schneier. He is the person who got me into looking at the world in a different way. But the genius of Bruce is that he could not only articulate complex ideas in security, but actually contribute to usable methods and code … he practiced what he taught. I teach what I teach because of him, and he inspired me into seeing the potential of building a more trusted world with cryptography. He is also someone who can appear on broadcast media, and showcase fully the true intellect that this field has been built on. Over his career he created many novel encryption methods including Skien (a contender for the SHA-3 standard) [here], Twofish (a contender for the AES) [here] and Blowfish [here].

2. Adi Shamir. A person who’s work builds the foundation of our industry. He tested, he created, he probed, and he has always been there. He’s the “S” in RSA, and he built the foundations around Zero Knowledge Proof [here]. He innovated within differential security, and if there was a new method to be cracked, he was ready to crack it. He also created secret shares [here], and which we have used in many occasions in our research.

3. Douglas Engelbart. At the Xerox PARC research lab, Steve Jobs saw the future, and where Xerox demo’ed Ethernet, the GUI and the mouse. These were all created by the mind of Douglas. For Xerox it was a hard-sell to actually convince the company that they should push technologies which would actually harm their core product — paper copying. It is perhaps strange too that one of the products that Apple took to the market was an innovative laser printer and which accepted a new printer language called PostScript, and which further eroded Xerox’s market.

4. Whitfield Diffie. His genius, along with Martin Hellman, was to imagine a method where two parties could openly talk, and where no-one could determine the shared secret that they ended-up with: the Diffie-Hellman method [here]. While their method took a bit of a dip when it was discovered that you could be a man-in-the-middle, and where it was possible to pre-compute the exchange values (Logjam), it is now back at the core of the Internet with: Elliptic Curve Diffie Hellman (ECDH). ECDH [here] is at the core of virtually every secure system, where it can be seen in HTTPs, Tor, Wi-fi, smart cards, and so on.

5. Ralph Merkle. As an undergraduate student, Ralph invented public key encryption. As part of his PhD he then worked alongside the greats of Steve Pohlig, and Whitfield Diffie, and had a supervisor of Martin Hellman. He has made so many contributions to the field, including Merkle trees [here], and which are a core part of distributed file sharing systems and in Bitcoin.

Grace Hopper

6. Grace Hopper. Grace overcame one of the major problems in software development: how to write programs which could be easily written by humans, and easily converted into a form which a computer could understand. In the early-1950s work had begun on assemblers which would simply use simple text representations of the binary operations that the computer understood (such as ADD A, B to add two numbers). The assembler would convert them into a binary form. This aided the programmer as they did not have to continually look-up the binary equivalent of the command that they required. It also made programs easier to read.

7. Steve Jobs. Few people can rival the legacy that he has left in our industry. Anyone who can create a computer — the MacBook Pro — that artists and pen testers love, is someone who redefined what a computer is. The smart phone is the end game for the computer, and it was his vision to integrate a whole lot of things into this one device.

8. Bill Gates. For me, Microsoft has always been there, from DOS 1.0 to Azure, the company has adapted to the latest trends (sometimes taking a few versions to get there). At their core, Microsoft has kept true to its software engineering roots … they are mainly a bunch of software engineers who create products that people find useful. That’s the magic!

9. Ron Rivest. As with Adi Shamir he has always been there, and many of the methods that are being invested now as part of a blockchain work were born in his mind. Along with RSA [here], he contributed to the ideas around ring signatures, hashing (MD4 and MD5), encryption (RC4, and RC5 — Ron’s Cipher). If you look at modern computer security, it is Ron’s core foundation that you are looking at. After more than 40 years, the RSA method has held up weak, but perhaps struggling to keep up the new kid in town: Elliptic Curve Cryptography (ECC).

10. Scott McNealy. One of my first “proper” computers I ever used was a Sun Series 4, and I adored its Unix operating system and beautifully tactile keyboard. I learned “vi” on it, as it was the natural editor to work on any terminal I used. And so Scott created the dearly missed Sun Microsystems, and, for a while, it shone as bright as the Sun, and gave us one of the truly groundbreaking systems: the Java Virtual Machine. To him, developers were creating lock-in with their architectures, and Scott dreamed of an open environment which would run code on any system, and so led the way to the Android operating system. While he was not a coder, he did steer Sun Microsystems to become a leader for its state-of-the-art technology.

11. James Ellis, Clifford Cocks and Malcolm Williamson. I define three people here, as it’s difficult to unbind their work. Each of them worked at GCHQ, and where Clifford Cocks discovered public key encryption, independently from Ron Rivest, in 1973, and Malcolm Williamson discovered the key exchange method used by the Diffie-Hellman method several years before Whitfield Diffie and Martin Hellman published their classic paper [here].

12. Len Bosack and Sandy Lerner. Len and Sandy created the first router at Stanford University, and went to the university with the idea. Unfortunately the university could not see the potential of their creation, so they created a company which scaled-up the Internet: Cisco Systems. Many people perhaps forget the contribution that the router has made to the creation of the Internet.

13. Phil Zimmerman. Phil created PGP (Pretty Good Privacy) and which properly secures electronic mail. In fact, he nearly went to prison for the creation of his software. Over the decade, his principals have been a guiding light in the protection of the rights to privacy, and he has continued to champion the usage of strong encryption.

14. John Postel. So while there is much debate around people like Tim Berners-Lee and Vint Cert about the creation of the Web, we should also include “The God of the Internet”: Jon Postel. Jon was born on 6 August 1943 and died in October 1998. Even up to his death, he was the editor of the Request for Comment (RFC) documents and administered the Internet Assigned Numbers Authority (IANA). He has since, in 2012, been inducted into the Internet Hall of Fame by the Internet Society, and the foundation he has left is as strong as any foundation ever created, in fact it’s the foundation for our Cyber Age. RFC (Request For Comment) documents are a way for standards such as for HTTP and email to become accepted quickly, and where organisations such as DARPA posted their thoughts for the standard, and quickly publish them based on the received comments. A few classics were: RFC 791 which defines the format of IP packets (IPv4); RFC 793 which defines TCP (Transport Control Protocol), which define the foundation of the virtually all of the traffic that exists on the Internet; and HTTP (HyperText Transmission Protocol) 1.1 which was initially created as RFC 1945.

I have probably missed out your favouriates, but these are the ones that inspired me.

And those I missed …

Of the people who have responded on LinkedIn with their favouriates, here are a few others:

Seymour Cray (Cray), Ken Olsen (DEC), Dennis Ritchie and Brian Kernighan (C programming), Bill Joy (Sun Microsystems), Niklaus Wirth (Pascal), Clive Sinclair (Spectrum), Chris Curry (ARM), Alan Turing, Alan Kay, Richard Stallman (Free software), Linus Torvalds (Linux), Ada Lovelace, Ed Catmull, Alvy ray smith, Lance Williams, Tom Duff, and Christine Barton.