AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Frage bez.Kopierschutz in Delphi(H-id bsp.)
Thema durchsuchen
Ansicht
Themen-Optionen

Frage bez.Kopierschutz in Delphi(H-id bsp.)

Ein Thema von sunrise · begonnen am 31. Okt 2008 · letzter Beitrag vom 1. Nov 2008
Antwort Antwort
sunrise

Registriert seit: 20. Jan 2008
15 Beiträge
 
Delphi 6 Enterprise
 
#1

Frage bez.Kopierschutz in Delphi(H-id bsp.)

  Alt 31. Okt 2008, 23:44
Hallo

Ich habe neulich von einem freund ein code beispiel bekommen,welcher die Seriennummer der HD ausliest und beim Programmstart diese überprüft. Ich habe die vermutung das sich nach diesem Hardware-ID-Protection Beispiel das Programm nach einem Format nicht mehr starten lässt ,da sich die Nr.der HD doch ändert. Was meint ihr dazu?

Code:
function GetSerialNumber(const ADrive: Char): integer;
var
SerialNum: DWORD;
Dummy: DWord;
Buffer: array[0..255] of Char;
begin
Result:=0;
if GetVolumeInformation(PChar(ADrive+':\'),buffer,
SizeOf(Buffer),@SerialNum,Dummy,Dummy,nil,0) then
Result:=SerialNum
else
RaiseLastOSError;
end;


// Überprüfen der Nr. von C: mit '12121212'.

if IntToHex(GetSerialNumber('C'),8) <> '12121212' then ExitProcess(0);


  Mit Zitat antworten Zitat
Hobby-Programmierer

Registriert seit: 19. Jan 2006
Ort: München
392 Beiträge
 
Delphi XE Starter
 
#2

Re: Frage bez.Kopierschutz in Delphi(H-id bsp.)

  Alt 31. Okt 2008, 23:59
Moin ...,
die Serial der HD wird sich beim formatieren sicher nicht ändern, wohl eher die der jeweilgen Partition! Du wirst aber auch beim 'ersten' Start die ID irgendwo speichern und später vergleichen müssen. Dieser Schutz lässt sich sehr leicht aushebeln.
Mario
'Lesen Sie schnell, denn nichts ist beständiger als der Wandel im Internet!'
  Mit Zitat antworten Zitat
sunrise

Registriert seit: 20. Jan 2008
15 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: Frage bez.Kopierschutz in Delphi(H-id bsp.)

  Alt 1. Nov 2008, 00:11
dachte ich mir eigentlich... Es ging mir mehr darum das einer etwas zum Code sagt...
  Mit Zitat antworten Zitat
Benutzerbild von Dunkel
Dunkel

Registriert seit: 26. Mär 2007
Ort: Klingenstadt
541 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: Frage bez.Kopierschutz in Delphi(H-id bsp.)

  Alt 1. Nov 2008, 00:21
Dann sage ich mal was zum Code
if IntToHex(GetSerialNumber('C'),8) <> '12121212then ExitProcess(0); lässt sich nur all zu leicht im Kompilat umbiegen, so dass die Bedingung einfach übersprungen wird. Aber, um hier auch nochmal das Credo alle Kopierschutz-Threads zu schreiben: jeder Schutz kann potenziellen "Hackern" nur ein paar mehr Steine in den Weg legen, knackbar ist virtually jeder.
Es ist zu wahr um schön zu sein...
  Mit Zitat antworten Zitat
Hobby-Programmierer

Registriert seit: 19. Jan 2006
Ort: München
392 Beiträge
 
Delphi XE Starter
 
#5

Re: Frage bez.Kopierschutz in Delphi(H-id bsp.)

  Alt 1. Nov 2008, 00:27
... die Hardkodierung war sicher nur zum testen, es wäre auch Zeitaufwendig eine Anpassung an alle PC zu machen.
@sunrise: Hast du denn den Code denn schon selber mal getestet?
Mario
'Lesen Sie schnell, denn nichts ist beständiger als der Wandel im Internet!'
  Mit Zitat antworten Zitat
Benutzerbild von Dunkel
Dunkel

Registriert seit: 26. Mär 2007
Ort: Klingenstadt
541 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Frage bez.Kopierschutz in Delphi(H-id bsp.)

  Alt 1. Nov 2008, 00:35
Zitat von Hobby-Programmierer:
... die Hardkodierung war sicher nur zum testen, es wäre auch Zeitaufwendig eine Anpassung an alle PC zu machen.
Es geht ja auch garnicht um den hardcodierten Vergleichswert. Jeder Wenn-Dann-Sprung kann im Assembler-Code durch ein NOP (mach nichts) ersetzt werden, schon ist ein Kopierschutz dieser Art geknackt.
Es ist zu wahr um schön zu sein...
  Mit Zitat antworten Zitat
Hobby-Programmierer

Registriert seit: 19. Jan 2006
Ort: München
392 Beiträge
 
Delphi XE Starter
 
#7

Re: Frage bez.Kopierschutz in Delphi(H-id bsp.)

  Alt 1. Nov 2008, 00:41
Zitat von Dunkel:
Zitat von Hobby-Programmierer:
... die Hardkodierung war sicher nur zum testen, es wäre auch Zeitaufwendig eine Anpassung an alle PC zu machen.
Es geht ja auch garnicht um den hardcodierten Vergleichswert. Jeder Wenn-Dann-Sprung kann im Assembler-Code durch ein NOP (mach nichts) ersetzt werden, schon ist ein Kopierschutz dieser Art geknackt.
Ich wollte eher darauf hinaus das dieser Codeteil uninteressant ist! Er wird eh die ID ausserhalb des Programmes speichern müssen was sich noch leichter auszuhebeln lässt wie eine nachträgliche Codemanipulation.
Mario
'Lesen Sie schnell, denn nichts ist beständiger als der Wandel im Internet!'
  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 20:45 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