AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DEC 6.0 Salzstreuer

Ein Thema von Klapauzius · begonnen am 22. Dez 2020 · letzter Beitrag vom 22. Dez 2020
Antwort Antwort
Seite 2 von 2     12   
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
655 Beiträge
 
Delphi 12 Athens
 
#11

AW: DEC 6.0 Salzstreuer

  Alt 22. Dez 2020, 14:54
Das Prinzip von Salt habe ich nun verstanden.

Bleibt noch meine Frage:
wie erzeuge ich dann unterschiedliche Resultate bei der Stringverschlüsselung, wenn gleicher Text und gleiches Passwort verwendet wird (analog zu Lockbox)?
Indem du jedes Mal ein anderes Salt verwendest. Das Salt speicherst du zusammen mit dem Passwort in der Datenbank und kannst es somit vor dem Entschlüsseln wieder lesen. Natürlich können dann im Worst Case auch die bösen Jungs das Salt mit auslesen, aber das ist nur begrenzt schlimm, weil es ja vor allem darum geht, es zu erschweren, den Hash zu erraten mit Rainbow-Tabellen und ähnlichem.

Zusätzlich zum Salt kannst du auch noch eine Priese Pepper packen. Das wäre dann eine "geheime" Ergänzung zun Schlüssel, der eben nicht in der Datenbank landet und somit auch jedes Mal gleich ist, aber es somit weiter erschwert, ein Passwort zu erraten.

Siehe auch hier.
  Mit Zitat antworten Zitat
Klapauzius

Registriert seit: 8. Feb 2018
Ort: Region Bern (Schweiz)
74 Beiträge
 
Delphi 12 Athens
 
#12

AW: DEC 6.0 Salzstreuer

  Alt 22. Dez 2020, 15:39
All dies ist mir im Prinzip klar. Wie gesagt, ich hatte ursprüngliche eine andere Vorstellung von Salt, die ich nun korrigiert habe.

Aber:

Textverschlüsselung mit Lockbox erzeugt jedesmal ein anderes Ergebnis (bei gleichem Inhalt und gleichem Passwort) ohne dass etwas irgendwo hinterlegt werden muss. Wie funktioniert dies in Lockbox und wie realisiere ich das allenfalls in DEC

Edit:
Scheinbar suche ich Nonce
Zitat:
Während ein Salt bei Passwörtern zum Erhöhen der Entropie benutzt wird, werden Nonce und Padding in Verschlüsselungsalgorithmen benutzt. Die Nonce dient dabei dazu, die „Einmaligkeit“ eines Klartextes sicherzustellen, so dass sich trotz determinierter Vorgehensweise des Algorithmus der erzeugte Ciphertext unterscheidet, wenn der gleiche Klartext mehrmals verschlüsselt wird. Somit sollte die Nonce auch möglichst zufällig sein.
https://de.wikipedia.org/wiki/Salt_(Kryptologie)
Albert

Geändert von Klapauzius (22. Dez 2020 um 15:47 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#13

AW: DEC 6.0 Salzstreuer

  Alt 22. Dez 2020, 16:43
wie erzeuge ich dann unterschiedliche Resultate bei der Stringverschlüsselung, wenn gleicher Text und gleiches Passwort verwendet wird (analog zu Lockbox)?
Die Speichern das Salz mit im Ergebnis-Stream, am Anfang, vor den eigentlichen verschlüsselten Daten.
Man kann es einzeln speichern, oder eben mit einfügen (was man hier auch machen könnte).

In einem Datenbank-Feld (VARCHAR) hatte ich es so gelöst.
z.B. "algo:salt:data......" oder "salt:data......" als Base64 oder Hex.

Inklusive "Algorithmus/Modus", damit man neue Daten in einem "neueren/besseren" Modus speichern kann, ohne die alten Daten ändern zu müssen.
(bei Verschlüsselung kann man es entschlüsseln und neu verschlüsseln, aber bei einem HASH kann man die alten Daten ja nicht automatisch ändern und muß dann wissen was was ist)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (22. Dez 2020 um 17:49 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 Uhr.
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