AGB  ·  Datenschutz  ·  Impressum  







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

DFM-Dateien verschlüsseln?

Ein Thema von a.def · begonnen am 30. Apr 2017 · letzter Beitrag vom 1. Mai 2017
Antwort Antwort
Seite 1 von 2  1 2      
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.403 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 19:01
Das Problem ist eigentlich weniger das Auslesen. Eher ist es u.a., dass man alles verändern kann.
Es soll Leute geben die verändern das Formular und Copyright und verticken das Programm anderweitig unter neuem Name/Logo weiter.
dann schreib diese Informationen halt nicht in das dfm, sondern setze die Information zur Laufzeit. Das ganze auch nicht im Klartext im Pas sondern verschlüsselt. Dazu noch die exe digital signieren und während der Laufzeit des Programms mehrfach unregelmäßig prüfen ob die exe noch das korrekte Zertifikat hat und ob das noch gültig ist.
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#2

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 19:06
Es ist nicht selbstverständlich, dass man Summe XYZ für ein Zertifikat ausgibt. Viele, auch ich, haben für solche Späte kein Geld.
Außerdem sind viele, ich ebenfalls eingeschlossen, keine Delphi-Profis und haben von Verschlüsselung Null Ahnung
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 19:13
Du kannst von den DFMs einen HASH generieren (AfterBuild), diesen nach dem Compileren in der EXE/Ressources speichern und bei Programmstart entsprechend reagieren, wenn jemand die DFM manipuliert.
Alternativ erstellst du den Copyright-Hinweis eben erst zur Laufzeit.

Die Zertifikate machen das auch nicht viel anders. (außer dass man zusätzlich das Zertifikat noch online verifizieren kann)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#4

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 20:37
Zitat:
Du kannst von den DFMs einen HASH generieren (AfterBuild), diesen nach dem Compileren in der EXE/Ressources speichern und bei Programmstart entsprechend reagieren, wenn jemand die DFM manipuliert.
Interessant. Kannst du mir Quellen nennen wo ich mehr darüber lernen kann?

Zitat:
Alternativ erstellst du den Copyright-Hinweis eben erst zur Laufzeit.
Was genau meinst du damit? Mein Copyright-Text, Programmtitel usw. wird eh zur Laufzeit erstellt.

Edit
ein kleiner Test lädt zwar meine DFM-Resource aber ich bekomme nur 2 Zeilen ausgegeben und die noch mit falschen Zeichen:
Delphi-Quellcode:
// DFM-Resource laden
 function LoadTextFromResourceByName(ResourceName: string): string;
 var
  ResourceStream: TResourceStream;
  sl: TStringList;
 begin
  if (FindResource(hInstance, PChar(ResourceName), RT_RCDATA) <> 0) then
   begin
    ResourceStream := TResourceStream.Create(hInstance, ResourceName, RT_RCDATA);

    try
     sl := TStringList.Create;

     try
      sl.LoadFromStream(ResourceStream);
      Result := sl.Text;
     finally
      sl.Free;
     end;
    finally
     ResourceStream.Free;
    end;
   end;
 end;

 showmessage( LoadTextFromResourceByName('TForm1') );

Geändert von a.def (30. Apr 2017 um 21:47 Uhr)
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#5

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 21:59
Um meine Programme vor unerwünschter Änderung zu schützen, hab' ich mir 'nen AfterCompile-Experten gebaut.

Nach dem Kompilieren errechnet der die MD5-Checksumme der Exe und schreibt diese in die EXE hinein.

Meine Programme erstellen beim Start die MD5-Checksumme der Exe und vergleichen diese mit der in die EXE geschriebenen.

Gibt es eine Abweichung, beendet sie sich mit 'ner entsprechenden Fehlermeldung.
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#6

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 22:01
Ihr habt alle so tolle Lösungen und ich habe Null Ahnung davon -.-'

Ich gehe stark davon aus, dass du nicht preisgibst wie das funktioniert oder?
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#7

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 22:48
Es gibt hier irgendwo ein Tutorial, wie man 'nen Experten baut.

Zum Bilden einer MD5-Checksumme gibt es Komponenten und sicherlich hier im Forum und im www diverse Quelltexte.

Man muss das nur kombinieren und eine eigene Lösung finden.

Wenn alle die gleiche Lösung nutzen, gibt es sicherlich auch schnell jemanden, der diese Lösung umgehen kann.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.771 Beiträge
 
Delphi 12 Athens
 
#8

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 22:55
ein kleiner Test lädt zwar meine DFM-Resource aber ich bekomme nur 2 Zeilen ausgegeben und die noch mit falschen Zeichen:
Wie schon erwähnt wurde, liegen die DFMs binär in der EXE. Man muss das also erst in Text umwandeln:

Delphi-Quellcode:
// DFM-Resource laden
function LoadTextFromResourceByName(ResourceName: string): string;
var
  ResourceStream: TResourceStream;
  StringStream: TStringStream;
begin
  if (FindResource(hInstance, PChar(ResourceName), RT_RCDATA) <> 0) then
  begin
    ResourceStream := TResourceStream.Create(hInstance, ResourceName,
      RT_RCDATA);
    try
      StringStream := TStringStream.Create;
      try
        ObjectBinaryToText(ResourceStream, StringStream);
        Result := StringStream.DataString;
      finally
        StringStream.Free;
      end;
    finally
      ResourceStream.Free;
    end;
  end;
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#9

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 22:56
Zitat:
ObjectBinaryToText
Das hatte ich eben sogar versucht, verflixt! Hatte wohl StringStream falsch deklariert und DataString nicht eingegeben gehabt
  Mit Zitat antworten Zitat
Poelser

Registriert seit: 21. Apr 2008
Ort: Europa
145 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: DFM-Dateien verschlüsseln?

  Alt 30. Apr 2017, 23:16
Es gab doch mal in MadExcept eine Möglichkeit, die Exe beim Programmstart auf Änderungen zu überprüfen. Gibt's das da noch?
  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 07:57 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