Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
440to444
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datei erstellen und verschlüsseln...

Datei erstellen und verschlüsseln...
15.06.2004 23:29:35
Torben
Hallo Excel-Gemeinde
Ich habe folgendes Problem. Ich möchte eine Datei erstellen (Text oder Binär) in der sensible Daten, wie z.B. Namen gespeichert werden.
Nehmen wir mal an, es soll eine Textdatei mit 10 Namen geschrieben werden, wie kann ich dort eine Verschlüsselung einbauen?
Ich hoffe ihr könnt mir weiterhelfen..
Gruß Torben

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei erstellen und verschlüsseln...
Udo
Google mal nach Verschlüsselung Algorhitmus
Udo
dANKE
16.06.2004 05:54:33
Torben
.
AW: Datei erstellen und verschlüsseln...
16.06.2004 14:28:39
Marco
Ein einfacher Verschlüsselungsalgorithmus ist das sogenannte Cäsar-Verfahren. Hier werden die einzelnen Zeichen der Zeichenkette einfach um einen festen Wert (z.B. 17) im Alphabet "nach hinten" verschoben. Hier eine Beispielimplementierung:
Private Sub CaesarVerschluesselung()
Dim klartext As String
Dim krypttext As String
Dim i As Integer
Dim z As Byte
klartext="zu verschlüsselnde Zeichenkette"
krypttext = ""
If klartext "" Then
For i = 1 To Len(klartext)
z = Asc(Right(Left(klartext, i), 1))
z = z + 17
krypttext = krypttext + Chr(z)
Next i
End If
End Function
Das zu verschlüsselnde Wort steht in der Variablen klartext.
Das verschlüsselte Wort steht nach Durchlauf der Schleife in der Variable krypttext und kann weiterverarbeitet (z. B. in eine Datei geschrieben) werden.
Die Entschlüsselung ist ebenfalls trivial, denn jedes Zeichen wird einfach wieder um 17 Stellen im Alphabet "nach vorne" geschoben (Umkehrabbildung):
Private Sub CaesarEntschluesselung()
Dim klartext As String
Dim krypttext As String
Dim i As Integer
Dim z As Byte
klartext=""
krypttext = "dhdstzw45zdbh"
If krypttext "" Then
For i = 1 To Len(krypttext)
z = Asc(Right(Left(krypttext, i), 1))
z = z - 17
klartext = klartext + Chr(z)
Next i
End If
End Function
Zu bedenken ist allerdings, ob dieser Algorithmus für den jeweiligen Verwendungszweck sicher genug ist. Falls einem Angreifer der Algorithmus bekannt ist, könnte dieser mittels Durchprobieren der Schlüssel (in diesem Fall ist der Schlüssel 17) auf schnelle Weise zum Erfolg kommen. Da es im ASCII-Zeichensatz nur 256 verschiedene Schlüssel gibt, ist dieses verfahren nur bedingt sicher. Durch eine Kryptoanalyse ist es auch möglich, auf einzelne Buchstaben aufgrund ihrer Häufigkeiten zu schließen. Z.B. kommt im Deutschen der Buchstabe "e" statistisch gesehen am häufigsten vor. Der Angreifer könnte durch Ersetzen der häufig vorkommenden verschlüsselten Zeichen durch die jeweiligen Klartextzeichen einen Teil der Klartextbotschaft entschlüsseln und den Rest durch probieren erschließen.
Es gibt natürlich bei weitem sicherere Verfahren. Beispielsweise könnte man das Cäsar- Verfahren dadurch erweitern, dass man als Schlüssel nicht eine feste Verschiebung, sondern eine Folge von unterschiedlichen Verschiebungen (im Idealfall eine zufällige Folge, die genauso lange ist, wie der Klartext) verwendet. Dann könnte man den ersten Buchstaben des Klartextes mit dem ersten Folgeglied des Schlüssels, den zweiten Buchstaben mit dem zweiten Folgeglied, etc. verschlüsseln. Dieses Verfahren wird auch als "One-Time-Pad-Verschlüsselung" bezeichnet, da jedes Folgenglied des Schlüssels nur einmal verwendet und dann verworfen wird. Aus diesem Grund greifen auch keine statistischen, kryptoanalytischen Verfahren, da zwei gleiche Zeichen im Klartext zu unterschiedlichen verschlüsselten Zeichen führen. Daher gilt dieses Verfahren auch als "unknackbar". Ein großer Nachteil ist hierbei jedoch der Austausch des Schlüssels, denn dieser müsste ja im Idealfall unendlich lang sein. In der Praxis gilt jedoch ein "relativ langer" Schlüssel (z. B. von 128 Bit) als sicher.
Es gibt noch viele, viele andere Verfahren (z.B. Public Key-Verfahren) über die ich mich hier noch auslassen könnte, aber es wohl aus Zeitgründen nicht kann. Im Internet gibt es aber viele interessante Quellen.
Ich hoffe bei deinem Problem geholfen zu haben!
Viele Grüße,
Marco
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige