Description
This course provides an advanced course that focuses on key principles of a constructive approach to secure systems. A brief review of operating systems and computer architecture is provided. Major topics include threat characterization and subversion; confinement; fundamental abstractions, principles, and mechanisms, such as reduced complexity, hierarchical relationships, least privilege, hardware protection, resource management and virtualization, software security, secure system composition, mutual suspicion, synchronization, covert and side-channel analysis, secure metadata, secure operational states, usability, and life cycle assurance. Current developments will include advances in security hardware, components, and systems. This course has heavy reliance on software development and implementation.