[VB6] Daten verschlüsseln

12/08/2010 - 08:24 von W. Wolf | Report spam
Hallo,

ich speichere die Daten einer Anwendung mittels
Put #ff, , mDoc
mDoc ist ein Array aus komplexen benutzerdefinierten
Daten. Jetzt habe ich die Anforderung diese Daten
verschlüsselt abzulegen. Nun könnte ich mir eine
Verschlüsselung mittels Vernam-Chiffre gut vorstellen,
habe aber keine richtige Idee wie ich's umsetze.
Die Verschlüsselung selber bekomme ich hin, unklar
ist mir aber wie ich diese am besten anwende.
Welcher Weg ist besser? Zuerst die Daten des mDoc
verschlüsseln und danach mittels Put speichern (1)
oder temporàr unverschlüsselt speichern und das
Ergebnis verschlüsseln (2)? Zweiter Weg scheint mir
aus Sicherheitsgründen etwas problematisch zu sein
(wegen der temporàren unverschlüsselten Datei).
Es müsste halt möglich sein, mittels Put nicht in eine
Datei sondern in eine "Pipe" einer Verschlüsselungs-
Funktion zu schreiben und mit Get wieder daraus lesen.
Geht so was?
Weg 1 ist aufwendig, muß ich doch das ganze
Array durchklappern und alle Strukturmember einzeln
in Strings umwandeln und verschlüsseln.
Vielleicht sind aber meine Ansàtze total falsch
und es gibt da was ganz besseres? Sollte aber schon
mit VB-Mitteln umsetzbar sein (keine externen
Abhàngigkeiten), weil das ganze Programm aus einer
einzelnen Exe besteht und das auch so bleiben soll.

Exemplarischer Aufbau von mDoc:

Private mDoc As tSet

Private Type tSet
Version As String * 4
Settings() As String
Boxes() As tBox
...
End Type

Private Type tBox
BackColor As Long
Checked As Boolean
ForeColor As Long
Tag As String
Text As String
...
End Type


Schönen Gruß und Danke für Tipps!

W. Wolf
 

Lesen sie die antworten

#1 Ulrich Korndoerfer
12/08/2010 - 13:47 | Warnen spam
Hi,

W. Wolf schrieb:

Es müsste halt möglich sein, mittels Put nicht in eine
Datei sondern in eine "Pipe" einer Verschlüsselungs-
Funktion zu schreiben und mit Get wieder daraus lesen.
Geht so was?



Ja, das geht. Das UDT kann man mittels Put in eine Named Pipe schreiben,
und aus der Named Pipe dann den Inhalt in ein Bytearray holen. Umgekehrt
kann man ein Bytearray in eine Named Pipe schreiben und dann per Get das
UDT aus der Named Pipe lesen. Allerdings sind Named Pipes nur unter den
NT-Varianten von Windows (NT, W2K und up) verfügbar.

Bei Interesse kann ich auch Code posten.

Ulrich Korndoerfer

VB tips, helpers, solutions -> http://www.prosource.de/Downloads/
MS Newsgruppen Alternativen -> http://www.prosource.de/ms-ng-umzug.html

Ähnliche fragen