Kopierschutz
Moderator: Moderatoren
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Kopierschutz
Hi
ich suche nach einer Möglichkeit einen einfachen Kopierschutz für eine Xbase Installation in einem Windows Netzwerk zu erstellen.
Unter Novell gab es eine Funktion um die Seriennummer des Servers abzufragen. Damit konnte ich sicherstellen dass das Programm
nur auf dem "Offiziellen" Netzwerk lief. Es geht vorallem darum das Programm auf anderen Umgebungen nicht läuft.
Kennt jemand eine einfache möglichkeit von einem PC aus ein eindeutiges Merkmal des Servers Win 2008 R2 abzufragen?
Cu Carlo
ich suche nach einer Möglichkeit einen einfachen Kopierschutz für eine Xbase Installation in einem Windows Netzwerk zu erstellen.
Unter Novell gab es eine Funktion um die Seriennummer des Servers abzufragen. Damit konnte ich sicherstellen dass das Programm
nur auf dem "Offiziellen" Netzwerk lief. Es geht vorallem darum das Programm auf anderen Umgebungen nicht läuft.
Kennt jemand eine einfache möglichkeit von einem PC aus ein eindeutiges Merkmal des Servers Win 2008 R2 abzufragen?
Cu Carlo
Valar Morghulis
Gruss Carlo
Gruss Carlo
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Kopierschutz
Ich nutze bei Smartphones ohne IMEI die MAC Adresse der Netzwerkkarte.
Bei einer Citrix Installation würde das funktionieren, wenn aber die Programme vom Server auf Clients laufen sollen ist das möglicherweise zu umständlich.
Bei einer Citrix Installation würde das funktionieren, wenn aber die Programme vom Server auf Clients laufen sollen ist das möglicherweise zu umständlich.
Gruß
Hubert
Hubert
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: Kopierschutz
Hi
Danke für die Tips
Die Mac Adresse und auch die Festplatten ID wären ja gut, jedoch sollen die PC's beliebig gewechselt werden dürfen, die Festplatten ID des Servers ergibt je nach Windows Version des PC's unterschiedliche Werte.
Es müsste ein Abfrage Merkmal des Servers sein, das für diesen Server einmalig ist .... d.h. Datenbestand auf korretem Server Programm läuft, andernfalls -> ENDE
Cu Carlo
Danke für die Tips
Die Mac Adresse und auch die Festplatten ID wären ja gut, jedoch sollen die PC's beliebig gewechselt werden dürfen, die Festplatten ID des Servers ergibt je nach Windows Version des PC's unterschiedliche Werte.
Es müsste ein Abfrage Merkmal des Servers sein, das für diesen Server einmalig ist .... d.h. Datenbestand auf korretem Server Programm läuft, andernfalls -> ENDE
Cu Carlo
Valar Morghulis
Gruss Carlo
Gruss Carlo
Re: Kopierschutz
Dann muss man es wie bei diversen Spielen machen, von mehreren Geräten die IDs sammeln, die immer vorhanden sein müssen, beispielsweise CPU, Board, Grafikkarte und Festplatte.
Wenn sich eines davon ändert, Änderung übernehmen und neue ID verwenden. Natürlich solche Vorgänge protokollieren.
Wenn sich mehr als eines ändert, dies anmeckern. Dann muss sich der Kunde halt melden um eine erneute Freischaltung bitten.
Wenn sich eines davon ändert, Änderung übernehmen und neue ID verwenden. Natürlich solche Vorgänge protokollieren.
Wenn sich mehr als eines ändert, dies anmeckern. Dann muss sich der Kunde halt melden um eine erneute Freischaltung bitten.
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Kopierschutz
Nutzt der Server ein active directory ? Da muss es doch SERVER und CLIENT Zertifikate geben ... leider habe ich damit aber keine Erfahrungen.
Domänenname plus Servername dürften nicht so einfach zu wechseln sein, nicht sicher aber schon ein gewisser Schutz.
Oder du bauest einen ServerDienst, der einerseits immer deine DBF Dateien offen hält (das hat Steffen empfohlen um dem ledigen Problem lokaler Chaches zu entgehen)
und gleichzeitig für deine Programme als Info über die ServerMac dient (TCPIP, Winsocket etc.)
Für die Verschlüsselung würde ich kein Crypt verwenden, das ist Längen abhängig, sondern eher eine eigene Funktion, die aus den Ziffern eine Vergleichszahl oder einen HASH (MD5) macht.
Domänenname plus Servername dürften nicht so einfach zu wechseln sein, nicht sicher aber schon ein gewisser Schutz.
Oder du bauest einen ServerDienst, der einerseits immer deine DBF Dateien offen hält (das hat Steffen empfohlen um dem ledigen Problem lokaler Chaches zu entgehen)
und gleichzeitig für deine Programme als Info über die ServerMac dient (TCPIP, Winsocket etc.)
Für die Verschlüsselung würde ich kein Crypt verwenden, das ist Längen abhängig, sondern eher eine eigene Funktion, die aus den Ziffern eine Vergleichszahl oder einen HASH (MD5) macht.
Gruß
Hubert
Hubert
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Kopierschutz
per WMI kann man die Hardware von jedem PC abfragen.ramses hat geschrieben:Kennt jemand eine einfache möglichkeit von einem PC aus ein eindeutiges Merkmal des Servers Win 2008 R2 abzufragen?
Code: Alles auswählen
DEFAULT strComputer TO "Localhost"
DEFAULT cUser TO "Administrator"
DEFAULT cPassword TO ""
objWMIService := CreateObject( "WbemScripting.SWbemLocator" ):ConnectServer(strComputer, "Root\CIMv2",strComputer+"\"+cUser,cPassword)
gruss by OHR
Jimmy
Jimmy
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: Kopierschutz
Ich habe mich zuwenig deutlich ausgedrückt, es geht nicht darum dass das Programm auf einzelnen PC nicht läuft, oder die Anzahl PC eingeschränkt ist, sondern dass es NUR läuft wenn der Firmenserver vorhanden ist. Der Datenzugriff auf die DBF's erfolgt über ADS, die Datenbanken selbst sind mit den ADS Funktionen verschlüsselt.
Damit soll sichergestellt werden dass geklaute Daten/Programme nicht so einfach verwendet werden können. Unter Novell war dies einfach mit der Serverserial möglich.
Bleibt wirklich nur Huberts Idee einen Serverdienst aufzubauen der nur bei korrekter MAC des Servers Startfreigabe erteilt?
Damit soll sichergestellt werden dass geklaute Daten/Programme nicht so einfach verwendet werden können. Unter Novell war dies einfach mit der Serverserial möglich.
Bleibt wirklich nur Huberts Idee einen Serverdienst aufzubauen der nur bei korrekter MAC des Servers Startfreigabe erteilt?
Valar Morghulis
Gruss Carlo
Gruss Carlo
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Kopierschutz
Hi,
es ist einfach, du musst nur die Ebenen trennen, auf dem client darst du nur Infos abfragen, die auch ohne besondere Rechte zu bekommen sind.
Auf dem Server kann der Admin einmalig ein "Lizenzfreischaltungsprogramm" ausführen.
Dieses Programm sammelt z.B. über die Umgebungsfunktion den "LOGONSERVER", "COMPUTERNAME" (bei Anmeldung am Server sollte das "\\"+COMPUTERNAME sein.
Dann noch die Infos "USERDOMAIN" und "USERDNSDOMAIN" und eine fixe Zeichenkette in beiden Programmen z.B. "asZeF93Haq123sdiujl".
Aus diesen Infos wird im Lizenzprogramm ein MD5 Hash gebildet und auf dem Server z.B. in einer INI gespeichert.
Diesen Wert kann man am Client einfach abfragen (INI-Funktionen) und aus den dortigen Werten neu berechnen.
Wenn beide MD5 Strings identisch sind ( == ), dann ist es das gleiche Netzwerk.
Wenn man es noch genauer machen will, kann man zusätzlich noch die MAC Adresse des Servers verarbeiten, aber dann muss man diese auch in der INI
zur Verfügung stellen und mit einem Kontroll-Wert (z.b. MD5 hash aus MAC + geheimem String bilden und auch in die INI schreiben.
es ist einfach, du musst nur die Ebenen trennen, auf dem client darst du nur Infos abfragen, die auch ohne besondere Rechte zu bekommen sind.
Auf dem Server kann der Admin einmalig ein "Lizenzfreischaltungsprogramm" ausführen.
Dieses Programm sammelt z.B. über die Umgebungsfunktion den "LOGONSERVER", "COMPUTERNAME" (bei Anmeldung am Server sollte das "\\"+COMPUTERNAME sein.
Dann noch die Infos "USERDOMAIN" und "USERDNSDOMAIN" und eine fixe Zeichenkette in beiden Programmen z.B. "asZeF93Haq123sdiujl".
Aus diesen Infos wird im Lizenzprogramm ein MD5 Hash gebildet und auf dem Server z.B. in einer INI gespeichert.
Diesen Wert kann man am Client einfach abfragen (INI-Funktionen) und aus den dortigen Werten neu berechnen.
Wenn beide MD5 Strings identisch sind ( == ), dann ist es das gleiche Netzwerk.
Wenn man es noch genauer machen will, kann man zusätzlich noch die MAC Adresse des Servers verarbeiten, aber dann muss man diese auch in der INI
zur Verfügung stellen und mit einem Kontroll-Wert (z.b. MD5 hash aus MAC + geheimem String bilden und auch in die INI schreiben.
Gruß
Hubert
Hubert
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9357
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Kopierschutz
Man sollte nicht vergessen, dass ein Lizenznehmer heutzutage das Recht und die Möglichkeit haben muss, eine Softwarelizenz ohne unzumutbaren Aufwand von einer Computeranlage auf eine andere zu übertragen - schließlich beträgt die Halbwertszeit von Hardware nur noch wenige Jahre, manchmal nur Monate. Deshalb würde ich ganz persönlich von stark hardwaregebundenen Systemen absehen, denn ohne Hilfe des Softwareherstellers wäre dann eine solche Lizenzübertragung unmöglich - fällt beispielsweise eine Festplatte aus, deren Seriennummer irgendwie verwendet wird, kann die Software nicht mehr benutzt werden, ohne sich dabei helfen zu lassen. Sinnvoller sind in meinen Augen Lizensierungssysteme, die relevante Kundendaten (etwa Name und Firmierung des Lizenznehmers) in schwer umgehbarer Weise verschlüsseln, zugleich aber an exponierter Stelle präsentieren (beispielsweise auf Ausdrucken). Außerdem bieten sich Dongles an, und es gibt - z.B. bei SafeNet (ehemals "Aladdin") auch Softwaredongles, die leicht einzubinden sind, aus der Ferne gewartet/verändert werden können und relativ sicher arbeiten. Für den Softwareschutz von Software gibt es tausend Möglichkeiten, die manchmal - das machen wir - auch kombiniert werden können. Eine Bindung an die Hardware halte ich für extrem gefährlich und kontraproduktiv.
Herzlich,
Tom
Tom
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Kopierschutz
lch selber mach das mit einer der Möglichkeiten, die Tom aufgeführt hat: Der Nutzer bekommt eine Nutzerdatei, in der in Klarschrift sein Name und andere Lizenzinfos drinstehen. Und ein dazu passender verschlüsselter Code. Sollte auch nur eine der Zeilen geändert werden, verweigert das Programm den Start mit einem entsprechenden Hinweis. Und alle Ausdrucke beinhalten in der Fußzeile den Namen des Lizenznehmers. Ebenso erscheint der in der Titelzeile des Programms.
Ohne Lizenzdatei läuft das Programm im eingeschränkten Dmeomodus.
Jan
Ohne Lizenzdatei läuft das Programm im eingeschränkten Dmeomodus.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: Kopierschutz
@Tom
da hast du völlig recht, Dongles z.B. erachte ich sowieso als absolutes NO GO. In heutiger Zeit ist nur die Firmierung des Lizenznehmers aktzeptabel, die auch auf viele Listen gedruckt wird. Urheber von Dongles usw. sollten eigentlich gesetzlich wegen "behinderung" bestraft werden ...... Nicht zu vergessen, eine geklaute App ohne Support ist im Geschäftlichen Umfeld kein Thema.
Mein Problem liegt jedoch anders, die APP läuft in einem Umfeld mit vielen Aussendienstler die im Office mit Ihren Laptops die App benutzen. Die GL will nun dass alle Apps nur laufen wenn die Daten von einem Server kommen der ein bestimmtes, nicht leicht zu fälschendes Merkmal aufweist. Dies ist bis jetzt unter Novell die Seriennummer. Wenn jetzt ein Mitarbeiter die App samt Daten nach Hause (oder so) nimmt kann er nichts damit anfangen da die Abfrage der Netware-Serienummer des verwendeten Laufwerks nicht vorhanden/korrekt ist.
In den nächsten Ferien soll der Netware-Server gegen Win getauscht werden ...... Deshalb muss ich einen Ersatz zusammenbauen.
Am einfachsten wäre eine Abfrage die anhand des Laufwerk's z.B. I: die MAC-Adresse des Servers zurückgibt.
Du siehst es geht nicht um den Schutz der Software sondern um den Schutz der Daten resp. Schutz vor Daten-Missbrauch auf expliziten Wunsch des Kunden.
da hast du völlig recht, Dongles z.B. erachte ich sowieso als absolutes NO GO. In heutiger Zeit ist nur die Firmierung des Lizenznehmers aktzeptabel, die auch auf viele Listen gedruckt wird. Urheber von Dongles usw. sollten eigentlich gesetzlich wegen "behinderung" bestraft werden ...... Nicht zu vergessen, eine geklaute App ohne Support ist im Geschäftlichen Umfeld kein Thema.
Mein Problem liegt jedoch anders, die APP läuft in einem Umfeld mit vielen Aussendienstler die im Office mit Ihren Laptops die App benutzen. Die GL will nun dass alle Apps nur laufen wenn die Daten von einem Server kommen der ein bestimmtes, nicht leicht zu fälschendes Merkmal aufweist. Dies ist bis jetzt unter Novell die Seriennummer. Wenn jetzt ein Mitarbeiter die App samt Daten nach Hause (oder so) nimmt kann er nichts damit anfangen da die Abfrage der Netware-Serienummer des verwendeten Laufwerks nicht vorhanden/korrekt ist.
In den nächsten Ferien soll der Netware-Server gegen Win getauscht werden ...... Deshalb muss ich einen Ersatz zusammenbauen.
Am einfachsten wäre eine Abfrage die anhand des Laufwerk's z.B. I: die MAC-Adresse des Servers zurückgibt.
Du siehst es geht nicht um den Schutz der Software sondern um den Schutz der Daten resp. Schutz vor Daten-Missbrauch auf expliziten Wunsch des Kunden.
Valar Morghulis
Gruss Carlo
Gruss Carlo
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: Kopierschutz
Hallo Tom,
ich gebe dir Recht, daß die Verschlüsselung auf die Festplatte gefährlich werden könnte. dies ist aber für mich und meine Kunden-clientel, genau das richtige. Wenn der PC ausfällt oder was auch immer die rufen mich sowieso an.
Das Verzeichnis wird auf den neuen REchner kopiert - 1x systeminfo ausdrucken zu mir faxen. und die erhalten dann von mir die neue verschlüsselungs datei -. das geschieht binnen max. 15 min. geht relativ schnell
Aber das muß jeder für sich entscheiden, was für ihn und den Kunden am besten ist.
ich gebe dir Recht, daß die Verschlüsselung auf die Festplatte gefährlich werden könnte. dies ist aber für mich und meine Kunden-clientel, genau das richtige. Wenn der PC ausfällt oder was auch immer die rufen mich sowieso an.
Das Verzeichnis wird auf den neuen REchner kopiert - 1x systeminfo ausdrucken zu mir faxen. und die erhalten dann von mir die neue verschlüsselungs datei -. das geschieht binnen max. 15 min. geht relativ schnell
Aber das muß jeder für sich entscheiden, was für ihn und den Kunden am besten ist.
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Kopierschutz
Mein Ansatz entspricht deinen Anforderungen solange das Lizenzierungsprogramm dem Kunden übergeben wird.Tom hat geschrieben:Man sollte nicht vergessen, dass ein Lizenznehmer heutzutage das Recht und die Möglichkeit haben muss, eine Softwarelizenz ohne unzumutbaren Aufwand von einer Computeranlage auf eine andere zu übertragen - schließlich beträgt die Halbwertszeit von Hardware nur noch wenige Jahre, manchmal nur Monate.
Falls es wie oben beschrieben nur darum geht dass der Kunde seinen Mitarbeitern gegenüber durchsetzen will,
dass ein Programm ohne Serveranbindung nicht funktioniert ist das doch noch viel einfacher ...
- Die Daten und das Programm liegen auf dem Server (oder nur die Daten) - kein Zugriff möglich
- Die Daten liegen auch lokal, der Anwender darf sie nur nicht aufrufen ... hoffentlich sind die auch verschlüsselt
hier kann man die verfügbaren Laufwerke abfragen und wenn die Netzwerklaufwerke fehlen, gibt es auch keine Daten.
Falls das Laufwerk z.B. X: existiert, kann man ja nachsehen ob eine bestimmte Datei dort gespeichert ist.
Das Verzeichnis als solches sollte aber geschützt sein, dass man mit dem Explorer nicht einfach darauf zugreifen kann:
x:\SichtbaresVerzeichnis\VerstecktesVerzeichnis\NurLesenVerzeichnis\ => +R
x:\SichtbaresVerzeichnis\VerstecktesVerzeichnis\ => +H+R
Der Explorer käme noch auf x:\SichtbaresVerzeichnis aber nicht weiter solange er nicht den kompletten Pfad eingibt
x:\SichtbaresVerzeichnis\VerstecktesVerzeichnis\NurLesenVerzeichnis\
Gruß
Hubert
Hubert
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: Kopierschutz
@ Hubert
Die Daten liegen alle auf dem Server, die DBF's sind vollständig verschlüsselt (Crypt Funktion des Advantage Database Servers), Apps teilweise lokal.
Es geht darum dass das Programm NUR mit EINEM bestimmten Server funktioniert!
Was auch gehen würde: die Seriennummer von ADS auslesen, mit adsMgGetInstallInfo der ACE32.DLL heute diese Idee gestossen aber alle meine Versuch sind bis jetzt erfolglos.....
Cu Carlo
Die Daten liegen alle auf dem Server, die DBF's sind vollständig verschlüsselt (Crypt Funktion des Advantage Database Servers), Apps teilweise lokal.
Es geht darum dass das Programm NUR mit EINEM bestimmten Server funktioniert!
Was auch gehen würde: die Seriennummer von ADS auslesen, mit adsMgGetInstallInfo der ACE32.DLL heute diese Idee gestossen aber alle meine Versuch sind bis jetzt erfolglos.....
Cu Carlo
Valar Morghulis
Gruss Carlo
Gruss Carlo
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Kopierschutz
Das verstehe ich jetzt aber nicht wirklich, wenn dein Kunde nicht will, dass das Programm ohne die Serverdaten funktioniert,
wie soll dann der Anwender an die Daten vom - nicht vorhandenen - Server kommen ?
Oder haben die VPN Zugänge übers Internet ?
wie soll dann der Anwender an die Daten vom - nicht vorhandenen - Server kommen ?
Oder haben die VPN Zugänge übers Internet ?
Gruß
Hubert
Hubert
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: Kopierschutz
Hallo Hubert
ein wenig plump gesprochen: Der Kunde will nicht dass ein Mitarbeiter der das Verzeichniss samt Daten / Programme kopiert (klaut) dieses zuhause oder sonst wo Starten und Benutzen kann! Stichwort: überläufer oder sich selbständig machen wollender
Deshalb die gewünschte Bindung an einen einzigen Firmenserver.
Cu Carlo
ein wenig plump gesprochen: Der Kunde will nicht dass ein Mitarbeiter der das Verzeichniss samt Daten / Programme kopiert (klaut) dieses zuhause oder sonst wo Starten und Benutzen kann! Stichwort: überläufer oder sich selbständig machen wollender
Deshalb die gewünschte Bindung an einen einzigen Firmenserver.
Cu Carlo
Valar Morghulis
Gruss Carlo
Gruss Carlo
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Kopierschutz
Die Frage ist doch, wie er die verschlüsselten ADS Daten sehen soll bzw. warum er sie sieht.
Der ADS wird in Firmen doch so eingesetzt, dass er als ADS-Server fungiert und auf ein solches Laufwerk gibt man nur dem ADS-Server selbst zugriff.
Auf diesen geht es dann über die IP-Adresse, soweit ich das verstanden habe (@ TOM ích kann mich ja auch irren )
Kann denn jeder dieser Mitarbeiter den ADS Server bei sich zu hause kopieren, die Verschlüsselung knacken und die Anwendung zum Laufen bringen ?
Angenommen ihr installiert stattdessen einen Terminalserver (also die EXE läuft nicht lokal auf dem Rechner, sondern wird nur angezeigt),
dieser hat die Zugriffsrechte auf Daten und Programm (bei einem Server legt man beides auf diesem ab, aber so dass kein Klient auf die Laufwerke direkt Zugriff hat.
So läuft das bei uns im Betrieb, außer mir hat niemand das Laufwerk im Zugriff.
Der ADS wird in Firmen doch so eingesetzt, dass er als ADS-Server fungiert und auf ein solches Laufwerk gibt man nur dem ADS-Server selbst zugriff.
Auf diesen geht es dann über die IP-Adresse, soweit ich das verstanden habe (@ TOM ích kann mich ja auch irren )
Kann denn jeder dieser Mitarbeiter den ADS Server bei sich zu hause kopieren, die Verschlüsselung knacken und die Anwendung zum Laufen bringen ?
Angenommen ihr installiert stattdessen einen Terminalserver (also die EXE läuft nicht lokal auf dem Rechner, sondern wird nur angezeigt),
dieser hat die Zugriffsrechte auf Daten und Programm (bei einem Server legt man beides auf diesem ab, aber so dass kein Klient auf die Laufwerke direkt Zugriff hat.
So läuft das bei uns im Betrieb, außer mir hat niemand das Laufwerk im Zugriff.
Gruß
Hubert
Hubert
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Kopierschutz
hi,
du willst ja "nur" den Server "identifizieren", richtig ?
bei den WMI Abfragen benötigst du ja die "Rechte" aber die hat ein User nicht.
man müsste dem User also temporäre Rechte verleihen ... oder unter "anderem" Usernamen ausführen.
dafür gibt es bei Pablo doch eine Demo mit ot4xb.
du brauchst also zumindest 1 User für WMI der Admin Rechte hätte ... was mich auf eine andere Idee bringt.
es könnte also einen User XYZ geben der auf "dem" Server existiert und sich anmelden kann ... und dann sich gleich wieder ausloggt ... nach Eintrag ins Logbuch.
beim Login in deine Xbase++ Application rufst du in einem Thread die User XYZ Login Routine auf und wertest die aus. wenn das XYZ Passwort ( laaaaaaaaaaaaaaaaaang ) nicht stimmt oder der User nicht existiert bricht deine Xbase++ Application ab.
du willst ja "nur" den Server "identifizieren", richtig ?
bei den WMI Abfragen benötigst du ja die "Rechte" aber die hat ein User nicht.
man müsste dem User also temporäre Rechte verleihen ... oder unter "anderem" Usernamen ausführen.
dafür gibt es bei Pablo doch eine Demo mit ot4xb.
du brauchst also zumindest 1 User für WMI der Admin Rechte hätte ... was mich auf eine andere Idee bringt.
es könnte also einen User XYZ geben der auf "dem" Server existiert und sich anmelden kann ... und dann sich gleich wieder ausloggt ... nach Eintrag ins Logbuch.
beim Login in deine Xbase++ Application rufst du in einem Thread die User XYZ Login Routine auf und wertest die aus. wenn das XYZ Passwort ( laaaaaaaaaaaaaaaaaang ) nicht stimmt oder der User nicht existiert bricht deine Xbase++ Application ab.
gruss by OHR
Jimmy
Jimmy
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: Kopierschutz
@auge_ohr
nicht ganz richtig, es besteht eine "Sicherheitsrichtline" die schreibt mir zwingend vor dass sich Daten und Programme, (z.b. ein geklautes Backup-Band o.a. ) des KMS ausser Haus nicht verwenden lassen dürfen. Nur den Server anhand des Names oder IP festzustellen reicht nicht. Ich habe jetzt eine Funktion in ACE32.dll gefunden mit der sich die Seriennummer des ADS Servers auslesen lässt. Nur die neue Richtline schreibt mir ein ein Config-Programm vor mit welchem sich die ganze KMS Anwendung an ein Hardware Servermerkmal wie. z.B. die MAC Adresse, oder Hardware Seriennummer binden lässt. Nur wie kann vom Client aus die MAC-Adresse des Servers bestimmt werden ....
Cu Carlo
nicht ganz richtig, es besteht eine "Sicherheitsrichtline" die schreibt mir zwingend vor dass sich Daten und Programme, (z.b. ein geklautes Backup-Band o.a. ) des KMS ausser Haus nicht verwenden lassen dürfen. Nur den Server anhand des Names oder IP festzustellen reicht nicht. Ich habe jetzt eine Funktion in ACE32.dll gefunden mit der sich die Seriennummer des ADS Servers auslesen lässt. Nur die neue Richtline schreibt mir ein ein Config-Programm vor mit welchem sich die ganze KMS Anwendung an ein Hardware Servermerkmal wie. z.B. die MAC Adresse, oder Hardware Seriennummer binden lässt. Nur wie kann vom Client aus die MAC-Adresse des Servers bestimmt werden ....
Cu Carlo
Valar Morghulis
Gruss Carlo
Gruss Carlo
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2828
- Registriert: Fr, 10. Feb 2006 9:51
- Wohnort: Aachen
- Hat sich bedankt: 259 Mal
- Danksagung erhalten: 12 Mal
- Kontaktdaten:
Re: Kopierschutz
Schreib eine Function für den ADS, die dir die MAC Server Adresse liefert.
Falls es nicht direkt geht und Du den ADS unter Windows einsetzt, schreib eine DLL, die Du im ADS einbindest .
Uli
Falls es nicht direkt geht und Du den ADS unter Windows einsetzt, schreib eine DLL, die Du im ADS einbindest .
Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Mitglied XuG Cologne
Mitglied XuG Osnabrück
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2513
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: Kopierschutz
Nach einigem Suchen habe ich eine Lösung gefunden die im LOKALEN Netz Anhand der IP-Adresse die Mac_Adresse jeder Station oder Servers im gleichen Netz liefert.
Hilft vielleicht mal wem:
? getMacFromIPAdress( "192.168.10.4" ) ---> 10:1F:74:2C:AD:12
Viel Spass .....
Cu Carlo
Hilft vielleicht mal wem:
? getMacFromIPAdress( "192.168.10.4" ) ---> 10:1F:74:2C:AD:12
Code: Alles auswählen
function getMacFromIPAdress( cIP, cError )
local ret_val := "", a
local cMac := space(10), nClen := 10
local cIPSrc := 0
if !empty(cIP)
if ( a := inet_addr( cIP ) ) = 0
cError := "IP, Format ungltig"
else
a := SendArp( a, cIPSrc, @cMac, @nClen )
if a = 67
cError := "IP nicht vorhanden"
elseif a = 111
cError := "IC Ping blocked"
elseif a != 0
cError := "Error"
else
for a = 1 to 6
ret_val += strtohex( substr( cMac, a, 1 ) ) +iif(a=6,"",":")
next
endif
endif
endif
return(ret_val)
DLLFUNCTION inet_addr( cIP ) USING STDCALL from wsock32.DLL
DLLFUNCTION SendARP( cIPdest, cIPSrc, @cMac, @nClen ) USING STDCALL from IPHLPAPI.DLL
Cu Carlo
Valar Morghulis
Gruss Carlo
Gruss Carlo