Сейчас на форуме: Kybyx (+3 невидимых)

 eXeL@B —› Оффтоп —› Криптография
Посл.ответ Сообщение

Ранг: -0.8 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 11 августа 2017 01:52 · Поправил: Doctor_Moriary
· Личное сообщение · #1

Приветствую вас, мои дорогие друзья!
Сегодня мы будем наркоманить криптографию.
Напишем небольшую программу.
С начала вспомним,что такое вообще XOR. XOR - это операция логического
исключающего ИЛИ, которая имеет .
0 xor 1 = 1
1 xor 0 = 1
0 xor 0 = 0
1 xor 1 = 0
Например,буква "А" "латинская" в кодировке ASCII имеет код 41h лил 1000001 в
двоичном виде, а цифра "1" 31h=110001. Проксорим эти буквы (точнее их коды)

А = 1000001
XOR
1 = 0110001
_________

p = 1110000

Получился ответ 1110000 , а это есть двоичный ASCII-код буквы (р) .
На этом принципе и основа шифровка XOR!Ну а что если дан ключ " 3456".
Закодируем с помощью него фразу "Cracker Cracker Cracker Cracker".
программа на Си.
Code:
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.  
  6.     char    str[]=" Cracker Cracker Cracker Cracker " ;
  7.  
  8.     char    key[]="3456" ;
  9.    
  10.     int  i=0, j=0;
  11.  
  12.     printf( "%s\n", str) ;
  13.    
  14.     while (str[i]  != ' \0 ' )
  15. {
  16.      if (j>3)  j=0;
  17.     
  18.     printf("%c" , str[ i++]^=key[j=++] );
  19.  
  20. }
  21.  
  22.     printf ("\n");
  23.  
  24.     return 0;
  25.  
  26. }
  27.  


str: Cracker Cracker Cracker Cracker

xor: 3456 3456 3456 3456 3456 3456

key: ytyu sdfg lgso &twt u843 *1|p bnz

Как видишь,одна и та же буква может быть закодирована по-разному,
например буква (С) в шифротексте принимает следующие значения (y) (&) (p)
XOR ,по сути,шифр Вижнера.Такой шифр частотным анализом вскрыть невозможно!)




Ранг: 623.6 (!), 521thx
Активность: 0.330.9
Статус: Участник
_Вечный_Студент_

Создано: 11 августа 2017 03:21 · Поправил: plutos
· Личное сообщение · #2

Doctor_Moriary пишет:
Например,буква "А" "латинская" в кодировке ASCII имеет код 41h


Кто бы мог подумать... Вот спасибо!

PS. Alan Turing смотрит с одобрением ....

-----
Give me a HANDLE and I will move the Earth.


| Сообщение посчитали полезным: Rio

Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 11 августа 2017 06:29
· Личное сообщение · #3

Чрезвычайно




Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 11 августа 2017 07:24
· Личное сообщение · #4

Здорово! Это обучающий текст?



Ранг: 456.3 (мудрец), 340thx
Активность: 0.280.02
Статус: Участник
Android Reverser

Создано: 11 августа 2017 08:42
· Личное сообщение · #5

Ахуенный шифр. Надо подсказать, чтоб АЕСом стал не рэндал, а ксор.

-----
SaNX




Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 11 августа 2017 08:56 · Поправил: VodoleY
· Личное сообщение · #6

если ключ статичен.. а доступ к изменению исходного текста есть, то ломается на УРА
грубо 0 xor key=0 -> key=0. or data xor key=res -> key=res xor data

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....





Ранг: 253.5 (наставник), 684thx
Активность: 0.260.25
Статус: Участник
radical

Создано: 11 августа 2017 10:15
· Личное сообщение · #7

Doctor_Moriary пишет:
Сегодня мы будем наркоманить

По-моему этой фразой все сказано, на ней же можно и закончить.

-----
ds


| Сообщение посчитали полезным: Rio, plutos

Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 11 августа 2017 12:13
· Личное сообщение · #8

Слишком "громкое" (несмотря на корректность) название темы для частного примера применения обычного xor.
Есть ли в топике иной смысл для размещения именно здесь, кроме как дать участникам возможность лишний раз поупражняться в троллинге?




Ранг: 106.9 (ветеран), 27thx
Активность: 0.080
Статус: Участник

Создано: 11 августа 2017 12:19 · Поправил: Oott
· Личное сообщение · #9

Doctor_Moriary пишет:
XOR ,по сути,шифр Вижнера.Такой шифр частотным анализом вскрыть невозможно!)


Ксор надежен только если размер ключа равен размеру шифротекста. В остальном это вскрывается еще более упрощенным частотным анализом. Предполагаем символ с наибольшей частотой вхождения(для текстов это пробел для банарников ноль), при ксоре этот символ вероятнее всего будет выпадать на каждый символ ключа, это и используется.

https://github.com/hellman/xortool



Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 12:28
· Личное сообщение · #10

Вангую, что если сгенерить ключ размером с данные, а инструкцию xor хорошенько отморфить в 10к кода, разбавив антиотладкой, то 96% участников этого форума этот шифр не сломают



Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 11 августа 2017 13:02
· Личное сообщение · #11

rmn пишет:
сгенерить ключ размером с данные

зависит от размера данных и способа "хранения" ключа, бывают случаи, когда такое не подойдет.

rmn пишет:
инструкцию xor хорошенько отморфить в 10к кода, разбавив антиотладкой

...что вообще никак не связано c сабжем
аналогично предложению накрыть процедуру вмпротом, только речь слегка не об этом.



Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 13:12
· Личное сообщение · #12

VOLKOFF пишет:
зависит от размера данных и способа "хранения" ключа, бывают случаи, когда такое не подойдет.

Разумеется, никто в здравом уме не будет просить пользователя придумать пароль размеров в гиг. Ключ можно генерировать по ходу шифрования. Например, вначале считаем md5 от пароля пользователя и шифруем этим хешем 16 байт, затем считаем md5 от хеша и т.д. На ключ размером с данные любого размера затраты памяти - 16 байт.

VOLKOFF пишет:
...что вообще никак не связано c сабжем

Как это не связано? Тут просто все такие гуру криптографии набижали, хотя то, что незнание алгоритма делает шифрование ненадежным вовсе не означает, что любой школьник сможет его как орех расщелкать. Шифрует же ксор очень даже пиздато при правильной реализации



Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 11 августа 2017 14:19 · Поправил: cppasm
· Личное сообщение · #13

Вы определитесь для начала что такое криптостойкий алгоритм, а потом спорьте.
По определению это алгоритм, при котором наличие любого количества порций открытых и зашифрованных данных никак не упрощает расшифровку новой порции данных при взломе.
XOR таковым не является.
А что там сможет школьник расщёлкать (или не сможет) к криптографии имеет слабое отношение.
Защита, основанная на том что алгоритм модификации данных неизвестен - это не криптография.
Это по поводу морфа, вмпротов и т.п.



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

Создано: 11 августа 2017 14:33
· Личное сообщение · #14

Doctor_Moriary пишет:
Такой шифр частотным анализом вскрыть невозможно!)

Нет конечно)))))))))))))
Да и причём частотный анализ?



Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 14:50
· Личное сообщение · #15

cppasm пишет:
Защита, основанная на том что алгоритм модификации данных неизвестен - это не криптография.

Воу-воу, тогда получается, что и rsa-2048 - не криптография. Ведь она основана на том, что ты не знаешь более оптимальный алгоритм.



Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 11 августа 2017 14:53
· Личное сообщение · #16

Чукча не читатель, чукча писатель?
Она основана на том, что ты не можешь за приемлемое время факторизовать большое число, а не на том что алгоритм неизвестен.
Алгоритм RSA опубликован, бери да читай.
Только это никак при взломе не помогает.



Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 15:02
· Личное сообщение · #17

cppasm пишет:
Она основана на том, что ты не можешь за приемлемое время факторизовать большое число, а не на том что алгоритм неизвестен.

Да, но ты не можешь его факторизовать именно потому, что алгоритм факторизации за приемлемое время не известен.



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 11 августа 2017 15:18
· Личное сообщение · #18

Следуя логика ТС - с таким же успехом вместо XOR можно ADD/SUB (с ключом 4 байта) кинуть и производить арифметическую операцию блоками по те же 4 байта, используя статический ключ. Или динамику прицепить - используя результат от предыдущего блока.
Но вообще, в 100% программ, которых я видел (и все остальные, кто здесь присутствует), XOR используется в самом примитивном виде и не представляет никакого секрета при расшифровке.

| Сообщение посчитали полезным: Rio, plutos

Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 11 августа 2017 15:37
· Личное сообщение · #19

rmn пишет:
Да, но ты не можешь его факторизовать именно потому, что алгоритм факторизации за приемлемое время не известен.

Так неизвестен алоритм факторизации, а не алгоритм RSA - это разные вещи.
И не неизвестен, а его не существует просто.

По сути ты говоришь что нет эффективного алгоритма взлома. И что?
RSA (как и любой другой криптоалгоритм) основан не на том что ты не знаешь как он шифрует, а на том что для взлома надо решить математически сложную задачу.
Алгоритм шифрования известен.



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

Создано: 11 августа 2017 15:49
· Личное сообщение · #20

cppasm пишет:
Алгоритм шифрования известен.

Да, а вот как обратно это другой вопрос...)



Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 15:49
· Личное сообщение · #21

cppasm пишет:
И не неизвестен, а его не существует просто.

Докажи

cppasm пишет:
Алгоритм шифрования известен.

А алгоритм дешифрования - нет. Просто он не симметричный, как ксор, но по сути его стойкость так же основана на незнании алгоритма, как и стойкость отморфленного ксора, переведенного на брейнфак и накрытого вмпротом.



Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 11 августа 2017 16:21
· Личное сообщение · #22

rmn пишет:
А алгоритм дешифрования - нет.

Чувак, не пиши ерунду.
Алгоритм дешифрования описан в спецификации.
Как и алгоритм шифрования.

rmn пишет:
Просто он не симметричный, как ксор, но по сути его стойкость так же основана на незнании алгоритма, как и стойкость отморфленного ксора, переведенного на брейнфак и накрытого вмпротом

Нет. Ты не в теме.

| Сообщение посчитали полезным: SaNX

Ранг: 456.3 (мудрец), 340thx
Активность: 0.280.02
Статус: Участник
Android Reverser

Создано: 11 августа 2017 16:29
· Личное сообщение · #23

rmn пишет:
А алгоритм дешифрования - нет

поделись травой, чувак

-----
SaNX


| Сообщение посчитали полезным: VodoleY

Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 17:01 · Поправил: rmn
· Личное сообщение · #24

cppasm пишет:
Алгоритм дешифрования описан в спецификации.

Тот, что описан в спецификации, будет дешифровать пока вселенная в сингулярность не сколлапсирует. Так и работу любой накрытой вмпротом функции понять можно - трассируя и отслеживая изменения в регистрах/памяти



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

Создано: 11 августа 2017 17:01
· Личное сообщение · #25

Doctor_Moriary пишет:
2.Будем ее исследовать.

Что именно "исследовать"?
Где Archer?)

| Сообщение посчитали полезным: plutos

Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 11 августа 2017 17:30
· Личное сообщение · #26

rmn пишет:
Тот, что описан в спецификации, будет дешифровать пока вселенная в сингулярность не сколлапсирует.

Тот что описан в спецификации без вопросов тебе всё расшифрует достаточно быстро.
При наличии закрытого и отрытого ключей.
Завязывай бред писать.



Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 17:36
· Личное сообщение · #27

cppasm пишет:
При наличии закрытого и отрытого ключей.

лолшто? Дешифровка rsa это есть поиск закрытого ключа по открытому. Или ты перепутал rsa, как шифрование с rsa, как генератор ключа для потокового шифра?



Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 11 августа 2017 17:39
· Личное сообщение · #28

Лолто.
По ходу перепутал ты.
Для расшифровки RSA нужен закрытый ключ (который генерируется вместе с открытым при генерации пары ключей).
Если у тебя его нет - это взлом, а не расшифровка.



Ранг: 158.6 (ветеран), 123thx
Активность: 0.140.5
Статус: Участник

Создано: 11 августа 2017 17:44
· Личное сообщение · #29

Ясно, понятно



Ранг: 369.8 (мудрец), 400thx
Активность: 0.390
Статус: Участник

Создано: 14 августа 2017 21:50 · Поправил: ntldr
· Личное сообщение · #30

Эх, вспомнил самого себя в школьном возрасте.

-----
PGP key <0x1B6A24550F33E44A>


| Сообщение посчитали полезным: 4kusNick
 eXeL@B —› Оффтоп —› Криптография

У вас должно быть 20 пунктов ранга, чтобы оставлять сообщения в этом подфоруме, но у вас только 0

   Для печати Для печати