UnixGo
Мастерство приходит только с практикой.

Информация об уровне

ROT13 - это простой шифр с подстановкой.

Шифры подстановки представляют собой простой алгоритм замены. В этом примере подстановочного шифра мы рассмотрим “одноалфавитный” шифр.

Этот уровень содержит старую форму шифра под названием “шифр Цезаря”. Шифр Цезаря сдвигает алфавит на определенное число. Например:

обычный:  a b c d e f g h i j k ...
шифр:     G H I J K L M N O P Q ...

В этом примере буква “a” в открытом тексте заменяется буквой “G” в в шифротексте, поэтому, например, открытый текст ‘bad’ становится ‘HGJ’ в шифротекст.

Пароль для уровня 3 находится в файле krypton3. Он зашифрован с помощью шифра Цезаря. Без какой-либо дополнительной информации, этот шифротекст может быть трудно взломать. Вы не имеете прямого доступа к ключу, однако у вас есть доступ к программе, которая зашифрует все, что вы захотите ей передать, используя этот ключ. Если мыслить логически, то это совершенно просто.

Веселитесь.

Дополнительная информация:

Двоичный файл encrypt будет искать ключевой файл в текущей рабочей каталоге. Поэтому, возможно, лучше создать рабочий каталог в /tmp и в нем ссылку на ключевой файл. Поскольку двоичный файл encrypt работает под setuid пользователя krypton3, вам также необходимо предоставить krypton3 доступ к вашей рабочей директории.

Вот пример:

krypton2@melinda:~$ mktemp -d
/tmp/tmp.Wf2OnCpCDQ
krypton2@melinda:~$ cd /tmp/tmp.Wf2OnCpCDQ
krypton2@melinda:/tmp/tmp.Wf2OnCpCDQ$ ln -s /krypton/krypton2/keyfile.dat
krypton2@melinda:/tmp/tmp.Wf2OnCpCDQ$ ls
keyfile.dat
krypton2@melinda:/tmp/tmp.Wf2OnCpCDQ$ chmod 777 .
krypton2@melinda:/tmp/tmp.Wf2OnCpCDQ$ /krypton/krypton2/encrypt /etc/issue
krypton2@melinda:/tmp/tmp.Wf2OnCpCDQ$ ls
ciphertext  keyfile.dat