Сейчас на форуме: Magister Yoda, subword (+9 невидимых)

 eXeL@B —› Основной форум —› Выбор алгоритма шифрования
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 15:09
· Личное сообщение · #1

Здравствуйте!

Задачка состоит в следущем. шифрование критических мест внутри exe. Вся реализация готова. Но сейчас в качестве шифрования использую: byte xor key.

Естественно это очень просто ломается...

Осталось дело за малым выбрать алгоритм и зашифровать... но посматрел некоторые алгоритмы

Blowfish
DES
Triple DES
Rijndael

и понял что это не то что мне нужно ((. К примеру мне нужно зашифровать 1 байт но результатом работы этих алгоритмов является не 1 байт а больше... Что мне очень мешает...

Подскажите хороший алгоритм шифрования в котором 1 байт шифруется 1 байтом?



Ранг: 19.1 (новичок), 4thx
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 15:14
· Личное сообщение · #2

Разве Blowfish на выходе выдаёт больше байтиков, чем получил на входе? Сомневаюсь в этом.
Все 4 алгоса довольно много кода "кушают". Лучше юзать XTEA, который прост в реализации.
Да и вообще пофигу какой алгос, самое главное как и где ключик хранить.




Ранг: 303.7 (мудрец), 4thx
Активность: 0.190
Статус: Участник
tPORt Manager

Создано: 03 декабря 2008 15:14
· Личное сообщение · #3

смешной ты))) блочными алгоритмами 1 байт в 1 хочешь загнать. можешь цезаря применить)



Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 15:21
· Личное сообщение · #4

> Разве Blowfish на выходе выдаёт больше байтиков, чем получил на входе? Сомневаюсь в этом.

'A' Blowfish Key(11) - _8ґІѕiЖ•

> смешной ты))) блочными алгоритмами 1 байт в 1 хочешь загнать

Может поточный алгорим тогда? Я в них не разбираюсь просто вот приспичело... Поэтому и спрашиваю..



Ранг: 129.7 (ветеран), 2thx
Активность: 0.070
Статус: Участник

Создано: 03 декабря 2008 15:24
· Личное сообщение · #5

Юзай поточные алгоритмы




Ранг: 170.1 (ветеран), 96thx
Активность: 0.090.01
Статус: Участник

Создано: 03 декабря 2008 15:24
· Личное сообщение · #6

123456 пишет:
Я в них не разбираюсь просто

Тогда, лучше, XOR шифруй. Иначе зря время и силы потратишь с той же криптостойкостью (2^8).



Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 15:32
· Личное сообщение · #7

>Тогда, лучше, XOR шифруй. Иначе зря время и силы потратишь с той же криптостойкостью (2^8).

ленивого крякера сразу видно облегщает себе жизнь ))




Ранг: 303.7 (мудрец), 4thx
Активность: 0.190
Статус: Участник
tPORt Manager

Создано: 03 декабря 2008 15:32
· Личное сообщение · #8

шифруй хотяб блоками по 4 байта, тогда нормально будет.



Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 15:38
· Личное сообщение · #9

Bit-hack пишет:
шифруй хотяб блоками по 4 байта, тогда нормально будет.


В тех алгоритмах что я описал.

Количество входных байт не равно количеству выходных. Нужны какие то другие... а вот какие???




Ранг: 303.7 (мудрец), 4thx
Активность: 0.190
Статус: Участник
tPORt Manager

Создано: 03 декабря 2008 15:43
· Личное сообщение · #10

накладывай гамму или как это там называется у крутых криптографов)) вобщем добавляй константу или xor на неё каждый блок... А размер не совпадает, потому что у тех алгоритмов есть вполне конкретная длина блока, и кол-во выходных данных будет кратно этому числу.



Ранг: 129.7 (ветеран), 2thx
Активность: 0.070
Статус: Участник

Создано: 03 декабря 2008 15:46
· Личное сообщение · #11

Загугли "Поточное шифрование" и вдумчиво читай...



Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 16:01
· Личное сообщение · #12

Azur1d пишет:
Загугли "Поточное шифрование" и вдумчиво читай...


Загуглил... кроме как на википедии нечего толком не нашел да и то. Там о конкретных реализациях кроме RC4 ни слова...



Ранг: 19.1 (новичок), 4thx
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 16:19
· Личное сообщение · #13

123456 пишет:
Загуглил... кроме как на википедии нечего толком не нашел да и то. Там о конкретных реализациях кроме RC4 ни слова...

гугли Twofish.
И всё же обрати внимание на XTEA (последние 1-3 байта можно ксорить).



Ранг: 129.7 (ветеран), 2thx
Активность: 0.070
Статус: Участник

Создано: 03 декабря 2008 16:28 · Поправил: Azur1d
· Личное сообщение · #14

http://www.enlight.ru/crypto/algorithms/algs.htm http://www.enlight.ru/crypto/algorithms/algs.htm
А дальше гуглишь по каждому




Ранг: 61.7 (постоянный)
Активность: 0.050
Статус: Участник
я

Создано: 03 декабря 2008 16:38
· Личное сообщение · #15

OSA пишет:
гугли Twofish.

вы видели сколько там кода будет и оно нам надо?)

123456
у меня где то есть сорцы маленького самопального алгоса. ломается говорят тривиально, но всё таки получше всякого ксор будет и тот кто будет ломать прогу врядли будет ломать сам криптоалгоритм. а RC4 всем хорош в данном случае кроме неудобства в том плане что ему требуется временный буфер в памяти в 256 байт




Ранг: 312.0 (мудрец), 349thx
Активность: 0.460.65
Статус: Участник
Advisor

Создано: 03 декабря 2008 16:52
· Личное сообщение · #16

123456 пишет:
К примеру мне нужно зашифровать 1 байт

К примеру для этого не надо даже ключ подбирать.....

-----
Чтобы юзер в нэте не делал,его всё равно жалко..




Ранг: 3.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 03 декабря 2008 19:38
· Личное сообщение · #17

123456 пишет:
Подскажите хороший алгоритм шифрования в котором 1 байт шифруется 1 байтом?

если нужен любой блочный, просто можно дополнить случайными данными до длины блока и вставить в конце блока реальную размер данных в блоке, как например это выглядит в sha алгоритмах.
Если иначе - о поточных алгоритмах уже тут ответили.
OSA пишет:
Да и вообще пофигу какой алгос, самое главное как и где ключик хранить.

вобще если подумать, то ключ можно не хранить нигде.



Ранг: 19.1 (новичок), 4thx
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 20:14
· Личное сообщение · #18

deBator пишет:
вобще если подумать, то ключ можно не хранить нигде.


У меня подозрение что ТС собирается ключик хранить в exe.



Ранг: 18.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 декабря 2008 22:09
· Личное сообщение · #19

Заюзай обычный LFSR. Он некриптостойкий и взламывается решением системы линейных уравнений. Но дает хорошие статистические и свойства и просто реализуется.



Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 04 декабря 2008 09:49
· Личное сообщение · #20

Bronco пишет:
К примеру мне нужно зашифровать 1 байт

Это же к примеру! А вообще будет шифроваться процедура! Но нужно чтоб в exe-шнике не было смещений после шифрования.

Wild_One пишет:
У меня подозрение что ТС собирается ключик хранить в exe.

Нет) ключ будет вводить пользователь при запуске.



Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 04 декабря 2008 10:01
· Личное сообщение · #21

OSA пишет:
гугли Twofish.
И всё же обрати внимание на XTEA (последние 1-3 байта можно ксорить).


это блочные алгоритмы

Azur1d пишет:
www.enlight.ru/crypto/algorithms/algs.htm
А дальше гуглишь по каждому


Большое спасибо) буду читать



Ранг: 19.1 (новичок), 4thx
Активность: 0.010
Статус: Участник

Создано: 04 декабря 2008 10:17
· Личное сообщение · #22

123456 пишет:
это блочные алгоритмы

Да какая х.. разница. Смотри сюда ru.wikipedia.org/wiki/XTEA
Длина выходных данных такая же как и входных. Главное что бы длина входных данных была кратна 4.



Ранг: 88.3 (постоянный), 3thx
Активность: 0.040
Статус: Участник

Создано: 04 декабря 2008 10:22
· Личное сообщение · #23

OSA пишет:
Длина выходных данных такая же как и входных. Главное что бы длина входных данных была кратна 4.

Челу то надо один байт закрипровать, а не кратный 4м, тут об этом и идет речь!

123456
Вот нашел то что тебе надо - RC4, от ксора не далеко ушло, но все таки уже и не ксор.
Смотрел шифры из набора DCPcrypt2, все остальные - блочные...

41a4_04.12.2008_CRACKLAB.rU.tgz - DCPrc4.pas



Ранг: 271.5 (наставник), 12thx
Активность: 0.150
Статус: Участник
Packer Reseacher

Создано: 04 декабря 2008 11:25
· Личное сообщение · #24

123456
Пойми идею архитектуры "Сеть Файстеля", ну и представь один байт как L(4 старших бита) и R(4 младших бита), вот токо для своего алго придется изворачиваться по генерации таблицы замен ;)))

-----
My love is very cool girl.




Ранг: 18.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 04 декабря 2008 12:10
· Личное сообщение · #25

123456, тебе зачем шифровать то? Если эти данные будут расшифровываться по ходу использования программы, то использовать сложный криптостойкий алго не имеет особого смысла.



Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 04 декабря 2008 13:04 · Поправил: 123456
· Личное сообщение · #26

Enigma не поверишь уже до того как прочитать твой ответ уже сделал с помощью этого компонента ) ипользовал RC4. Всем спасибо.

Wild_One пишет:
Если эти данные будут расшифровываться по ходу использования программы, то использовать сложный криптостойкий алго не имеет особого смысла.

это почему это?




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 04 декабря 2008 13:16
· Личное сообщение · #27

123456 пишет:
это почему это?
А потому что всё равно будут дампить и лепить расшифрованные участки на место зашифрованных.

-----
Stuck to the plan, always think that we would stand up, never ran.




Ранг: 10.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 04 декабря 2008 14:33
· Личное сообщение · #28

ARCHANGEL )) в том то и хитрость =)) чтобы сдампить нужно сначала расшифровать а расшифровывается вводом пароля. При вводе пароля программа расшифровывает кусочек себя, причем введенный пользователем пароль и является ключем к расшифровке. Если пароль не верный то значит и расшифровалось не верно поэтому полезут ексепшены, run time error-ы, и т.п.



Ранг: 18.3 (новичок)
Активность: 0.010
Статус: Участник

Создано: 04 декабря 2008 15:18
· Личное сообщение · #29

С этого и надо было начать. Поточные шифры можно изучить и скачать исходники тут
www.ecrypt.eu.org/stream/index.html
Опять же, твоя идея имеет смысл, если программа не для массового распространения.




Ранг: 355.4 (мудрец), 55thx
Активность: 0.320
Статус: Uploader
5KRT

Создано: 04 декабря 2008 15:45
· Личное сообщение · #30

По XTEA:

code.progler.ru/tags/XTEA-TW
ishodniki.ru/list/info.php?id=7925&cat=18&show=alg-def
sourceforge.net/project/shownotes.php?release_id=627442

-----
Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes



. 1 . 2 . >>
 eXeL@B —› Основной форум —› Выбор алгоритма шифрования
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати