CSCI-B 547 Systems and Protocol Security and Information Assurance
3 credits
- Prerequisite(s): CSCI-B 504 Introduction to Cryptography
- Delivery: On-Campus
- Equivalent(s): CSCI 62600 Advanced Information Assurance
Description
This course covers the design and analysis of secure systems, including identifying security goals and risks, threat modeling and defense, integrating different technologies to achieve security goals, developing security protocols and policies, implementing security protocols, and secure coding. Real-world scenarios with many security requirements are studied.
Topics
Foundational cryptographic concepts
- Blinded signature
- Commitment scheme and everlasting privacy
- Homomorphic encryption
- Merkle hash tree
- Oblivious transfer
- Quantum cryptography and post-quantum and quantum-resistant algorithms
- Zero-knowledge proof
Blockchain and digital provenance
- Blockchain technology
- Secure digital provenance
Authentication and access control
- Anonymity and identity
- Attribute-based access control
- Cryptographic access control
- Distributed system authentication
Security protocols and models
- Protocol design and attack
- Formal models of information flow and protection
- Secure multiple-party computation
- Secure group communication
Security analysis
- Intrusion and anomaly detection models
- Penetration testing
- Formal verification of systems
Defensive measures
- Active defenses
- Moving target defense
- Network firewalls
Privacy and data security
- Database security models and mechanisms
- Differential privacy
- Security and privacy in deep learning models
Forensics and malicious activity
- Computer viruses and malware
- Investigation and forensics
E-commerce and digital transactions
- E-commerce support
Advanced and specialized topics
- Wireless/sensor network security
Learning Outcomes
- Analyze and compare different types of advanced and emerging cryptographic algorithms/primitives. CS 5
- Evaluate the strengths and weaknesses of cryptographic algorithms and primitives and assess their suitability for specific applications. CS 5
- Design and implement secure cryptographic systems using programming skills, ensuring confidentiality, integrity, authenticity, robustness of data and communication. CS 2
- Assess the security of cryptographic systems using analytical and experimental methods. CS 5
- Propose and analyze new security and/or privacy-preserving techniques via critical thinking and creative designs. CS 5
- Implement and evaluate experimentally the proposed techniques using analytic and experimental methods and various tools, testbeds, and platforms. CS 5
- Evaluate the ethical and legal implications of using cryptography, especially regarding privacy, security, and society. CS 6
Policies and Procedures
Please be aware of the following linked policies and procedures. Note that in individual courses instructors will have stipulations specific to their course.