/******************************************************************************/
			Mandar Deodhar.
			Roll no : 03329014.
			Network Security
			Assignment 2

/******************************************************************************/

Question 1: Diffie Hellman cracking :

Program name : DF_Crack.java

The program uses brute-force technique, trying all numbers from 1 to P.
The final answer obtained is : 22392.

================================================================================

Question 2: Signature and Verification.

Program name : DSASignGen.java <testfile>

In the first few lines of program, algorithm to sign etc can be specified.
KeySize variable stores size of key in bits.

The results of time taken are stored in files :
RESULTS-Sign-n-Verify
RESULTS-Digest

Private, public keys, sample test file, signed using different algorithm is given. 

================================================================================

Question 3:
	1. CBC mode XORs Cyphertext of i th block with plaintext of i+1 th block.
	
	Hence if the first bit of cipher-text is error, the error will prpogate.
	Even for the first block, decrypting C1 will give wrong P1(not just first bit, but whole)
	Also remaining Ps will be wrong.
	
	2. If P1 contains error, Obtained C1 will be wrong.
	But the remaining blocks can be successfully decrypted. Since the obtained value of C1 
	will be used after decryption for XORing, the remaining blocks can be obtained successfully.
	
	3. CFB mode uses 8 bits from previous stage o/p ciphertext. The total size is 64 hence, 
	one 8 bit block gets used 8 times in next 8 stages.
	Hence if any transmission error in i th stage will currupt that block as well as
	next eight blocks i.e. total 9 blocks.

================================================================================


Question 4:
	To be submitted later, separately.
	
================================================================================
