CS 426, Spring, 2008, HW 3. Due February 11 , 2007, 5:20 PM.
In this homework, you will experiment with a covert storage channel. Create a covert storage channel in which the sender creates a flag file to indicate that the next bit of a message is ready. The receiver reads the bit and then deletes the flag file. After the flag file is gone the sender can send another bit of a message. The value (0 or 1) of the bit sent is indicated by the presence or absence of a bit file, respectively, created and deleted by the sender. The bit file is different from the flag file. Neither the flag file nor the bit file can have anything written in them; their presence or absence is all that matters. Measure the throughput of your sender/receiver system when sending the contents of a file. (The message transmitted probably should be several kilobytes long.) Then modify your programs to send and receive whole bytes at once indicated by the presence of a subset of eight different files in place of the bit file. Choose one particular byte to indicate "EOM." Measure the throughput of this system. Remember that no information is stored in any of these files. Information is passed only through the existence or absence of files. Turn in the following documents all together using "turnin". 1. A listing of both sets of your send and receive programs, including a README file describing how to compile and run the program. 2. Make a file named answers.pdf or answers.txt (not answers.doc, as I cannot always open it in Unix mode) to answer this - A 3-line description of how you measured the throughput of the two systems. 3. In answers.pdf or answers.txt: The measurements of throughput for each system. 4. In answers.pdf or answers.txt : a 5-6 line answer for the following. Suppose you were designing a file system and an operating system which would resist covert storage channel attacks like the one you just created. Tell what changes you would make in the file system and/or operating system to sharply reduce the throughput of a covert storage channel. How would your modification(s) affect legitimate file activity?