Software Carpentry
Security


Evil Exists


You Can Skip This Lecture If...


What Are We Trying to Do?


Technology Alone Is Not A Solution


More Ways Security Can Fail


How to Think About Security


Risk Assessment


Thinking Like A Villain


Example: Don't Trust Your Input


Attacking URLs


Leaking Information


SQL Injection


Attacking Defaults and Denial of Service


Phishing


Attacking Data Entry


Timed Attacks


Securing HTTP


Cryptography 101


Public-Key Cryptography


Sending and Receiving


Digital Signatures


Securing Login


Red Queen Race


It Isn't Just The Web


Summary