Распаковываем архив, после чего открываем документ task.htm.
Перед нами трактат «О значении и успехе знания, божественного и человеческого» Фрэнсиса Бэкона — человека, чье имя, уверен, знакомо каждому, кто интересуется криптографией. В отличие от господина Виженера, именем которого назван одноименный метод полиалфавитного шифрования, который господин Виженер не изобретал, Фрэнсис Бэкон действительно является изобретателем шифра, названного его именем. Шифр Бэкона также называют двухлитерным шифром, это весьма оригинальный для своего времени метод сокрытия тайного сообщения. Достаточно логично предположить: трактат был выбран неслучайно — наверняка будет присутствовать шифр Бэкона. Как станет ясно из дальнейшего изложения, эта гипотеза оказалась ошибочной
Я нашел оригинал трактата и сравнил с текстом из вложения. Для сравнения я использовал консольную утилитку diff. Это, безусловно, хороший вариант, но даже самым преданным фанатам GNU/Linux я рекомендую воспользоваться куда более удобным онлайн-сервисом, позволяющим сравнить два документа: https[:]//diffcheck[.]io. Какой бы вариант мы не выбрали, станет очевидно, что в некоторых словах различаются регистры первых букв, а в некоторых местах вместо одного пробела между словами присутствуют два пробела.
Я выписал буквы, регистры которых различаются, а также выписал пробелы. Получилась длинная строка со строчными и прописными буквами, разделенными пробелами, которую, по понятным причинам, я приведу не полностью:
oM savcf Osc pMef tce KSh...
Внимательно взглянем на строку. Вряд ли это шифр: чередуются строчные и прописные буквы. И все же я попробовал прогнать эту строку через сервисы, позволяющие идентифицировать шифр (Cipher Identifier). Ничего не вышло. При других обстоятельствах я бы предположил, что перед нами упоминавшийся выше шифр Бэкона, вернее, его steganographic вариация: строчные буквы заменяются на А, прописные буквы заменяются на В. Однако такой вариант маловероятен, потому что на Киберколизее уже присутствовал таск, где нужно было сделать именно это. Впрочем, на всякий случай я проверил и этот вариант — не сработало. Вариант с нулями и единицами также не сработал. Из очевидных вариантов остался один — Азбука Морзе: строчные буквы надо заменить на тире, а прописные буквы надо заменить на точки, после чего декодировать, воспользовавшись, например, замечательным онлайн-сервисом https[:]//www[.]dcode[.]fr. При декодировании выяснилось, что фраза, которая принимается как флаг, написана с ошибкой. Насколько я могу судить, здесь ошибся сам автор таска. Я уверен, что вам не составит труда сообразить, что нужно сделать, и все же назову как ДОЛЖНО выглядеть последнее слово (в котором встречается ошибка) фразы — D1FF3RENCE.
Не забываем обернуть получившуюся фразу в CODEBY{}.
Перед нами трактат «О значении и успехе знания, божественного и человеческого» Фрэнсиса Бэкона — человека, чье имя, уверен, знакомо каждому, кто интересуется криптографией. В отличие от господина Виженера, именем которого назван одноименный метод полиалфавитного шифрования, который господин Виженер не изобретал, Фрэнсис Бэкон действительно является изобретателем шифра, названного его именем. Шифр Бэкона также называют двухлитерным шифром, это весьма оригинальный для своего времени метод сокрытия тайного сообщения. Достаточно логично предположить: трактат был выбран неслучайно — наверняка будет присутствовать шифр Бэкона. Как станет ясно из дальнейшего изложения, эта гипотеза оказалась ошибочной
Я нашел оригинал трактата и сравнил с текстом из вложения. Для сравнения я использовал консольную утилитку diff. Это, безусловно, хороший вариант, но даже самым преданным фанатам GNU/Linux я рекомендую воспользоваться куда более удобным онлайн-сервисом, позволяющим сравнить два документа: https[:]//diffcheck[.]io. Какой бы вариант мы не выбрали, станет очевидно, что в некоторых словах различаются регистры первых букв, а в некоторых местах вместо одного пробела между словами присутствуют два пробела.
Я выписал буквы, регистры которых различаются, а также выписал пробелы. Получилась длинная строка со строчными и прописными буквами, разделенными пробелами, которую, по понятным причинам, я приведу не полностью:
oM savcf Osc pMef tce KSh...
Внимательно взглянем на строку. Вряд ли это шифр: чередуются строчные и прописные буквы. И все же я попробовал прогнать эту строку через сервисы, позволяющие идентифицировать шифр (Cipher Identifier). Ничего не вышло. При других обстоятельствах я бы предположил, что перед нами упоминавшийся выше шифр Бэкона, вернее, его steganographic вариация: строчные буквы заменяются на А, прописные буквы заменяются на В. Однако такой вариант маловероятен, потому что на Киберколизее уже присутствовал таск, где нужно было сделать именно это. Впрочем, на всякий случай я проверил и этот вариант — не сработало. Вариант с нулями и единицами также не сработал. Из очевидных вариантов остался один — Азбука Морзе: строчные буквы надо заменить на тире, а прописные буквы надо заменить на точки, после чего декодировать, воспользовавшись, например, замечательным онлайн-сервисом https[:]//www[.]dcode[.]fr. При декодировании выяснилось, что фраза, которая принимается как флаг, написана с ошибкой. Насколько я могу судить, здесь ошибся сам автор таска. Я уверен, что вам не составит труда сообразить, что нужно сделать, и все же назову как ДОЛЖНО выглядеть последнее слово (в котором встречается ошибка) фразы — D1FF3RENCE.
Не забываем обернуть получившуюся фразу в CODEBY{}.