Could this make Vigenere more secure?
I'm wondering if the Vegenere cipher could be more secure if the key generation technique below is used...
In this method, the first key is the SHA-512 hash of the given password. When all 64 bytes of that key have been used, another key is generated, this one being the SHA-512 hash of the previous key. This is repeated until the encryption is complete.
This method is an attempt to foil the Kasiski examination.
The equations for encryption/decryption are:
Ci = Pi + Ki (mod 256)
Pi = Ci - Ki (mod 256)
Which are modified from the original equations so that they can be used on computers with any type of file, not just text.
Edit: Guess I should post the code!
public void VigEncryptData(string inFile, string outFile, string password)
SHA512 hash = new SHA512Managed();
byte key = hash.ComputeHash(System.Text.Encoding.UTF8.GetBytes(password));
FileStream fin = new FileStream(inFile, FileMode.Open, FileAccess.Read);
FileStream fout = new FileStream(outFile, FileMode.OpenOrCreate, FileAccess.Write);
int i=0, ii=0;
while(i < fin.Length)
int c = fin.ReadByte();
c = (int)(c + key[ii] % 256);
if(ii == key.Length-1)
key = hash.ComputeHash(key);
ii = 0;