Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Работа с данными

Страница: 1 | 2 | 3 |

 

  Вопрос: Создание базы данных при помощи программы Добавлено: 26.10.10 16:21  

Автор вопроса:  Алексей | ICQ: нету 

Ответить

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

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



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #31 Добавлено: 05.11.10 18:17
ладно, убедили. полез, поискал, нашел статейки, почитал, научился. заняло 15 минут.

  1. Dim Data As Byte() = New Byte() {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, &HA, &HB, &HC}
  2.  
  3. ...
  4.  
  5. Using W = New System.Security.Cryptography.AesManaged, C = W.CreateEncryptor, D = W.CreateDecryptor
  6.     Dim Crypted As Byte() = C.TransformFinalBlock(Data, 0, Data.Length)
  7.     Dim Decrypted As Byte() = D.TransformFinalBlock(Crypted, 0, Crypted.Length)
  8. End Using


упс, кажется оба шифр в обе стороны занимает всего 4 строчки. (a) невероятно

даже провел небольшую проверку скорости. 10 мегабайт случайных данных шифруются алгоритмом AES за 738 мс, разжимаются за 739 мс.

Ответить

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



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #32 Добавлено: 05.11.10 21:12
А указать ключ и вектор инициализации?

Ответить

Номер ответа: 33
Автор ответа:
 Дмитрий Юпатов



Вопросов: 4
Ответов: 457
 Web-сайт: cargomaster.at.ua/
 Профиль | | #33
Добавлено: 05.11.10 23:50
не, теперь чтение/запись данных в файл. Ну и выборку данных по какому-то условию.
В задаче упомянуто 1е и 3е приложение, которые как-то там обрабатывают данные.
:)
Собственно, фигня это все. Мы НИЧЕГО не знаем о задаче, но каждый гнет свое.

Ответить

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



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #34 Добавлено: 06.11.10 00:19
btw, считать XML из byte[] напрямую нельзя. Нужно или сконвертировать в string (при этом еще нужно знать в какой кодировке это делать), или кинуть поверх MemoryStream и читать из него.

Ответить

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



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #35 Добавлено: 06.11.10 11:11
Artyom пишет:
А указать ключ и вектор инициализации?
А зачем. ТС совершенно четко выразился что ему нужна простейшая защита, без 128-битных ёмана-мана ключей

Дмитрий Юпатов пишет:
теперь чтение/запись данных в файл
IO.File.WriteAllBytes(path, bytes()), IO.File.ReadAllBytes(path) лол :-D

Ответить

Номер ответа: 36
Автор ответа:
 Алексей



ICQ: нету 

Вопросов: 6
Ответов: 42
 Профиль | | #36 Добавлено: 06.11.10 11:17
AgentFireтеперь объясняй чё делал.
  1. Dim Data As Byte() = New Byte() {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, &HA, &HB, &HC}

Первая часть понятна, но почему Byte и что означает запись
New Byte() {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, &HA, &HB, &HC}
, а вот со второй вобще ничё не понял.
  1. Using W = New System.Security.Cryptography.AesManaged, C = W.CreateEncryptor, D = W.CreateDecryptor
  2.     Dim Crypted As Byte() = C.TransformFinalBlock(Data, 0, Data.Length)
  3.     Dim Decrypted As Byte() = D.TransformFinalBlock(Crypted, 0, Crypted.Length)
  4. End Using

Какие механизмы реализуются????
полез, поискал, нашел статейки
Где искал??? я всё излазил, нашел тоько для VB 6.0 в лучшем случае. Если можно точную ссыль.

Ответить

Номер ответа: 37
Автор ответа:
 Дмитрий Юпатов



Вопросов: 4
Ответов: 457
 Web-сайт: cargomaster.at.ua/
 Профиль | | #37
Добавлено: 06.11.10 11:33
IO.File.WriteAllBytes

Речь не об этом. Почитай пост 12. Так что твоя типа краткость тут неуместна

Ответить

Номер ответа: 38
Автор ответа:
 Алексей



ICQ: нету 

Вопросов: 6
Ответов: 42
 Профиль | | #38 Добавлено: 06.11.10 12:24
А как правильно:
  1. Public Class SettingForm
  2.     Private Sub SettingForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  3.         Dim oCat As
  4.         oCat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\new.mdb")
  5.     End Sub
  6. End Class

AS чё? Чтоб выпонялось дальнейшее
oCat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\new.mdb";)

Ответить

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



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #39 Добавлено: 06.11.10 16:48
AgentFire пишет:
А зачем. ТС совершенно четко выразился что ему нужна простейшая защита, без 128-битных ёмана-мана ключей

Например, затем что по дефолту System.Security.Cryptography.AesManaged инициализируется случайно создаными ключем и вектором инициализации, которые сразу после вызова End Using (т.е. Dispose) безвозвратно теряются. Таким образом, ты получаешь набор зашифрованых данных, которые никогда нельзя зашифровать.

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

Ответить

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



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #40 Добавлено: 06.11.10 16:56
мило, не знал. тогда можно и просто rc4

Ответить

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



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #41 Добавлено: 07.11.10 05:10
код?

Ответить

Страница: 1 | 2 | 3 |

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



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