vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Verschlüsselung einer Datei 
Autor: CodenameReese
Datum: 29.03.10 00:46

Hallo ich habe mal wieder ein Problem mit der AES Verschlüsselung^^
Diesmal soll es eine beliebige Datei (Archive) sein... mein Problem ist dabei nicht die Verschlüsselung sondern die Entschlüsselung.
Das Problem ist das die Größe der verschlüsselten Datei von der normalen Datei abweicht da ja der Algorithmus noch einen Block anhängt (Padding)... (bei mir ändert sich dadurch die Größe aber mal um 17 mal um 30 Bytes oder so (unterschiedlich))
Nun brauch ich ja aber zum entschlüsseln ein Byte-Array mit einer festen Größe...
Also ich denke die entschlüsselte Datei sollte genauso groß sein wie die normale Datei (vor dem verschlüsseln) z.B.: vorher=1199, verschlüsselt=1216, entschlüsselt=1199^^

Hier mal mein Beispielcode:
    Private Sub EncryptAES()
 
        Dim RdM As New RijndaelManaged
        Dim MD5 As New MD5CryptoServiceProvider
        Dim Key() As Byte = MD5.ComputeHash(Encoding.UTF8.GetBytes( _
          "12345678ab"))
 
        MD5.Clear()
        RdM.Key = Key
        RdM.GenerateIV()
 
        Dim IV() As Byte = RdM.IV
 
        Dim FRStream As New FileStream("C:\test.zip", FileMode.Open)
        Dim Bytes(CInt(FRStream.Length - 1)) As Byte
        FRStream.Read(Bytes, 0, Bytes.Length)
        FRStream.Close()
 
        Dim FWStream As New FileStream("C:\test.enc", FileMode.Create)
        Dim CStream As New CryptoStream(FWStream, RdM.CreateEncryptor, _
          CryptoStreamMode.Write)
 
        FWStream.Write(IV, 0, IV.Length)
        CStream.Write(Bytes, 0, Bytes.Length)
 
        CStream.FlushFinalBlock()
        CStream.Close()
        FWStream.Close()
 
    End Sub
 
    Private Sub DecryptAES()
 
        Dim RdM As New RijndaelManaged
        Dim RdIVLength As Integer = 16
        Dim MD5 As New MD5CryptoServiceProvider
        Dim Key() As Byte = MD5.ComputeHash(Encoding.UTF8.GetBytes( _
          "12345678ab"))
 
        MD5.Clear()
 
        Dim FRStream As New FileStream("C:\test.enc", FileMode.Open)
        Dim IV(15) As Byte
 
        FRStream.Read(IV, 0, RdIVLength)
        RdM.IV = IV
        RdM.Key = Key
 
        Dim CStream As New CryptoStream(FRStream, RdM.CreateDecryptor, _
          CryptoStreamMode.Read)
        Dim Bytes(CInt(FRStream.Length - 1)) As Byte
 
        CStream.Read(Bytes, 0, Bytes.Length)
 
        CStream.Close()
        FRStream.Close()
 
        Dim FWStream As New FileStream("C:\test1.zip", FileMode.Create)
 
        FWStream.Write(Bytes, 0, Bytes.Length)
 
        FWStream.Close()
 
    End Sub
Also gehen tut es so... kann die Datei dannach nur nichtmehr öffnen^^ Ich denke mal das liegt an der Größe^^

MfG Reese
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Verschlüsselung einer Datei1.514CodenameReese29.03.10 00:46
Re: Verschlüsselung einer Datei1.000ModeratorDaveS29.03.10 09:22
Re: Verschlüsselung einer Datei972CodenameReese29.03.10 12:34
Re: Verschlüsselung einer Datei968ModeratorDaveS29.03.10 13:00
Re: Verschlüsselung einer Datei958CodenameReese29.03.10 13:33
Re: Verschlüsselung einer Datei1.019ModeratorDaveS29.03.10 14:13

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel