AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Verschlüsselungsalgorithmus unicodefähig machen (kyrillische Buchstaben)
Thema durchsuchen
Ansicht
Themen-Optionen

Verschlüsselungsalgorithmus unicodefähig machen (kyrillische Buchstaben)

Ein Thema von DieDolly · begonnen am 18. Nov 2019 · letzter Beitrag vom 19. Nov 2019
Antwort Antwort
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.415 Beiträge
 
Delphi XE5 Professional
 
#1

AW: Verschlüsselungsalgorithmus unicodefähig machen (kyrillische Buchstaben)

  Alt 19. Nov 2019, 09:18
Wenn du mit Delphi und PHP gleichermaßen verschlüsseln willst, dann nimm die OpenSSL-lib.
Die gibt es in beiden Systemen.

libsodium kannst du auch verwenden, die gibt es ebenfalls für Delphi und PHP.

Was du nicht machen solltest, deine eigene Verschlüsselung!
Meist endet das in Verschusselung.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#2

AW: Verschlüsselungsalgorithmus unicodefähig machen (kyrillische Buchstaben)

  Alt 19. Nov 2019, 11:11
@Frühlingsrolle
könnte man diese String-Funktion vielleicht so einbauen?
Delphi-Quellcode:
procedure StringToStream(aStream: TStream; const aString: AnsiString);
begin
 aStream.Write(PAnsiChar(AString)^, Length(AString));
end;

procedure TfrXTEA.EncryptString(const Str: string);
begin
  FIsFromFile := false;
  if Assigned(FStream) then
    FStream.Free;
  StringToStream(FStream, Str);
end;

Über OpenSSL finde ich zu dem Thema nicht viel oder ich suche falsch.
Hier habe ich zwar was gefunden, aber da muss man Streams übergeben statt Strings.
Außerdem braucht man hier ein Zertifikat oder so wenn ich das richtig sehe.

Geht das nicht einfacher? Einfach nur String rein, String raus?

OpenSSL enc -base64 -aes256 -in text.plain -out text.aes256 -k secure
Delphi-Quellcode:
var
  EncUtil :TEncUtil;
begin
  EncUtil := TEncUtil.Create;
  try
    EncUtil.UseBase64 := True;
    EncUtil.Passphrase := 'secure';
    EncUtil.Cipher := 'AES-256';
    EncUtil.Encrypt('text.plain', 'text.aes256');
  finally
    EncUtil.Free;
  end;
end;

Würde es hier reichen einen TStringStream zu übergeben?
https://github.com/lminuti/Delphi-OpenSSL

Ich habe auch die Units von Gammatester. Kennt sich damit jemand aus?

Ich glaube am liebsten wäre es mir, wenn die von mir eingangs erwähnten Zeilen mehrere Zeichensätze abdecken könnten.
OpenSSL ist viel zu kompliziert, gammatesters Funktionen auch.

Geändert von DieDolly (19. Nov 2019 um 11:28 Uhr)
  Mit Zitat antworten Zitat
Alt 19. Nov 2019, 11:31     Erstellt von Frühlingsrolle
Dieser Beitrag wurde von Daniel gelöscht. - Grund: Verdacht auf SPAM und den damit verbundenen verschwenderischen Umgang von wertvollen Bits und Bytes
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#4

AW: Verschlüsselungsalgorithmus unicodefähig machen (kyrillische Buchstaben)

  Alt 19. Nov 2019, 11:32
Ich wäre dir sehr dankbar dafür. Und Bbommel sicherlich auch, da sie oder er gerade ein ähnliches Problem hat.
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.415 Beiträge
 
Delphi XE5 Professional
 
#5

AW: Verschlüsselungsalgorithmus unicodefähig machen (kyrillische Buchstaben)

  Alt 19. Nov 2019, 14:04
Ein Tipp habe ich noch. Du musst unbedingt auf die Encodings der Texte/Passwörter/Schlüssel achten.

Delphi benutzt WideString als UCS bzw. UTF-16 (ist nicht das gleiche! - aber jetzt erstmal einfach erklären)

PHP nutzt gar nichts. d.h. das ist etwas von der Weboberfläche abhängig, was der Browser/Webseite für ein Encoding vorgibt. Üblicherweise wird im Web UTF-8 genommen.
  Mit Zitat antworten Zitat
Alt 19. Nov 2019, 16:07     Erstellt von Frühlingsrolle
Dieser Beitrag wurde von Daniel gelöscht. - Grund: Verdacht auf SPAM und den damit verbundenen verschwenderischen Umgang von wertvollen Bits und Bytes
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#7

AW: Verschlüsselungsalgorithmus unicodefähig machen (kyrillische Buchstaben)

  Alt 19. Nov 2019, 17:29
Kein Problem, einen Versuch war es wert.
Ich habe meine Funktionen jetzt so umgeschrieben, dass die Eingabe (Data) erst in Base64 umgewandelt wird und anschließend wird erst verschlüsselt.
  Mit Zitat antworten Zitat
Antwort Antwort


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 03:35 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