Delphi-PRAXiS
Seite 2 von 7     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Kopierschutz einer Anwendung (https://www.delphipraxis.net/81144-kopierschutz-einer-anwendung.html)

pap80b 21. Nov 2006 16:02

Re: Kopierschutz einer Anwendung
 
Zitat:

Zitat von Martin W
Das Patchen MEINER Anwendung wird ausgeschlossen... PAckete zum Server sniffen, etc... all das ist möglich...

Ich hoffe du meinst damit NICHT, dass man das Programm nicht patchen könnten :zwinker:

Martin W 21. Nov 2006 16:09

Re: Kopierschutz einer Anwendung
 
neeee... des mein ich nicht *grins*

resolution 21. Nov 2006 19:08

Re: Kopierschutz einer Anwendung
 
man kann software nie unkopierbar machen :p

bei so ner authentifizierung gibt es i.d.R. zwei schwachstellen, einmal der client, und zum anderen die verbindung..

entweder simuliere ich einen server indem ich die verbindung knacke oder ich cracke das programm..


man kann das problem mit dem knacken der verbindung teilweise beseitigen, indem du vor herausschicken des programmes die HW-IDs der rechner auf dem die software laufen soll erhälst..
dann kannste dein programm teilweise mit der hardware-id verschlüsseln so dass es zur laufzeit den programm-core entschlüsselt und ausführt..
das problem an dieser stelle ist, dass man das unverschlüsselte programm aus dem speicher holen könnte..

also, es gibt viele wege es kompliziert zu machen, schutz gibts keinen ;)

Mackhack 21. Nov 2006 20:26

Re: Kopierschutz einer Anwendung
 
Und ich denke darum geht es Martin hier. Jeder halbwegs normaldenkende weis inzwischen dass es keinen 100 % sicheren Schutz gibt, aber man kann es einem Cracker eben erschweren. Und wenn man es so aufzieht dass man eben den Leuten die es gecrackt haben verweigert Updates zu liefern werden es sicherlich die Leute 2 mal ueberlegen. Zudem weis ich dass es sich dabei um eine Software handelt fuer Firmen, nicht fuer Privatkunden. Da ist dann auch nochmal zu sehen dass sich viele Firmen nicht getrauen Raubkopierte Software zu nutzen.

Ich will nur n Beispiel bringen aus meiner eigenen Erfahrung von meiner Lehrzeit. Meine Lehrfirma hatte nur eine Windows-Server Lizenz betrieb aber insgesamt 19 Server damit und hatte eine Workstation Lizenz und betrieb uber 100 Workstations damit. Als ein Mitarbeiter unfairerweise gekuendigt wurde wandte er sich an Microsoft um wohl seinen persoenlichen Racheakt zu vollziehen. Es gab ein Verfahren und die Firma wurde mit ueber 500.000 DM 1999 zur Kasse gebeten. Ich habe das Ende dessen nicht weiter mitverfolgt da ich kurze Zeit spaeter fertig war mit der Lehre.

Man sieht, es lohnt sich nicht wirklich in Unternehmen Raubkopierte Software anzubieten!

Christian Seehase 21. Nov 2006 23:22

Re: Kopierschutz einer Anwendung
 
Moin Martin,

auf jeden Fall solltet ihr 100%ige Erreichbarkeit eures Servers sicherstellen, denn wenn jemand auf einmal die Software nicht installieren kann, weil euer Server nicht erreichbar ist, kann das Schadenersatzforderungen nach sich ziehen.

Reinhard Kern 22. Nov 2006 00:12

Re: Kopierschutz einer Anwendung
 
Zitat:

Zitat von Martin W
Hi;

Ich habe mir ein Kopierschutz / Passwortschutz ausgedacht, welchen ich euch kurz erklären möchte. Bitte nennt mir Schwachstellen und Verbesserungsvorschläge.

Dieser Vorgang passiert nun bei jedem programmstart und zusätzlich noch mal alle 24 Stunden wenn das Programm dauerthaft läuft. Er prüft jedesmal, ob die Kombination von ClientID + seinem HardwareKey vorhanden ist. Des weiteren Überprüft er, ob Sein Hardwarekey auf Platz 1 der Liste steht. Wenn dies nicht der Fall ist, wird sein Key auf Platz 1 gesetzt.

Hallo,

ich weiss nicht, ob du dich in diesem Punkt schon absichtlich unklar ausdrückst. Ich sehe 2 Alternativen:

1. Die Software startet nicht mehr, wenn euer Webserver nicht erreichbar ist, z.B. weil ihn der Insolvenzverwalter aus Kostengründen abgeschaltet hat. Ich wäre nicht bereit, für eine Software zu bezahlen, bei der ich grundsätzlich nicht sicher sein kann, ob sie nächste Woche noch läuft.

2. Wenn 1 nicht zutrifft, betreibe ich die Software beliebig oft und lange auf Rechnern ohne Internetanschluss, oder die Firewall unterbindet diese eine Verbindung.

Gruss Reinhard

OldGrumpy 22. Nov 2006 00:43

Re: Kopierschutz einer Anwendung
 
Zitat:

Zitat von ErazerZ
Delphi-Quellcode:
{
  Orginal code by Gobo
}
function IsVirtualMachine: Boolean;
var
  Temp: Array[0..5] of Byte;
  TempB: Byte;
begin
  asm
    sidt Temp
    mov bh, byte ptr [Temp + 5]
    mov TempB, bh
  end;
  case TempB of
    $ff, $e8:
      Result := True;
    else
      Result := False;
  end;
end;

Ist SIDT nicht ein privilegierter Opcode? Das kann eigentlich nur anhand eines "Bugs" in VMWare funktionieren... Nebenbei, wozu der Umstand mit mov bh und TempB? Warum nicht einfach Temp[5] mit $ff und $e8 vergleichen?

Last but not least: Mit WMI gehts über ne query auf Win32_ComputerSystem (Manufacturer, Model) viel simpler:

Normaler PC:
Manufacturer: Dell Computer Corporation
Model: Latitude D600

VMware:
Manufacturer: VMware, Inc.
Model: VMware Virtual Platform

VirtualPC:
Manufacturer: Microsoft Corporation
Model: Virtual Machine

:mrgreen:

MaBuSE 22. Nov 2006 08:08

Re: Kopierschutz einer Anwendung
 
Zitat:

Zitat von Martin W
Bei der Installation kann folgendes ausgewählt werden:
a) Ein Rechner hat direkten Internetzugriff
b) Ein Rechner verbindet sich über ein "Connectionprogramm", welches auf einem Server im Netzwerk liegt, der immer I- Net Zugang hat. Das Connectingprogramm schleift die Packete einfach weiter zwischen CLient und Webdatenbank.
Aber ein Computer im Netzwerk der immer INternetzugang hat, so etwas setze ich voraus.

Ich würde Dein Programm nicht einsetzen wollen. ;-)
  • Internetzugriff ist stark beschränkt.
    Du schreibst Du setzt ihn bei der installation voraus, aber Dein Programm prüft ja bei jedem Start bzw nach 24h.
    -> was machst du wenn kein internet verfügbar (bzw. Firewall)
  • Benutzer mit Laptop haben per Definition nicht immer überall Internet.
  • Was ist wenn Dein Server nicht verfügbar ist.
  • Was ist, wenn die PC's mit z.B. Norton Ghost geklont werden.
    • Der Kunde hat 100 Lizenzen gekauft, aber Du siehst in Deinem Log er verwendet 100 mal die 1. Lizenz.
    • Wie reagierst Du?
    • Willst Du den Kunden zwingen alle 100 PC's einzeln zu installieren?
      -> was machst Du wenn der Kunde nicht mitspielt.
    • "Schaltest" Du den Kunden ab
      -> Schadensersatzforderungen
  • Lies Dir mal das hier durch: http://de.wikipedia.org/wiki/Dongle
    Kostet zwar Geld, aber das muß der Kunde dann halt "mitbezahlen"
    Bei www.Aladdin.de kostet ein Dongel z.B. ca. 50 Eur im Starterkit (5 USB Dongles inkl Software (SDK) und Beschreibung)
    oder bei http://www.sg-lock.com/de/index.php ab ca. 10 Eur (inkl Delphi Unterstützung)
  • Durch solch eine Technik vergraulst Du aber mehr Kunden als Du gewinnst.
In Deinem Fall wäre eine Vorgehensweise wie beim Lizenzserver (wie z.B. Borland ihn verwendet) die bessere Lösung.
Ich kann Delphi 2006 hier im Netzwerk uneingeschränkt verwenden.
Trenne ich mich vom Netz, so merkt die Software, dass kein Lizenzserver mehr verfügbar ist und ein Countdown von 30 Tagen beginnt. Nach 30 Tagen kann ich Delphi nicht mehr starten. Wenn ich innerhalb der 30 Tage wieder im Netz bin, so wird der Countdown wieder zurückgesetzt und ich kann wieder uneingeschränkt arbeiten.
Auf dem Lizenzserver sind also "named licenses" vergeben, sie sind also jedem Nutzer zugeordnet.
Der Server an sich ist nur ein kleiner Dienst auf einem unserer File Server.

Hier steht was zu dem belise: http://info.borland.de/newsletter/nl04_6/Edu/Edu.htm
( mit google "belise borland" findest Du folgenden Link: http://license.borland.com/lservers/belise.jsp )

Mackhack 22. Nov 2006 08:29

Re: Kopierschutz einer Anwendung
 
Bei sg-lock steht dass es mit einer dll funktioniert. Wird die dll weitergegeben ist dann der Kopierschutz hinueber @ mabuse? Weist du da weiter?

MaBuSE 22. Nov 2006 08:39

Re: Kopierschutz einer Anwendung
 
Zitat:

Zitat von Mackhack
Bei sg-lock steht dass es mit einer dll funktioniert. Wird die dll weitergegeben ist dann der Kopierschutz hinueber @ mabuse? Weist du da weiter?

Ich kenne sg-lock nicht, aber das ist wohl nur der Treiber. In dem USB Key steckt ein großer Schlüssel und Verslüsselungsalgorythmus, der in Deinem Programm verwendet wird. Also ohne den Key kannst Du z.B. Teile deines Programmes nicht entschlüsseln und es somit nicht verwenden.

Ich habe mir das aber noch nicht genau angeschaut. ;-)
(Kommt aber noch, ich wollte mir mal so was zulegen und ausprobieren).
Ich dachte allerdings daran das als Zugangsschutz zu meinem PC zu verwenden (zweckentfremden).
Meine Software (gina) würde dann nur den Zugang zum PC gestatten, wenn der Dongle dinn ist. ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:35 Uhr.
Seite 2 von 7     12 34     Letzte »    

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