Updated Vignere encryption and decryption algorithm