Applied  Cryptography

Description 

The last 30+ years have witnessed a revolution in cryptography, bringing real-life security problems to the attention of a vast research community. This revolution created modern cryptography, where researchers started rigorously treating and solving several problems that only a few years before were unknown, seemed impossible to solve, or only had heuristic solutions. Modern Cryptography is a well-established mathematical discipline with solid connections to several older disciplines, such as Complexity Theory, Information Theory, Combinatorics, Number Theory, and Coding Theory, and several applications to real-life problems. This Applied Cryptography class offers a comprehensive introduction to modern cryptography, specifically its central issues, formalisms, solutions, and open questions, focusing heavily on application aspects, including case studies for real-life uses of Modern Cryptography solutions.   Prerequisites include some expertise in at least  one programming language, like C, C++, Python, Java, Matlab, etc. Some mathematical maturity, in terms of understanding and working with mathematical definitions, concepts, and proofs, and elementary notions of logic, set theory, number theory, probability, and statistics; knowledge of basic algorithm analysis and complexity theory, as obtained from a graduate algorithms class. 


Application Security

Introduction – Overview of Attacks Against Applications, AttackingSUID Programs, Environment Attacks, Input Argument Attacks, File Access Attacks, Smashing the Stack for Fun and Profit, Format String Attacks, Assembly Primer, ELF File Format, PLT and GOT, Data and BSS Overflow, Array Overflow, Non-terminated String Overflow, Heap Overflow, Tools and Defenses. 


Network Security

Introduction – Overview of Network Attacks, Network Protection -IDS, Types of IDS’s, Issues in Intrusion Detection, Challenges in Intrusion Detection, Taint Analysis, Network Based IDS, Problems in NIDS, Impact Analysis, TCP Overview – Connection Setup/Teardown, Packet Sniffing, Detecting Sniffers on your network, IP Spoofing, ARP Poisoning, UDP Hijacking, Fragmentation Attack- Ping of Death, Evasion & Denial of Service, UDP Hijacking, TCP Spoofing, TCP Hijacking – Mitnick attack, Joncheray attack, SYN Flood Attack, Denial of Service Attack, Port Scanning Techniques, ICMP, ICMP Attacks – ICMP Echo Attacks, Smurf Attacks, ICMP Redirect Attacks, WLAN, 802.11, Wireless Security Overview, Attacks Against Wireless Networks – Eavesdropping, WEP Attacks, Injection Attacks -, WEP Encryption, WEP Attacks, FMS Attack, Denial of Service, Man-in-the-Middle Attack, Protection Mechanisms and Tools, War Driving, Vulnerabilities in Internet Applications(SMTP, FTP, DNS, Remot Access), SPAM, DNS Zones, Zone Transfer, BIND, DNS Spoofing, DNS Cache Poisoning,IPSec – Introduction, Tunnel & Transfer Modes, IPSec Authentication Header, Encapsulating Security Header and Payload, IPSec Key Exchange, VPNs, FTP Protocol,Exploiting FTP, FTP Bounce. 

Learning Objectives 

By the end of this course, students will be able to:

Target Audience 

 Course Content