Presne, už som si aj všimol, že som to s tými bitmi a bajtmi úplne poplietol. Tú časť už mám tak, ako som zamýšľal, ale teraz ako z CryptoStreamu (mód read) získať dáta ? Keby mi vyhovovali dáta ako String tak by som mohol použiť StreamReader.ReadToEnd(), lenže zašifrované dáta nemusia byť pekný reťazec, a napríklad by to mohlo urobiť blbosti s hodnotami, ktoré zodpovedajú znakom CR, resp. LF . Preto by som ocenil tie dáta vo forme poľa bajtov.Skúsil som toto:
Friend Function Encrypt(ByVal data As Byte(), ByVal pass As String) As Byte()
Dim aes As New AesManaged
SetPassword(pass, aes)
Dim src As New MemoryStream(data)
Dim sec As New CryptoStream(src, aes.CreateEncryptor, CryptoStreamMode.Read)
Dim b(sec.Length - 1) As Byte
sec.Read(b, 0, sec.Length)
sec.Dispose()
src.Dispose()
aes.Clear()
Return b
End Function
Ale padá to, lebo CryptoStream(podľa znenia výnimky) nepodporuje seeking.
|