Description: The one time pad can be cryptographically secure, but not when you know the key. Can you solve this? We’ve given you the encrypted flag, key, and a table to help UFJKXQZQUNB with the key of SOLVECRYPTO. Can you use this table to solve it?.
Difficulty: Medium
Author: Alex Fulton/Danny
Summary
This challenge introduces the concept of the Vigenère cipher, a classic polyalphabetic substitution cipher.
It can be solved either manually using the provided table.txt (tabula recta) or automatically using an online tool like Vignere cipher
Analysis
We are given a file table.txt:
$ file table.txttable.txt: ASCII textIts contents are:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z +----------------------------------------------------A | A B C D E F G H I J K L M N O P Q R S T U V W X Y ZB | B C D E F G H I J K L M N O P Q R S T U V W X Y Z AC | C D E F G H I J K L M N O P Q R S T U V W X Y Z A BD | D E F G H I J K L M N O P Q R S T U V W X Y Z A B CE | E F G H I J K L M N O P Q R S T U V W X Y Z A B C DF | F G H I J K L M N O P Q R S T U V W X Y Z A B C D EG | G H I J K L M N O P Q R S T U V W X Y Z A B C D E FH | H I J K L M N O P Q R S T U V W X Y Z A B C D E F GI | I J K L M N O P Q R S T U V W X Y Z A B C D E F G HJ | J K L M N O P Q R S T U V W X Y Z A B C D E F G H IK | K L M N O P Q R S T U V W X Y Z A B C D E F G H I JL | L M N O P Q R S T U V W X Y Z A B C D E F G H I J KM | M N O P Q R S T U V W X Y Z A B C D E F G H I J K LN | N O P Q R S T U V W X Y Z A B C D E F G H I J K L MO | O P Q R S T U V W X Y Z A B C D E F G H I J K L M NP | P Q R S T U V W X Y Z A B C D E F G H I J K L M N OQ | Q R S T U V W X Y Z A B C D E F G H I J K L M N O PR | R S T U V W X Y Z A B C D E F G H I J K L M N O P QS | S T U V W X Y Z A B C D E F G H I J K L M N O P Q RT | T U V W X Y Z A B C D E F G H I J K L M N O P Q R SU | U V W X Y Z A B C D E F G H I J K L M N O P Q R S TV | V W X Y Z A B C D E F G H I J K L M N O P Q R S T UW | W X Y Z A B C D E F G H I J K L M N O P Q R S T U VX | X Y Z A B C D E F G H I J K L M N O P Q R S T U V WY | Y Z A B C D E F G H I J K L M N O P Q R S T U V W XZ | Z A B C D E F G H I J K L M N O P Q R S T U V W X YThis table is known as the tabula recta, which is the foundation of the Vigenère cipher.
What is the Vigenère Cipher?
The Vigenère cipher is a method of encrypting text using a series of Caesar ciphers with different shift values determined by a repeating keyword.
It’s considered a polyalphabetic substitution cipher because it uses multiple substitution alphabets, making it stronger than a simple Caesar cipher.
Decryption
The provided ciphertext and key are:
- Ciphertext:
UFJKXQZQUNB - Key:
SOLVECRYPTO
Since the key length (11) matches the ciphertext length, each ciphertext letter corresponds directly to one key letter. The decryption formula is:
plaintext_letter = (ciphertext_letter_index - key_letter_index) mod 26Example (first character):
- Cipher
U= 20 (A=0) - Key
S= 18 - Plain = (20 - 18) mod 26 = 2 →
C
Steps to Solve
- Align ciphertext and key.
- Convert each letter to its alphabet index (A=0 to Z=25).
- Subtract the key index from the ciphertext index (mod 26).
- Convert the result back to letters.
- Combine all results to get the plaintext message.
Alternatively, we can simplify the process by using an online Vigenère Cipher Decoder, which follows the same tabula recta decryption method.
The decrypted message is CRYPTOISFUN. Flag:
picoCTF{CRYPTOISFUN}⚡ Raikiri🎉 Flag pwned!

💡 TL;DR / Lesson LearnedThe
Vigenère cipheris a form of polyalphabetic substitution cipher that uses a repeating keyword to shift letters in the plaintext.Unlike a simple Caesar cipher that uses one shift value, Vigenère applies multiple shifts based on the keyword, making it more secure, but still vulnerable to frequency and key-reuse analysis.