Speicherbereich schützen?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Speicherbereich schützen?

Beitrag von Kukulkan »

Hallo,

Ich will eine DLL mit Verschlüsselungsalgorithmus aufrufen. Jetzt setze ich den Key im Code zusammen (hard-coded). Kann ich irgendwie den Speicherberich so schützen, dass ein Disassembler (zB W32DASM) nicht an diesen Code rankommt? Auch wenn ich den an die Crypto-DLL übergeben muss?

Oder hab ich da keine Chance?

Wie verstecken andere Programme ihre Keys für die interne Verschlüsselung? Zum Beispiel eine zertifizierte Massensignatur-Komponente (http://www.seccommerce.de)? Da darf ich ja auch auf keinen Fall an den Private-Key rankommen (habs mangels Möglichkeiten noch nicht versucht)...

Volker
Benutzeravatar
Hroudtwolf
Beiträge: 1416
Registriert: 30.10.2004 23:33
Kontaktdaten:

Beitrag von Hroudtwolf »

Indem du den Key verschlüsselt übergibst.
Du kannst den Übergabe Key schon verschlüsselt in dein Programm einbauen.
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Beitrag von Kukulkan »

Hallo Hroudtwolf

Dann muss ich den Key vor der Verwendung entschlüsseln (die DLL verlangt den Key ja im Klartext). Um den zu entschlüsseln muss ich wieder einen Key im Programm ablegen... Dann hab ich das selbe Problem wieder :-(

Ausserdem kann ich mit dem Disassembler ja die Werte bei der Übergabe an die DLL sehen, oder?

Grüsse,

Volker
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Beitrag von GPI »

Och, das zu knacken ist ziemlich einfach ohne Assembler. Einfach echte DLL umbennen und eine warper-DLL einfügen und schon bekommt man alle Parameter und somit auch das Passwort.

Tipp meinerseits: Denk nicht zu kompliziert, wenn man an was rankommen will, dann kommt man auch daran (genügen kriminelle Energie vorrausgesetzt). Großartig die Sicherheitsbranche revolutionieren werden wir sie eh nicht...
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Benutzeravatar
Hroudtwolf
Beiträge: 1416
Registriert: 30.10.2004 23:33
Kontaktdaten:

Beitrag von Hroudtwolf »

Das ist allerdings ein Problemm. Wenn es deine eigene DLL währe könntest du ja den Entschlüsseler dort einbauen. Dem ist ja nicht so.
Über kurz oder lang ist eh jede Methode gecrackt.
Da gabs schon mal ein interessantes Thema hier im Board.

http://www.robsite.de/php/pureboard/vie ... php?t=1642
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Beitrag von Kukulkan »

Hi Hroudtwolf,

Meine letzter Vorschlag war der, dass ich mit asymetrischer Verschlüsselung arbeiten könnte. Beim ersten Start erstelle ich ein Schlüsselpaar (Private und Public) das ich in der Crypto-API speichere. Ich verwende dann diese API um zu verschlüsseln und mit dem Public-Key kann ich wieder entschlüsseln. Ist allerdings nicht auf meinem Mist gewachsen und ich muss mich erst reinlesen...

Dennoch Danke,

Volker
Antworten