CS 472

Assignment #2

Due Midnight, Thursday Oct. 1, 2009

 

Use openssl   (it is installed at: /usr/local/bin/openssl) to:

 

1.    Create a public/private key pair of your own, call the files containing your public and private keys: 

 <login>PublicKey.pem  & <login>PrivateKey.pem 

<login> is your login name (e.g., wahabPublicKey.pem).

 

2.    Choose a password  (e.g., “have a nice day”) and store it in a file called: symPasswd.txt,

encrypt  this  file  using  cs472PublicKey,

encode the result to base-64 and store it in a file called  symPasswd.base64

 

3.    Let A1.zip be  the  zip file containing all  relevant files of your solution to  parts I. and II of Assignment #1.

For example, if you like to submit files: f1 f2 f3  you may use the command:  

% zip   A1.zip  f1 f2 f3

 

4.    Sign the message digest of  A1.zip  using  your private key <login>PrivateKey.pem.

encode the result  to base-64 and store it in a file called: A1ZipMdSignature.base64

  

5.    Encrypt A1.zip using the password stored in symPasswd.txt and let A1Zip.base64   be the encrypted base64 encoded file.

 

6.    Create one file called   <login>A1Files.zip that contains:

 

 

1.    <login>PublicKey.pem

2.    symPasswd.base64

3.    A1Zip.base64

4.    A1ZipMdSignature.base64

 

         For example:

 

         % zip  wahabA1Files.zip  wahabPublicKey.pem  symPasswd.base64  A1Zip.base64  A1ZipMdSignature.base64       

 

7. Finally, submit  <login>A1Files.zip  to cs472 under the directory Assignment  #2.

 

 

Important Note:

 

Please use the names listed above since a shell script  is used to grade the assignment & it is case and name sensitive.