Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi einfaches Verschlüsseln (https://www.delphipraxis.net/207354-einfaches-verschluesseln.html)

Sinspin 17. Mär 2021 12:13

AW: einfaches Verschlüsseln
 
Zitat:

Zitat von KodeZwerg (Beitrag 1485301)
Verdoppelt sich nicht dadurch das ganze? Also ich meine Datengröße.

Nein, bei mir nicht.

Zitat:

Zitat von himitsu (Beitrag 1485307)
Aber auch einen OTP kann man kleiner sein. Gut, da er dann mehrfach angewendet wird, könnte es die Sicherheit bissl vermindern.

Die Matrix als auch den Key erzeuge ich aus dem Passwort via krytografischem Zufallsgenerator.
Das produziert Angriffsfläche, daher werden die Daten vorm verschlüsseln gesalzen.
100% sicher ist die Lösung nicht. Darum geht es mir aber auch garnicht.
Ich habe nur keine Lust auf eine Textdatei in der alles in Plaintext steht.

himitsu 17. Mär 2021 12:44

AW: einfaches Verschlüsseln
 
Es wurden Fremdkomponenten genannt.

Wie geagt, ganz einfach und mit Hausmitteln:
Man kann auch einfach ein TZipFile mit Passwort verwenden
und die Datei via TMemoryStream+TStringList/TMemIniFile/TEncoding oder via TStringStream "intern" rausholen/speichern.

KodeZwerg 17. Mär 2021 14:08

AW: einfaches Verschlüsseln
 
Zitat:

Zitat von Sinspin (Beitrag 1485351)
Die Matrix als auch den Key erzeuge ich aus dem Passwort via krytografischem Zufallsgenerator.
Das produziert Angriffsfläche, daher werden die Daten vorm verschlüsseln gesalzen.
100% sicher ist die Lösung nicht. Darum geht es mir aber auch garnicht.
Ich habe nur keine Lust auf eine Textdatei in der alles in Plaintext steht.

Das klingt interessant, nette Information!
Auch Danke fürs schreiben "erst packen dann krypten", als ich das tippste hab ich noch nicht voll nachgedacht, klar ist "Rohmaterial" stärker Kompressierbar (gibts das Wort?) gegenüber verschlüsseltem Inhalt.

Willie1 18. Mär 2021 09:37

AW: einfaches Verschlüsseln
 
Hallo Freunde*innen,
es geht in der Tat darum, zu verhindern, dass jemand ohne Mühe meine Passworte einsehen könnte. Das ist sehr unwahrscheinlich, meine Frau hat ihren eigenen PC und wer sollte an meine Daten kommen. Schließlich sind meine Computer Start-Passwortgeschützt. Aber trotzdem sollen meine "Geheimnisse" nicht offen herumliegen. Ich habe 3 Einbrüche hinter mir, die Einbrecher haben sich zum Glück nicht für die Computer interessiert! Deshalb sind mir eure Hinweise sehr wichtig. Die Banken usw. bombardieren einen mit PINs, aufschreiben darf man sie nicht aber alle im Kopf behalten, geht auch nicht. Ich melde mich.

Zur Zeit bin ich dabei, einen Impftermin zu bekommen, das ist sehr kompliziert und anstrengend für mich.
Bis bald Grüße Willie.

himitsu 18. Mär 2021 10:21

AW: einfaches Verschlüsseln
 
NTFS bietet eine Verschlüsselung, die ist an den Nutzeraccount deines Windows-Benutzers gebunden.
Wenn man das nutzt, sollte man auf jeden Fall soeine Wiederherstellungsdiskette (oder wie man das jetzt nennt) erstellen, denn falls Windows kaputt ist, wären auch diese Daten futsch.

Bei mir ist es ein verschlüsseltes VBerzeichnis im NAS.

Es gibt auch USB-Sticks mit PIN oder sogar Fingerabdruckscanner.



Selbet ein "einfaches" XOR ist per se sicher.

Ver und entschlüsseln
Delphi-Quellcode:
// S = AnsiString oder UTF8String
RandSeed := .....;
for i := 1 to Length(S) do
  S[i] := AnsiChar(Ord(S[i]) xor Random(256)); // für UnicodeString 65536 da 2 Byte

Randomize; // Zufallsgenerator zufällig
Achtung: heoretisch könnte sich der Pseudozufallsgenerator von Delphi mal ändern (hat er zwar seit 20 Jahren nicht, aber könnte.
Aber man kann das "Random" ja durch eine eigene Formel ersetzen. So lange das Programm nich neu kompiliert wird, bleibt es aber auch unverändert.

Und sooo schwer sind die vorher schon genannten Verschlüsselungen auch nicht, als dass man sie nicht nutzen könnte.

Andreas13 18. Mär 2021 11:46

AW: einfaches Verschlüsseln
 
Zitat:

Zitat von Willie1 (Beitrag 1485423)
...es geht in der Tat darum, zu verhindern, dass jemand ohne Mühe meine Passworte einsehen könnte.

Du könntest mit TrueCrypt, VeraCrypt oder GostCrypt einen verschlüsselten Container auf Deiner Festplatte für Deine Daten erstellen.

Ich benutze TrueCrypt (die relativ „knack-sichere“ Version 7.1a) seit vielen Jahren als eine für mich zufriedenstellende Lösung. Dabei habe ich etliche verschlüsselte Container in der Größe von einigen 100 MB bis zu 4 TB erstellt, die ich je nach Gebrauch innerhalb von ca. 1 Sekunde hoch- und runterfahren („mounten“ & „dismounten“) kann. Bei jedwedem Internetzugang werden die gemounteten Laufwerke mit empfindlichem Inhalt wie Paßwörter, Adressenlisten, Bankverbindungen etc. blitzschnell heruntergefahren.

Für Deine Paßwörter kannst Du einen kleineren Extra-Container erstellen. Auch Container in Container ist ohne Probleme möglich.
Gruß, Andreas

DeddyH 18. Mär 2021 11:57

AW: einfaches Verschlüsseln
 
Oder noch eine ganz simple Variante: die zu "verschlüsselnden" Dateien in einen BASE64-String wandeln. Dann ein zufälliges Byte erzeugen und jedes Zeichen des BASE64-Strings damit verxodern. Ans Ende der Daten dann noch das zufällige Byte schreiben. Zum "Entschlüsseln" das letzte Byte der Daten ermitteln, damit wieder alle Bytes verxodern und das Ergebnis BASE64 dekodieren. Das ist natürlich nicht annähernd sicher, aber für einen zufälligen Betrachter tut sich da nur binärer Salat auf.

Willie1 18. Mär 2021 16:21

AW: einfaches Verschlüsseln
 
Hallo,
auf dem alten Vista-PC habe ich TrueCrypt. Der Container läuft seit Jahren prima. TC soll aber doch geknackt sein.
Mit xor habe ich gemacht aber nicht mit Random, da trau ich Delphi nicht.

Ich habe was fertig, das ich seit 10 Jahren benutze, seit 2017 mit WideString statt AnsiString . Nur hatte ich übersehen, dass bei WideString jedes 2. Byte 0 ist. Deshalb habe ich mich gemeldet. Ich habe auch etwas Camouflage betrieben, tarnen kann besser als verstecken sein.
Kann ich das Projekt hier mal vorstellen? Als Dateianhang gepackt ? oder?

Willie.

KodeZwerg 18. Mär 2021 16:34

AW: einfaches Verschlüsseln
 
Zitat:

Zitat von Willie1 (Beitrag 1485455)
Ich habe was fertig, das ich seit 10 Jahren benutze, seit 2017 mit WideString statt AnsiString . Nur hatte ich übersehen, dass bei WideString jedes 2. Byte 0 ist. Deshalb habe ich mich gemeldet. Kann ich das Projekt hier mal vorstellen? Als Dateianhang gepackt ?

Genau deswegen bat ich Dich ja im anderen Thread (speicher string) das Du ein neues Thema aufmachst um Deinen Code gerade zu biegen.
Weil kein Quelltext kam hab ich halt das Listing der Krypto und Archiver genannt.

Mir wäre es am liebsten doppelt.
Einmal als Posting mit dem Kodier/DeKodier-Teil, das man gleich sieht was einen erwartet.
Einmal eine mini Demo (.dpr, .pas, .frm, .res bei Vcl Projekten) verpackt als Archiv (.zip, .rar, .7z), da wir das einfach nur entpacken brauchen und loslegen können.

Nur so eine Idee, also um Deine Frage zu beantworten, Ja :-]

Willie1 18. Mär 2021 17:24

AW: einfaches Verschlüsseln
 
Liste der Anhänge anzeigen (Anzahl: 1)
Anbei die DLL als Quelltext zum Codieren/Decodieren.

Verschuesseln/Entschluesseln sind alt und nicht mehr notwendig!


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:37 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz