SpaceQaraseeque

SpaceQaraseeque

На Пикабу
106 рейтинг 0 подписчиков 0 подписок 1 пост 0 в горячем
7

Шифровальщик картинок (с использованием Perfect Shuffle). Чтобы мамка не заругала1

Фрактал

Фрактал


Perfect shuffle - это не танцы ногами из тиктока, а перемешивание карт. Берешь колоду, делишь на две половины, и перемешиваешь так, чтобы чередовались карты из первой половины и из второй. Если первая карта идет из второй половины - это in-shuffle, если из второй - out-shuffle.

Не понятно. Хорошо. Вот на картиночках объяснение.

in-shuffle - первая карта из второй половины (5) идет вперед:

in-shuffle

in-shuffle

out-shuffle - первая карта из первой половины (1) идет вперед

out-shuffle

out-shuffle

Чередуя 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 бит в ключе перепутает - вместо оригинала получит шум (в примере ниже перепутан последний бит в ключе):

Конфуций расшифрованный с ошибочным ключом

Конфуций расшифрованный с ошибочным ключом

Вот тут репозиторий вам выкатил:

https://github.com/xcontcom/perfect-shuffle-cryptography

Там куча непонятного текста, который можешь сразу пропускать и переходить к онлайн демо:

https://xcontcom.github.io/perfect-shuffle-cryptography/shuf...

Инструкция:

Шифровать:
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":

Фрактальные Конфуции

Показать полностью 17
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества