dotnet-snippets.de
Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1314 | Anzahl registrierter User: 1266 | Besucher online: 15
Hauptmenü
Home
Snippet Wettbewerb
Top Ten
Zufälliger Snippet
Vista Gadget
T-Shirts für Geeks
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social
Facebook
Twitter
RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss Delphi.NET
Rss ASP.NET
Werbung
Alice DSL Flatrate

Partner
Partner von Codezone.de


Member of Microsoft Community Leader/Insider Program (CLIP)

Dateientschlüsselung mit Rijndael


Autor: Tim Hartwig
Sprache: VB.NET
Bewertung: 6,54
(3 Bewertungen)

Anzahl der Aufrufe: 4672
  

Beschreibung:

Mit dieser Funktion kann man eine Datei mit dem Rijndael Algorithmus entschlüsseln

Abgelegt unter: Entschlüsselung, Rijndael, AES.



Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Imports System.Security.Cryptography
Imports System.IO
Imports System.Text

Public Function DecryptFile(ByVal sSource As String, ByVal sTarget As String, ByVal sPassword As String, Optional ByVal BufferSize As Long = 4096) As Boolean
    Try
        Dim sKey As Byte() = (New UnicodeEncoding).GetBytes(sPassword.PadRight(8, "*"))
        Dim OldFileStream As New FileStream(sSource, FileMode.Open)
        Dim NewFileStream As New FileStream(sTarget, FileMode.Create)
        Dim RijndaelManaged As New RijndaelManaged
        Dim CryptoStream As New CryptoStream(OldFileStream, RijndaelManaged.CreateDecryptor(sKey, sKey), CryptoStreamMode.Read)

        Dim Data(BufferSize) As Byte
        Dim Buffer As Long
        Dim BufferCount As Long
        Dim FileLen As Long = OldFileStream.Length

        Do
            If BufferCount >= FileLen - BufferSize Then
                ReDim Data(FileLen - BufferCount)
                Buffer = CryptoStream.Read(Data, 0, FileLen - BufferCount)
                NewFileStream.Write(Data, 0, Buffer)
                Exit Do
            End If

            Buffer = CryptoStream.Read(Data, 0, BufferSize)
            NewFileStream.Write(Data, 0, BufferSize)
            BufferCount += Buffer
        Loop

        NewFileStream.Close()
        CryptoStream.Close()
        OldFileStream.Close()
    Catch
        Return False
    End Try
    Return True
End Function
Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)

hhh schrieb am:  02.02.2010 19:33:24

Wenn ich ein Passwort > 8 Zeichen verwende, funktioniert die Verschlüsselung nicht. Gibt's da eine Lösung?
Danke


schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.