Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.06.2010, 20:20   #1
necroant
Пользователь
 
Регистрация: 07.06.2010
Сообщений: 10
По умолчанию "Двухслойное" шифрование

Сразу оговорюсь что пишу на BCB, потому что он мне первый под руку попался
Задача состоит в следующем:
Имеем файл, содержащий неважно что. То есть это может быть как текст, так и бинарик.
Нужно загружать оттуда по N символов, переводить полученную последовательность в заданную пользователем систему счисления(семиричную, пятеричную, итп нестандартные, чтобы врага запутать ). Затем полученную последовательность уже из M символов - переставить в псевдослучайном порядке, самым простым линейным конгруэнтным методом. Переставив - перевести обратно в исходную СС(для простоты будем считать что исходно символы представлялись как шестнадцатиричные цифры, тем более что решения задачи это не суть важно). Записать результат в файл, который потом можно будет используя тот же метод (перевести в х??->переставить->перевести в х16) дешифровать обратно. Это, таскзть, амбула.
Вопросы:
- какие существуют незатратные для нервов способы перевода в "левые" сс(нет, то есть я могу и ручками алгоритм написать, но если есть стандартная функция получится что я изобрел велосипед, опять...) ? Перевода, прошу заметить, не числа, а, по факту, одномерного массива. Единственная мысль - выделить область в памяти, закатать туда всю последовательность целиком, потом считать уже по столько бит, по сколько надо.
- как потом результат безболезненно перетасовать? То есть, порядок в котором надо переставлять я установлю легко - формула в конспекте перед глазами(результатом будет нечто вроде j0=1 j1=2 j2=3 j3=0, для последовательности большей длины ессна всё намного симпатичнее). А как это будет выглядеть в коде? Мне на ум приходят исключительно монструозные конструкции, а ведь наверняка есть вполне изящные варианты).
necroant вне форума Ответить с цитированием
Старый 16.06.2010, 20:31   #2
necroant
Пользователь
 
Регистрация: 07.06.2010
Сообщений: 10
По умолчанию

Уважаемые администраторы. Удалите пожалуйста эту тему. Мне стыдно что я написал такую хренотень.
necroant вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обойти "преобразование типа из "string" в "float" невозможно" lexluter1988 Помощь студентам 1 07.08.2010 12:23
"ОКРВВЕРХ", "ОКР", "ЕСЛИ". Как бы их связать. Каравай Microsoft Office Excel 13 17.02.2010 09:53
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
блок "cont" с права не принимает значение "margin: 10px;" которое описано в body tabikA HTML и CSS 5 24.02.2009 21:50