Всегда задавай себе вопрос — а не хуйню ли я делаю?

Кринжатину давно не постил. Исправляюсь. А ты знал… хотя нет, скорее всего, не знал. Короче, если к слову «Linux» применить XOR-шифрование с маской 28, то получится слово PURID = «чистый».

Это как если к слову «хлеб» применить XOR, то получится «пиво».

Смотри:

echo -e $(printf '\\x%x' $[ 64#{L,I,N,U,X} + 29 ^ 28 ])
echo -e $(printf '\\x%x' $[ 64#{P,U,R,I,D} + 29 ^ 28 ])

Сразу пример туда-обратно. Что тут происходит? Если кратко — происходят вычисления.

Для слова «Linux» в фигурных скобках применяется Bash Brace Expansion, который приводит слово к такому виду:

L,I,N,U,X

Арифметическое действие происходит в $[ ]. А решётка + 64 означает, что числа будут интерпретированы как шестидесятеричные (в системе счисления по основанию 64).

В итоге получаем число, которое будет вычислено как комбинация ASCII-кодов символов L, I, N, U, X (в шестидесятеричной системе) + 29, к которой применяется маска 28 (используется оператор ^ как побитовое исключающее ИЛИ).

Ну и echo -e — разрешаем интерпретацию escape-последовательностей в строке.

Роман Шубин
Роман Шубин
CEO & CTO, Главред в «Цифровой улей»
Задать вопрос
Кринжатина? Ещё какая! А сейчас давай оверхед на Perl:
perl -E 'say map { chr(ord($_) ^ 28) } qw(L i n u x)'
perl -E 'say map { chr(ord($_) ^ 28) } qw(P u r i d)'

Где это можно применить, понятия не имею. Возможно, это как-то натолкнёт тебя на правильные мысли и ты решишь изучить методы шифрования.

Роман Шубин
Роман Шубин
CEO & CTO, Главред в «Цифровой улей»
Задать вопрос
Ладно, не смею больше насиловать твой чистый разум. Изучай!