You are on page 1of 2

Project goals

development of a secure file system using symmetric plus asymmetric cryptographic algorithms
learning and using advanced assembly language techniques
learning and using of symmetric and asymmetric security mechanisms
using Virual box as a development environment

Development environment
1-install the free virtualbox www.virtualbox.org
2-create new virtual machine with at least 0.5 GB RAM
3a-create virtual hard drive of 1.2 GB size at least ( for windows )
3b-create 2 virtual hard drives of 100 MB size each ( for encryption testing )
4-download free win98 boot disk from http://www.allbootdisks.com/download/iso.html
5-download the winXP iso image from http://tinyurl.com/microproject2010
6-boot the machine using the winXP iso and install windows XP
8-install your assembly development tools (eg emu8086) Via USB memory , or folder sharing

Project Deliverables
each group can have 7 to 10 students maximum
student names must be sent to asnady@yahoo.com before the end of week1
at the end of week1 if no names are sent, students will be assigned randomly to groups
you will be assigned a group number which will be your reference for assignment
total project points 25
For each module you must provide the following items
-commented source code explaining main functional code and tricky parts
-screen capture from each team member PC
example : a 4 students group should deliver 4 screen captures from 4 different PCs
each member must take a full screen capture
desktop background should be visible also the system clock in the tray
-all the files must be compressed in one RAR file as a single attachment
-the attachment must be sent before each week dead line to asnady@yahoo.com
-the email subject should be like these examples
[3rd_grp1_wk1] that means ---->3rd computer, group 1 , week 1
[4th_grp7_wk2] that means --->4th communication, group 7 , week 2
[4th_grp5_wk4] that means --->4th communication, group 5 , week 4

project modules (total 25 points)

milestone A: user interface (3 points)


module 1 (1 point): dynamic user interface menu
list menu items stored in certain memory location
wait for the user choice and pass it back to the caller
module 2 (1 point): enumerate drive volumes
module 3 (1 point): main menu
integrate the modules 1,2 to make a menu displaying drive volumes

milestone B: symmetric key encryption (13 points)


module 4 (2 points ): generate random number (session key)
use a standard method for random number generation
module 5 (4 points ): encrypt drive volume using symmetric key
use a standard symmetric encryption algorithm
module 6 (4 points ): decrypt drive volume using symmetric key
module 7 (3 points ):secure volumes
integrate module 3,4,5,6,7 to do the following
display drive volumes to choose one
display list of functions (encrypt – decrypt)
encrypt :- call module 4 then 5
decrypt :- ask user for key then call 6

milestone C: Asymmetric key encryption (9 points)


module 8 (3 points ): generate RSA key pair
use a standard method for RSA key generation
module 9 (2 points ): RSA encrypt and store session key
the session key should be stored along with the encrypted volume
the session key should be encrypted using RSA public key
module 10 (2 points ): RSA decrypt session key
for decrypting a volume , the session key must be decrypted first
the session key is stored along with the volume
module 11 (2 points):RSA
modify module 7 such as
encrypt :- call module 4 then 5 then 8 then 9
decrypt :- ask user for private key then call 10 then 6

Delivery deadlines
after posting the assignment you have 4 weeks to deliver the complete project
week 1 :- modules 1,2,3,4
week 2 :- modules 5,6
week 3 :- modules 7,8
week 4 :- modules 9, 10, 11

You might also like