К посту "Трудности перевода", расшифровка

В этом посте https://pikabu.ru/story/trudnosti_perevoda_5999868 пикабушник @TiCube выложил фото карт на полотенца. Само собой, можно было бы просто перевести надписи с другого языка, но мне это показалось неинтересным. Если что, вот это фото:

К посту "Трудности перевода", расшифровка Расшифровка, Декодирование, Египет, Карточки, Полотенце, От нечего делать

В посте высказывали предположения, что виной всему стала слетевшая кодировка. Я попробовал пропустить этот текст через несколько подборщиков кодировки в автоматическом режиме, но ни один вариант не оказался читабельным. Тогда было принято решение все это расшифровать последовательно на основании имевшихся фактов. А факты таковы - первые два слова, это наверняка "Эта карта". Кроме того, мы знаем, что речь идет о полотенцах, поэтому нужно подобрать слово, которое будет максимально на него похоже со сбитой кодировкой. Отталкиваясь от этих данных, начинаем последовательно заменять буквы в текстовом редакторе, подкрашивая уже приведенные в нужный вид символы. Получается как-то так:

К посту "Трудности перевода", расшифровка Расшифровка, Декодирование, Египет, Карточки, Полотенце, От нечего делать

Потом доводим текст до ума и поправляем пару ошибок, возникших вследствие моей невнимательности. Результатом является вот такой текст:

К посту "Трудности перевода", расшифровка Расшифровка, Декодирование, Египет, Карточки, Полотенце, От нечего делать

Авторская орфография и пунктуация сохранена. Итог - переводчик, конечно, немного косячит, но в целом текст вполне понятен для русскоязычного пользователя. А вот почему потеряли правильную кодировку при подготовке карточек, для меня загадка...


P.S. Кто хочет попробовать сам расшифровать, вот исходник в печатном варианте без одного символа, который на фото показан квадратиком...

ЪпЭ жЭнпЭ блзгкЭ 6шпщ л6ивквкЭ кЭ млзлпвкув кЭ мзьгв Млмнлоепв жЭнпр л6нЭпкл мне ЯлдЯнЭпв млзливкуЭ. Мне лпчвдбв Явнкепв, мнгЭзрIопЭ жЭнпр Я Нвовмхвк. МлпвньккЭь Эие жЭнпЭ оплеп 100 b.c.

Вы смотрите срез комментариев. Показать все
16
Автор поста оценил этот комментарий

$Str = "ЪпЭ жЭнпЭ блзгкЭ 6шпщ л6ивквкЭ кЭ млзлпвкув кЭ мзьгв Млмнлоепв жЭнпр л6нЭпкл мне ЯлдЯнЭпв млзливкуЭ. Мне лпчвдбв Явнкепв, мнгЭзрIопЭ жЭнпр Я Нвовмхвк. МлпвньккЭь Эие жЭнпЭ оплеп"

0..($str.Length-1) | %{ $strRes += [char][int](([int][char]$str[$_] ) + 3) }

$strRes


Эта#йарта#докжна#9ыть#о9ленена#на#покотенце#на#пкяже#Попросите#йарту#о9ратно#при#возврате#поколенца1#При#отъезде#верните/#пржакуLста#йарту#в#Ресепшен1#Потерянная#али#йарта#стоит

раскрыть ветку (7)
10
Автор поста оценил этот комментарий
Побуду кэпом. Этот "код" в исходной строчке сдвигает каждую букву на 3 вперёд по алфавиту. Т. Е была п - стала т.
раскрыть ветку (1)
15
Автор поста оценил этот комментарий
Сказали же примитивный шифр Цезаря.
Автор поста оценил этот комментарий

Версия с учетом некоторых расхождений. Выполнять в PowerShell (Если есть желание, конечно)


$Str = "ЪпЭ жЭнпЭ блзгкЭ 6шпщ л6ивквкЭ кЭ млзлпвкув кЭ мзьгв Млмнлоепв жЭнпр л6нЭпкл мне ЯлдЯнЭпв млзливкуЭ. Мне лпчвдбв Явнкепв, мнгЭзрIопЭ жЭнпр Я Нвовмхвк. МлпвньккЭь Эие жЭнпЭ оплеп 100в.с";

$StrRes = "";

0..($str.Length-1) |

%{

$StrRes += $(

if ( ([int][char]$str[$_]) -ge 32 -and ([int][char]$Str[$_]) -le 50) { $Str[$_] }

ElseIf ($Str[$_] -eq "6") { "б" }

ElseIf ($Str[$_] -eq "ж") { "к" }

ElseIf ($Str[$_] -eq "з") { "л" }

ElseIf ($Str[$_] -eq "и") { "м" } Else {

[char][int](([int][char]$str[$_] ) + 3)

}

)

} ; $StrRes

Автор поста оценил этот комментарий

А что это за язык? Не Powershell ли?

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

Он самый =) Так что вставляем в консоль и наблюдаем результат сами

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Решил проверить, а на ноуте стоит две системы. Привычно открыл консоль, долго тупил, почему не работает... Надо идти спать, вбивал в консоль Mint`a...

2
Автор поста оценил этот комментарий

php

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку