AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Delphi DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung
Thema durchsuchen
Ansicht
Themen-Optionen

DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

Ein Thema von Aviator · begonnen am 10. Feb 2021 · letzter Beitrag vom 15. Feb 2021
Antwort Antwort
Seite 1 von 2  1 2      
DieDolly

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

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 10. Feb 2021, 19:31
Ich verstehe, wie man eine Datei reinlädt, sie ver- und entschlüsselt. Der Rest ist ein Geheimnis für mich.
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.047 Beiträge
 
Delphi 12 Athens
 
#2

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 10. Feb 2021, 19:41
Habe mir den Anhang noch nicht anschauen können, empfehle aber aus verschiedenen Gründen den Development Zweig zu nutzen.

Dort ist das mit dem Progress schon so umgebaut wie es mit V6.1 veröffentlicht werden wird. Sollte einfacher als das aus DEC 6.0 sein. Und ja ein einfaches Demo Programm ist da auch dabei.

Zu Base64: in der Format.pas ist da was passendes für drin...
Und Methoden die auf RawByte Strings arbeiten sind auch vorhanden, da sollte es auch keine Unicode String #0 Probleme geben.
  Mit Zitat antworten Zitat
EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
419 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 10. Feb 2021, 20:55
die in #3 hochgeladene Demo ist auf Basis der Version 6.1 von DEC (Develelopment-Zweig) erstellt worden. Hinsichtlich der Progress-Funktion habe ich mich für die 3. Variante "anonymous method as progress event" entschieden. Auch die anderen in der Demo von TurboMagic aufgeführten Varianten wären möglich.
Die Demo ist also auf dem neusten Stand des DEC 6.1.
Norbert
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 10. Feb 2021, 21:20
Ich schaue mir die Format.pas morgen mal genauer an sofern ich die Zeit dazu finde. Danke schonmal für den Hinweis. Um das Verschlüsseln einer Datei geht es hier nicht im Geringsten sondern um das Verschlüsseln eines einzelnen Strings.
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 12. Feb 2021, 16:23
Zu Base64: in der Format.pas ist da was passendes für drin...
Und Methoden die auf RawByte Strings arbeiten sind auch vorhanden, da sollte es auch keine Unicode String #0 Probleme geben.
Ich habe mir die DECFormats.pas jetzt mal angeschaut. Allerdings finde ich da jetzt nicht wirklich einen passenden Funktionsaufruf um mein Problem zu lösen. Kannst du mir da noch etwas auf die Sprünge helfen?
[EDIT] Zudem wäre die Frage, ob diese ganze hin und her Konvertiererei da sein muss oder ob das noch einfacher geht. Daher nochmal die Bitte ob sich jemand, der sich nicht über irgendeine UI und obfuscated Code auslassen will, mal meine Klasse in meinem ersten Post anschauen und was dazu sagen kann.[/EDIT]

Ich habe mir aktuell mal damit beholfen, dass ich alle #0 Chars aus meinem String entferne. Aber das ist ja nicht die Lösung. Wichtig ist nochmal, dass ich keine Datei sondern nur einen einfachen String AES verschlüsseln möchte.

Geändert von Aviator (12. Feb 2021 um 16:26 Uhr)
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.174 Beiträge
 
Delphi 12 Athens
 
#6

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 12. Feb 2021, 08:01
Der Rest ist ein Geheimnis für mich.
Genau das ist ja der Sinn der Sache
  Mit Zitat antworten Zitat
DieDolly

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

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 12. Feb 2021, 08:03
Damit meine ich das UI.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 12. Feb 2021, 09:32
Der Rest ist ein Geheimnis für mich.
Genau das ist ja der Sinn der Sache
Damit meine ich das UI.
Klar,

denn vom Code her sollte es ja kein Geheimnis sein.
"security through obscurity" ist nicht per se sicher.

Es ist bekannt, damit kann auch jeder nach Schwachstellen oder absichtlichen Hintertüren schauen,
aber es muß schwer/aufwändig/langsam genug sein, damit man es dennoch nicht so laucht aufbekommt.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.047 Beiträge
 
Delphi 12 Athens
 
#9

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 12. Feb 2021, 16:57
Hallo,

probiere mal den Ansatz (ungetestet):

Delphi-Quellcode:
function TAes.Encrypt(PlainText: string; IV:TBytes):string;
var
  AES: TCipher_AES;
  Res: TArray<Byte>;
begin
  try
    AES := TCipher_AES.Create;
    try
      AES.Mode := cmCBCx;
      AES.Init(FAesKeyReader.GetAesKey, IV);
      result := DECFormat.TFormat_Base64.Encode(IV + AES.EncodeStringToBytes(RawByteString(PlainText)));
    finally
      AES.Free;
    end;
  except
    // snip
  end;
end;
Liefert gleich alles in Base64 zurück.
Seit XE7 kann man Arrays auch einfach so verketten...
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: DEC6.0 Verständnisfrage AES Ver-/Entschlüsselung

  Alt 12. Feb 2021, 18:16
Also mit der Lösung zum Verschlüsseln funktioniert dann auch das Entschlüsseln ohne die #0 Chars. Danke!
Allerdings bleibe ich bei der Base64 Encode Methode aus System.NetEncoding, da die mir direkt einen String zurückgibt den ich dann weiterverarbeiten/speichern kann.

Was mir noch etwas Sorge bereitet ist das Trennen des IVs von den eigentlichen Nutzdaten. Wird dafür wirklich ein Stream benötigt oder gibt es hierfür auch einen einfacheren Weg wie beim Verknüpfen von zwei Byte Arrays?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 08:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz