
# Vigenère cipher solver

Uses index of coincidence and frequency analysis to find Vigenère cipher keys
from ciphertexts

## Build

```bash
make
```

## Example usage

```
./build/solve txt/shakespeare-encrypted.txt | head -c 1024
```

## References

[Vigenère cipher](https://en.wikipedia.org/wiki/Vigen%C3%A8re_cipher)

[Index of Coincidence](https://en.wikipedia.org/wiki/Index_of_coincidence)

[Frequency analysis](https://en.wikipedia.org/wiki/Frequency_analysis)

