Ответ на пост «Шифровальщик картинок (с использованием Perfect Shuffle). Чтобы мамка не заругала»1
Онлайн реализация шифровальщика - дешифровальщика JPEG
Пиксели перемешиваются. По алгоритму обратимо. И это Постить можно на любых форумах.
При востановлении тональность немного меняется.
Про шифрование картинок и стеганографии известно давно, но онлайн реализаций этого нет.
Исходный код открыт, онлайн реализация.
https://codepen.io/procoders000001/full/qEOEgNe
( код работает локально без доступа к интернету )
Если сайт жмёт сильно разрешение есть риск что изображение не востановится.
Шифровальщик картинок (с использованием Perfect Shuffle). Чтобы мамка не заругала1
Perfect shuffle - это не танцы ногами из тиктока, а перемешивание карт. Берешь колоду, делишь на две половины, и перемешиваешь так, чтобы чередовались карты из первой половины и из второй. Если первая карта идет из второй половины - это in-shuffle, если из второй - out-shuffle.
Не понятно. Хорошо. Вот на картиночках объяснение.
in-shuffle - первая карта из второй половины (5) идет вперед:
out-shuffle - первая карта из первой половины (1) идет вперед
Чередуя in-shuffle и out-shuffle мы запутываем колоду так, что распутать ее практически невозможно, не зная поочередности in/out.
Собственно поочередность in/out - это и будет наш ключ шифрования.
Дальше больше. Вместо перемешивания строки, мы можем перемешивать пиксели - то есть, столбики и строки на картинке. Делим картинку на 4 сегмента-квадратика и перемешиваем. Опять же чередуя in/out.
Допустим, ты Андрей Максимович, хочешь передать своему другу Дмитрию Геннадиевичу фотку своего котяры, но не хочешь, чтобы её увидел Петр Борисович.
Перемешиваешь картинку, отправляешь другу. Друг, используя ключ, восстанавливает оригинальную картинку. Борисыч даже брутфорсом ничего не сделает - количество комбинаций слишком внушительное.
В качестве примера, будем использовать фотку Конфуция:
После перемешивания:
Ключ шифрования:
0101010010100111001100010110100110101011010101101001011110011011
mode: [1, 0, 0, 0]
Mode? Да! Для создания пущей энтропии. Помнишь, мы делили картинку на 4 квадратика-сегмента. Вот mode определяет трансформации, применяемые к этим сегментам перед перемешиванием. Например [1, 0, 0, 0] означает, что мы вращаем левый верхний квадратик на 90 градусов, остальные 3 квадратика не трогаем.
Если Борисыч даже 1 бит в ключе перепутает - вместо оригинала получит шум (в примере ниже перепутан последний бит в ключе):
Вот тут репозиторий вам выкатил:
Там куча непонятного текста, который можешь сразу пропускать и переходить к онлайн демо:
Инструкция:
Шифровать:
1. Загружаешь картинку туда, где кнопка "Shuffle →" (левая сторона).
2. Жмякай "Random Modes".
3. Автоматически сгенерируется случайный ключ 64 бита.
4. Этот ключ, сгенерированную картинку и Mode отправляешь Дмитрию.
Расшифровать:
2. Загружаешь зашифрованную картинку в правую половину, где кнопка "← Unshuffle".
3. Снимаешь галочку с "Generate new key" и вставляешь туда ключ.
4. Выставляешь Mode.
5. Жмякай "← Unshuffle".
Фракталы:
1. Ставишь галочку "Resize image", оставляешь 1024 (2^10)
2. Снимаешь галочку с "Generate new key", вводишь ключ 10 единиц: 1111111111
3. Жмякай "Random Modes".
Конфуций в качестве примера:
Оригинальный Конфуций скукоженный до 512х512
Ключ 9 единиц, "Randome Modes":










Фрактальные Конфуции
Что такое конфуцианство в 7 пунктах
Почему же Китай так уважает старших, стремится к порядку и ценит образование? Всё это наследие конфуцианства. Это не религия и не философия в западном смысле. Это кодекс жизни, который определял Китай на протяжении тысяч лет. Вот 7 ключевых идей, которые помогут понять суть конфуцианства - даже если вы слышите это слово впервые...
1. Общество - как большая семья
Если в семье есть уважение и забота - значит, и в государстве будет порядок. Родители заботятся о детях, дети слушаются старших. Царь - это отец народа, он заботиться по народе как отец о детях. Это основа конфуцианского мышления.
2. Уважение к старшим - святое
В Китае даже сегодня в автобусе первым сядет старший. Это называется сяо - почтительность к родителям и предкам. Уважение к родителям - это уважение к жизни.
3. Мораль важнее закона
Люди не должны бояться наказания - они должны стыдиться плохих поступков. Если ты хороший человек - закон тебе не страшен. Правитель - не контролёр, а пример для подражания.
4. Учение - путь к благородству
Учеником в конфуцианстве может быть каждый. Чем больше ты учишься, тем выше твой моральный и социальный статус. Образование - не ради диплома, а чтобы стать человеком.
5. Ритуалы - не формальность, а культура
Конфуций учил: ритуал - это основа цивилизации. Как ты здороваешься, как ведёшь беседу, как выражаешь уважение - всё это важно. Это называется «ли» - поведение, которое держит общество в тонусе.
6. Лидер - это не власть, это долг
Правитель должен быть не грозным, а мудрым и справедливым. Если царь честен - честен и народ. Если он корыстен - страну ждут беды.
7. Главное - гармония
Не победа, не богатство, не слава. Конфуций учил стремиться к внутреннему и внешнему равновесию. Гармония - в отношениях, в семье, в стране, в мире.
Конфуцианство - это то, на чём стоит Китай. Понять Китай невозможно, не поняв Конфуция.
Больше статей у меня в Telegram: https://t.me/history_pixel















