A talk about the Turing award lecture "Reflections on Trusting Trust" originally given by Ken Thompson.

Demo C programs are in the codes directory. My slides are available on slideshare in the picture link below.

[![My slides on slideshare](images/first-slide.png)](http://www.slideshare.net/yeokm1/reflections-on-trusting-trust-57427452)

Youtube video of my talk given at NUS Greyhats can be found in the picture link below.

[![](http://img.youtube.com/vi/nQLUtCpt8-4/0.jpg)](https://www.youtube.com/watch?v=nQLUtCpt8-4)


There are some SHA-256 checksum values used in my presentation. These values are dependent on the binaries generated by a specific compiler version which may change over time. The following shows the compiler version running on my macOS Sierra.

```bash
$ gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/c++/4.2.1
Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin16.4.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
```

References
====
1. [Reflections on Trusting Trust paper source](https://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf)
2. [Fully Countering Trust through Diverse Double Compiling paper source](http://www.dwheeler.com/trusting-trust/dissertation/wheeler-trusting-trust-ddc.pdf)
3. [Critique of DDC paper source](https://pjakma.files.wordpress.com/2010/09/critique-ddc.pdf)
4. [SHA-256 reference code](https://github.com/B-Con/crypto-algorithms)
