Reference no: EM133081572
Principles of Secure Operating Systems
Understanding and modifying an OS- MinixDisk Encryption
Learning outcome 1: Create system-level software that modifies and extends existing operating systems. Conduct experiments designed to evaluate the performance, security and reliability of their modifications and additions.
Learning outcome 2: Demonstrate a thorough understanding of multi-threaded/process systems through the design and implementation of communicating, multi-threaded systems software.
Task
A Disk Encryption prevents unauthorized access to files to those who physically access a computer/drive. This is especially important to protect lost/stolen devices' data/information against unauthorised accesses.
For this exercise, you will be designing software that protects data while sitting on systems' storage, and then adding and implementing this on Minix OS.
Follow the steps below in order, as you might find it harder if you don't. Complete each step before moving on to the next.
• List the essential features that a MinixDisk Encryption should have. Look at similar products for this (e.g., macOS FileVault).
• Design your software/patch to be added to Minix. This should involve communications with the existing parts of Minix OS.
• Implement and test your code using an incremental method.
• Embed your code in Minix and perform an integration test.
Your report covers
1. A description of your Disk Encryption.
2. A list of functional and non-functional requirements and security features of Disk Encryption.
3. Design of your software/patch that includes communications with Minix.
4. Implementation of your Disk Encryption including annotated C code.
5. Testing plan for validating your software.
6. Description of integrating/adding the implemented component to Minix.
7. Integration testing plan for integrating your component into the system.
8. Reporting the possible limitations, failures, and/or difficulties you experience in your work.
9. A conclusion section that includes recommendations for extending the conducted work.
10. Demonstrate a thorough understanding of multi-threaded/process systems through the design and implementation of your system. This is not a separate section in your report. Instead, it has to be addressed and present in the other sections, e.g., 2, 3, 4, and 6.
Attachment:- operating systems.rar