Сейчас на форуме: Rio, tyns777, zombi-vadim (+7 невидимых)

 eXeL@B —› Программирование —› Разыскиваются исходники DES ан C++
<< . 1 . 2 .
Посл.ответ Сообщение


Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 26 августа 2011 14:47 · Поправил: daFix
· Личное сообщение · #1

Перерыл кучу исходников, но все они являлись частью каких-либо проектов, которые было проблематично собрать или имели необъяснимые
ошибки при компиляции. Может быть у кого-то завалялись...
Желательно без бустов и прочих наворотов

Наткнулся в проге на одну хрень -
Code:
  1. key       :
  2. encrypted :
  3. decrypded :


А это получается при использовании сторонних прог -
Code:
  1. key       :
  2. encrypted :
  3. decrypded :


Где может быть соль?

-----
Research For Food




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

Создано: 20 июля 2014 16:40
· Личное сообщение · #2

mak
Code:
  1. 01AA6F59  /$  56            PUSH ESI                                        ; XXX.01AA6F59(guessed Arg1,Arg2)
  2. 01AA6F5A  |.  8BF1          MOV ESI,ECX
  3. 01AA6F5C  |.  8B4C24 08     MOV ECX,DWORD PTR SS:[ESP+8]
  4. 01AA6F60  |.  57            PUSH EDI
  5. 01AA6F61  |.  E8 BAFDFFFF   CALL 01AA6D20                                   ; [XXX.01AA6D20
  6. 01AA6F66  |.  8B4C24 10     MOV ECX,DWORD PTR SS:[ESP+10]
  7. 01AA6F6A  |.  8BF8          MOV EDI,EAX
  8. 01AA6F6C  |.  E8 AFFDFFFF   CALL 01AA6D20                                   ; [XXX.01AA6D20
  9. 01AA6F71  |.  03F8          ADD EDI,EAX
  10. 01AA6F73  |.  57            PUSH EDI                                        ; /Arg3 (long, короче число)
  11. 01AA6F74  |.  FF7424 14     PUSH DWORD PTR SS:[ESP+14]                      ; |Arg2 => [Arg2] //указатель
  12. 01AA6F78  |.  8BCE          MOV ECX,ESI                                     ; |
  13. 01AA6F7A  |.  FF7424 14     PUSH DWORD PTR SS:[ESP+14]                      ; |Arg1 => [Arg1] //указатель
  14. 01AA6F7E  |.  E8 FFFBFFFF   CALL 01AA6B82                                   ; \XXX.01AA6B82 <-- ВОТ CALL
  15. 01AA6F83  |.  5F            POP EDI
  16. 01AA6F84  |.  5E            POP ESI
  17. 01AA6F85  \.  C2 0800       RETN 8


reversecode
RSA * d2i_RSAPublicKey(RSA **a, unsigned char **pp, long length); ??
RSA * d2i_RSAPrivateKey(RSA **a, unsigned char **pp, long length); ??



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 20 июля 2014 17:30
· Личное сообщение · #3

ELF_7719116
А RE-SIGS не пробовал прогнать?
https://tuts4you.com/download.php?view.3407




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 20 июля 2014 18:35
· Личное сообщение · #4

алго кодирования это не семечки, они по огрызкам кода не угадываются
или по константам
или по анализу уже всей программы и ее функциональности
из битовых криптований распространенный только РСА, а там есть именно манипуляции с битами в твоем огрызке
все остальное в гадалке

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

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

Создано: 07 августа 2014 20:26 · Поправил: ELF_7719116
· Личное сообщение · #5

еще осмелюсь просить пованговать немного:
Code:
  1.  func. (arg.1-buffer in, arg.2-buffer out, arg.3 - lenght) 
  2. идет отдельной функцией
  3. ...
  4. 01B53140  |.  6A 08         PUSH 8                                   ; /Arg3 = 8
  5. 01B53142  |.  33DB          XOR EBX,EBX                              ; |
  6. 01B53144  |.  8D45 C8       LEA EAX,[EBP-38]                         ; |
  7. 01B53147  |.  53            PUSH EBX                                 ; |Arg2 => 0
  8. 01B53148  |.  50            PUSH EAX                                 ; |Arg1 => OFFSET LOCAL.14
  9. 01B53149  |.  E8 B219F2FF   CALL memset                              ; \memset
  10. ...
  11. 01B53164  |.  6A 3F         PUSH 3F
  12. 01B53166  |.  8945 E8       MOV DWORD PTR SS:[EBP-18],EAX
  13. 01B53169  |.  58            POP EAX
  14. 01B5316A  |.  56            PUSH ESI
  15. 01B5316B  |.  894D F4       MOV DWORD PTR SS:[EBP-0C],ECX
  16. 01B5316E  |.  8955 F0       MOV DWORD PTR SS:[EBP-10],EDX
  17. 01B53171  |.  57            PUSH EDI
  18. 01B53172  |>  8B4D C8       /MOV ECX,DWORD PTR SS:[EBP-38]
  19. 01B53175  |.  894D D0       |MOV DWORD PTR SS:[EBP-30],ECX
  20. 01B53178  |.  8B4D CC       |MOV ECX,DWORD PTR SS:[EBP-34]
  21. 01B5317B  |.  894D D4       |MOV DWORD PTR SS:[EBP-2C],ECX
  22. 01B5317E  |.  8D4D D0       |LEA ECX,[EBP-30]
  23. 01B53181  |.  895D D8       |MOV DWORD PTR SS:[EBP-28],EBX
  24. 01B53184  |.  895D DC       |MOV DWORD PTR SS:[EBP-24],EBX
  25. 01B53187  |.  894D 10       |MOV DWORD PTR SS:[EBP+10],ECX
  26. 01B5318A  |>  8B4D 10       |/MOV ECX,DWORD PTR SS:[EBP+10]
  27. 01B5318D  |.  0FB609        ||MOVZX ECX,BYTE PTR DS:[ECX]
  28. 01B53190  |.  8BF1          ||MOV ESI,ECX
  29. 01B53192  |.  8BF9          ||MOV EDI,ECX
  30. 01B53194  |.  C1EE 04       ||SHR ESI,4
  31. 01B53197  |.  C1EF 04       ||SHR EDI,4
  32. 01B5319A  |.  03F3          ||ADD ESI,EBX
  33. 01B5319C  |.  83E1 0F       ||AND ECX,0000000F
  34. 01B5319F  |.  2BCF          ||SUB ECX,EDI
  35. 01B531A1  |.  8D55 D8       ||LEA EDX,[EBP-28]
  36. 01B531A4  |.  8D34F5 581317 ||LEA ESI,[ESI*8+2171358]
  37. 01B531AB  |.  8D3CCD 800000 ||LEA EDI,[ECX*8+80]
  38. 01B531B2  |.  C745 FC 08000 ||MOV DWORD PTR SS:[EBP-4],8
  39. 01B531B9  |>  8A0C37        ||/MOV CL,BYTE PTR DS:[ESI+EDI]
  40. 01B531BC  |.  0A0E          |||OR CL,BYTE PTR DS:[ESI]
  41. 01B531BE  |.  080A          |||OR BYTE PTR DS:[EDX],CL
  42. 01B531C0  |.  42            |||INC EDX
  43. 01B531C1  |.  46            |||INC ESI
  44. 01B531C2  |.  FF4D FC       |||DEC DWORD PTR SS:[EBP-4]
  45. 01B531C5  |.75 F2         ||\JNZ SHORT 01B531B9
  46. 01B531C7  |.  83C3 20       ||ADD EBX,20
  47. 01B531CA  |.  FF45 10       ||INC DWORD PTR SS:[EBP+10]
  48. 01B531CD  |.  81FB 00010000 ||CMP EBX,100
  49. 01B531D3  |.7C B5         |\JL SHORT 01B5318A
  50. 01B531D5  |.  8B4D D8       |MOV ECX,DWORD PTR SS:[EBP-28]
  51. 01B531D8  |.  8B55 DC       |MOV EDX,DWORD PTR SS:[EBP-24]
  52. 01B531DB  |.  894D E0       |MOV DWORD PTR SS:[EBP-20],ECX
  53. 01B531DE  |.  8A5D E1       |MOV BL,BYTE PTR SS:[EBP-1F]
  54. 01B531E1  |.  884D E3       |MOV BYTE PTR SS:[EBP-1D],CL
  55. 01B531E4  |.  8A4D DB       |MOV CL,BYTE PTR SS:[EBP-25]
  56. 01B531E7  |.  8955 E4       |MOV DWORD PTR SS:[EBP-1C],EDX
  57. 01B531EA  |.  884D E0       |MOV BYTE PTR SS:[EBP-20],CL
  58. 01B531ED  |.  8A4D E2       |MOV CL,BYTE PTR SS:[EBP-1E]
  59. 01B531F0  |.  884D E1       |MOV BYTE PTR SS:[EBP-1F],CL
  60. 01B531F3  |.  8A4D DF       |MOV CL,BYTE PTR SS:[EBP-21]
  61. 01B531F6  |.  8855 E7       |MOV BYTE PTR SS:[EBP-19],DL
  62. 01B531F9  |.  8A55 E5       |MOV DL,BYTE PTR SS:[EBP-1B]
  63. 01B531FC  |.  884D E4       |MOV BYTE PTR SS:[EBP-1C],CL
  64. 01B531FF  |.  8A4D E6       |MOV CL,BYTE PTR SS:[EBP-1A]
  65. 01B53202  |.  8855 E6       |MOV BYTE PTR SS:[EBP-1A],DL
  66. 01B53205  |.  884D E5       |MOV BYTE PTR SS:[EBP-1B],CL
  67. 01B53208  |.  8B75 E4       |MOV ESI,DWORD PTR SS:[EBP-1C]
  68. 01B5320B  |.  8BD6          |MOV EDX,ESI
  69. 01B5320D  |.  C1E2 1F       |SHL EDX,1F
  70. 01B53210  |.  8BCE          |MOV ECX,ESI
  71. 01B53212  |.  D1E9          |SHR ECX,1
  72. 01B53214  |.  0BD1          |OR EDX,ECX
  73. 01B53216  |.  8BCA          |MOV ECX,EDX
  74. 01B53218  |.  8BFA          |MOV EDI,EDX
  75. 01B5321A  |.  83F7 38       |XOR EDI,00000038
  76. 01B5321D  |.  C1EF 02       |SHR EDI,2
  77. 01B53220  |.  23F8          |AND EDI,EAX
  78. 01B53222  |.  81F1 00008001 |XOR ECX,01800000
  79. 01B53228  |.  C1E9 16       |SHR ECX,16
  80. 01B5322B  |.  23C8          |AND ECX,EAX
  81. 01B5322D  |.  8B0C8D 580C17 |MOV ECX,DWORD PTR DS:[ECX*4+2170C58]
  82. 01B53234  |.  0B0CBD 581117 |OR ECX,DWORD PTR DS:[EDI*4+2171158]
  83. 01B5323B  |.  8BFA          |MOV EDI,EDX
  84. 01B5323D  |.  C1EF 12       |SHR EDI,12
  85. 01B53240  |.  83F7 ED       |XOR EDI,FFFFFFED
  86. 01B53243  |.  23F8          |AND EDI,EAX
  87. 01B53245  |.  0B0CBD 580D17 |OR ECX,DWORD PTR DS:[EDI*4+2170D58]
  88. 01B5324C  |.  8BFA          |MOV EDI,EDX
  89. 01B5324E  |.  C1EF 1A       |SHR EDI,1A
  90. 01B53251  |.  83F7 F1       |XOR EDI,FFFFFFF1
  91. 01B53254  |.  23F8          |AND EDI,EAX
  92. 01B53256  |.  0B0CBD 580B17 |OR ECX,DWORD PTR DS:[EDI*4+2170B58]
  93. 01B5325D  |.  8BFA          |MOV EDI,EDX
  94. 01B5325F  |.  C1EF 0A       |SHR EDI,0A
  95. 01B53262  |.  83F7 F1       |XOR EDI,FFFFFFF1
  96. 01B53265  |.  23F8          |AND EDI,EAX
  97. 01B53267  |.  0B0CBD 580F17 |OR ECX,DWORD PTR DS:[EDI*4+2170F58]
  98. 01B5326E  |.  8BFA          |MOV EDI,EDX
  99. 01B53270  |.  C1EF 06       |SHR EDI,6
  100. 01B53273  |.  81F2 00800600 |XOR EDX,00068000
  101. 01B53279  |.  83F7 F2       |XOR EDI,FFFFFFF2
  102. 01B5327C  |.  C1EA 0E       |SHR EDX,0E
  103. 01B5327F  |.  23F8          |AND EDI,EAX
  104. 01B53281  |.  0B0CBD 581017 |OR ECX,DWORD PTR DS:[EDI*4+2171058]
  105. 01B53288  |.  23D0          |AND EDX,EAX
  106. 01B5328A  |.  0B0C95 580E17 |OR ECX,DWORD PTR DS:[EDX*4+2170E58]
  107. 01B53291  |.  8BD6          |MOV EDX,ESI
  108. 01B53293  |.  C1EA 1F       |SHR EDX,1F
  109. 01B53296  |.  8BFE          |MOV EDI,ESI
  110. 01B53298  |.  03FF          |ADD EDI,EDI
  111. 01B5329A  |.  0BD7          |OR EDX,EDI
  112. 01B5329C  |.  83F2 F7       |XOR EDX,FFFFFFF7
  113. 01B5329F  |.  23D0          |AND EDX,EAX
  114. ...

мне сначала показалось, что похоже на RC2, но это все таки не он. константы - в гугле нигде такие не встречаются. и еще ссылки к структурам - 0x2171358 (битовые маски - единицы(2,4,8...) один или два байта, т.е. 00000100 00000100 0000 0101 00000100), есть еще 00828000 00000000 00800000 02828000 02808000 02820000 02000000 00800000... и тд
РЕШЕНО!



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

Создано: 21 сентября 2014 19:04
· Личное сообщение · #6

а есть у кого нить/где нибудь сорцы RSA, только в portable варианте (скажем так): два-три файло (в делфиях такое видел) .c и .h с функами encrypt и decrypt?? тупо прииклудить и заюзать.
пару криптоалго я так выдрал с openssl и вклеил к себе в проект, а RSA дохрена всякой ненужной мне херни за собой тянет как и в опенссл и поларссл. компилить и встраивать в проект опенссл/поларссл через пухоны мне лень, отдельная дллка тоже не катит.



Ранг: 262.5 (наставник), 337thx
Активность: 0.340.25
Статус: Участник

Создано: 21 сентября 2014 19:48
· Личное сообщение · #7

Заюзать родное виндовое CryptoAPI? Что-то типа
Code:
  1. HCRYPTPROV hProv;
  2. HCRYPTKEY hKey;
  3. #include <WinCrypt.h>
  4. CryptAcquireContext( &hProv, NULL, MS_ENHANCED_PROV, PROV_RSA_FULL, CRYPT_NEWKEYSET)
  5. CryptGenKey( hProv, AT_KEYEXCHANGE, 1024<<16, &hKey)




Ранг: 33.8 (посетитель), 11thx
Активность: 0.020.01
Статус: Участник

Создано: 22 сентября 2014 10:55
· Личное сообщение · #8

ELF_7719116 пишет:
а есть у кого нить/где нибудь сорцы RSA

тык

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

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

Создано: 22 сентября 2014 17:17
· Личное сообщение · #9

TryAga1n пишет:
Заюзать родное виндовое CryptoAPI

хочу именно сырки (по существу там ведь делить и умножать, разве что числа очень очень большие). А спешу уточнить такой момент: чтобы компиль использовал SSE2 и ему подобные вкусности CPU, должно быть как-то прописано в исходном коде ИЛИ же собственно компилятор может самостоятельно догадаться(при условии что разрешена такая оптимизация) где есть возможность их вставить??




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 22 сентября 2014 17:34
· Личное сообщение · #10

компилятор



Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 22 сентября 2014 17:52
· Личное сообщение · #11

Уточню, компилятор - в меру своих возможностей. Но идеальный вкусный SSE2 - только руками. И там много подводных камней. Оптимизация - целая отдельная наука, я бы сказал.

| Сообщение посчитали полезным: VodoleY
<< . 1 . 2 .
 eXeL@B —› Программирование —› Разыскиваются исходники DES ан C++
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати