In a Vigenere cipher a plaintext message is encrypted by adding letters from a secret key (modulo 26). For example, A + X is X, B + X is Y, C + X is Z, D + X is A, etc.
Decryption is achieved by subtracting the same sequence of letters from the ciphertext. If the message is longer than the key then the letters of the key are simply repeated.
For example, given the key KEY and the message HELLO WORLD we would generate ciphertext as follows: