Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: не могу найти Добавлено: 06.03.11 16:35  

Автор вопроса:  VbStarter | Web-сайт: moscowdevils.ru | ICQ: 357911808 
одну программку из примеров. автор Половой Александр. Шифрует текст по заданному ключу. необходим код операции дешифрования, код шифрования имеется.

Ответить

  Ответы Всего ответов: 13  

Номер ответа: 1
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #1 Добавлено: 06.03.11 17:27
юзай .Cryptograhpy

Ответить

Номер ответа: 2
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #2
Добавлено: 06.03.11 19:20
1. vb6
2. шифрование собственное
  1. On Error GoTo errHandler
  2. Dim i As Long 'номер символа текста
  3. Dim IKey As Integer 'номер символа ключа
  4. Dim StepIKey As Integer 'шаг перебора ключа
  5. Dim LenTextKey As Integer 'длина ключа
  6. Dim LenTextIsh As Long 'длина исходного текста
  7. '------------------------------------------------------------------------
  8.  
  9. StrCrypt = sEmpty
  10.  
  11. LenTextIsh = Len(TextIsh)
  12. LenTextKey = Len(TextKey)
  13.  
  14. If LenTextIsh = 0 Or LenTextKey = 0 Then
  15.     FlagCrypt = False
  16.     Exit Function
  17. End If
  18.  
  19. '------------------------------------------------------------------------
  20. '------------------------------------------------------------------------
  21. 'Для усложнения шифрования
  22. '------------------------------------------------------------------------
  23. If LenTextKey > 1 Then 'если ключ более 1 символа
  24.     '------------------------------------------------------------------------
  25.     'выбираем первый символ ключа в зависимости от длины текста и ключа
  26.     IKey = Int((LenTextKey + 2) * Rnd(-LenTextKey / LenTextIsh))
  27.     'IKey = LenTextKey + 1 'тест
  28.     'IKey = 0 'тест
  29.     '------------------------------------------------------------------------
  30.     '------------------------------------------------------------------------
  31.     'выбираем шаг перебора ключа в зависимости от длины текста и ключа
  32.     If Int(2 * Rnd(-LenTextKey / LenTextIsh)) = 0 Then StepIKey = 1 Else StepIKey = -1
  33.     If IKey = LenTextKey + 1 Then StepIKey = -1
  34.     If IKey = 0 Then StepIKey = 1
  35.     '------------------------------------------------------------------------
  36. Else
  37.     IKey = 1
  38. End If
  39. '------------------------------------------------------------------------
  40. 'Для усложнения шифрования
  41. '------------------------------------------------------------------------
  42. '------------------------------------------------------------------------
  43.  
  44.  
  45. '------------------------------------------------------------------------
  46. For i = 1 To LenTextIsh  'шифруем каждый символ текста
  47. '------------------------------------------------------------------------
  48.  
  49. DoEvents
  50. If FlagCrypt = False Then Exit Function
  51.  
  52. '------------------------------------------------------------------------
  53. '------------------------------------------------------------------------
  54. 'Для усложнения шифрования
  55. '------------------------------------------------------------------------
  56. 'перебираем ключ: то вперед, то назад
  57. If LenTextKey > 1 Then 'если ключ более 1 символа
  58.     If IKey = LenTextKey Then StepIKey = -1
  59.     If IKey = 1 Then StepIKey = 1
  60.     IKey = IKey + StepIKey
  61. End If
  62. '------------------------------------------------------------------------
  63. 'Для усложнения шифрования
  64. '------------------------------------------------------------------------
  65. '------------------------------------------------------------------------
  66.  
  67. 'Text1.Text = Text1.Text & Mid(TextKey, IKey, 1) & vbCrLf 'тест
  68. 'Text1.Text = Text1.Text & Str(IKey) & vbCrLf 'тест
  69.  
  70. '------------------------------------------------------------------------
  71. 'непосредственно шифрование:
  72. 'Chr(0) - не допустимо, поэтому условие "<>"
  73. 'если символ текста и символ ключа случайно совпали,
  74. 'то этот символ текста не шифруется
  75. 'FIXIT: Replace 'Mid' function with 'Mid$' function                                        FixIT90210ae-R9757-R1B8ZE
  76. 'FIXIT: Replace 'Mid' function with 'Mid$' function                                        FixIT90210ae-R9757-R1B8ZE
  77. If Asc(Mid(TextIsh, i, 1)) <> Asc(Mid(TextKey, IKey, 1)) Then
  78. 'FIXIT: Replace 'Mid' function with 'Mid$' function                                        FixIT90210ae-R9757-R1B8ZE
  79. 'FIXIT: Replace 'Mid' function with 'Mid$' function                                        FixIT90210ae-R9757-R1B8ZE
  80. 'FIXIT: Replace 'Mid' function with 'Mid$' function                                        FixIT90210ae-R9757-R1B8ZE
  81.     Mid(TextIsh, i, 1) = Chr(Asc(Mid(TextIsh, i, 1)) Xor Asc(Mid(TextKey, IKey, 1)))
  82. End If
  83. '------------------------------------------------------------------------
  84.  
  85. '------------------------------------------------------------------------
  86. Next i
  87. '------------------------------------------------------------------------
  88. StrCrypt1 = TextIsh 'записываем результат
  89. '------------------------------------------------------------------------
  90. Exit Function
  91. errHandler:
  92. MsgBox "В процессе обработки данных произошла ошибка: " & Err.Description, vbExclamation
  93. Logging
  94. End Function
  95. '------------------------------------------------------------------------
  96. 'Шифровать строчку

Ответить

Номер ответа: 3
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #3
Добавлено: 06.03.11 19:26
и ещё. ктоенить знает юзать app.licenses (както так) и в свойствах проекта "Reqire License" в 6 ?

Ответить

Номер ответа: 4
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #4 Добавлено: 06.03.11 20:59
VbStarter пишет:
1. vb6
2. шифрование собственное

Double Fail

Ответить

Номер ответа: 5
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #5
Добавлено: 06.03.11 21:34
честно мне насрать :) .
я просто какогото **** не могу найти это на сайте. обшарил примеры, полезные программы. придётся на другом компе икать в своей библиотеке примеров vb6...

Ответить

Номер ответа: 6
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #6
Добавлено: 06.03.11 21:36
*p.s. Winand же аудику сделал. прога норм. и даже не подумаешь что на 6 полностью. я тоже надеюсь года через 2 заверщить свой проджект. :)

Ответить

Номер ответа: 7
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #7
Добавлено: 06.03.11 21:40
*p.s.2. давайте по делу.

Ответить

Номер ответа: 8
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #8
Добавлено: 06.03.11 22:02
Кстати не полностью на vb6. Код драг'н'дропа файлов ИЗ приложения и хуки клавы и мыши (из-за использования отдельного потока) находится в отдельной сишной библиотеке.
Кстати недавно понял, сколько всего там сделал неправильно. Например зачем-то использую для каждого плейлиста отдельный ListView контрол, хотя выставляю флаг LVS_OWNERDATA с помощью которого подменять данные очень легко. В джаве и QT как раз используется прицип Model-View, т.е. данные (model) хранятся в одних объектах, а отображаются (view) c помощью других.

Ответить

Номер ответа: 9
Автор ответа:
 VbStarter



ICQ: 357911808 

Вопросов: 118
Ответов: 1340
 Web-сайт: moscowdevils.ru
 Профиль | | #9
Добавлено: 08.03.11 11:55
и почему в мс посчитали что на vb никому не будет надо делать длл обычные!?

Ответить

Номер ответа: 10
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #10 Добавлено: 08.03.11 12:07
Чтобы не позориться

Ответить

Номер ответа: 11
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #11 Добавлено: 08.03.11 15:01
Winand пишет:
 В джаве и QT как раз используется прицип Model-View, т.е. данные (model) хранятся в одних объектах, а отображаются (view) c помощью других.

Я думаю, ты еще больше будешь удивлен, когда увидешь, как это сделано в WPF.

VbStarter пишет:
*p.s.2. давайте по делу.

По делу - я бы использовал CryptoAPI.

Ответить

Номер ответа: 12
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #12
Добавлено: 08.03.11 19:43
Artyom, ничего не знаю о wpf, но если это библиотеки для отображения, то предполагаю, что там есть только часть View:)

кстати, я делал md5 хеширование для работы с last.fm с помощью CryptoAPI. Было удобно достаточно.

Ответить

Номер ответа: 13
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #13 Добавлено: 08.03.11 19:53
А в WPF кроме View ничего и не должно быть. Он не привязан к какому-то конкретному поставщику данных, или к какому-то патерну.
Может использоваться как один из компонентов патернов MVC, MVP, MVVM. А может и еще каких-то.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам