Anwendung darf nur 10x gestartet werden
-
hallo,
Ich bin gerade auf der Suche nach einer Möglichkeit zu realisieren
das man mein Programm nur 10x starten kann.- (vereinfacht) Eine Datei mit Anzahl der Starts - zu leicht austauschbar
gibt es evtl. die Möglichkeit etwas direkt in meiner Anwendung abzuspeichern?
in den Ressourcen ja... allerdings kann man diese ja auch manuell mit einem
externen Tool aufrufen und manipullieren oder?Gibts evtl. Lösungsvorschläge
danke, Babel
-
Hmm, ein gut versteckter Registry-Schlüssel? Zumindest unbedarfte User hälst du so in Schach. So wirklich sicher ist aber gar nix...
-
Nur 10 mal insgesamt? Oder willst du nur 10 gleichzeitige Instanzen erlauben?
-
Hmm, ein gut versteckter Registry-Schlüssel? Zumindest unbedarfte User hälst du so in Schach. So wirklich sicher ist aber gar nix...
du triffst den nagel...
irgendwie kann alles rausgefunden werden auch
das mit dem reg-key. deswegen suche ich nach einer anderen alternative...
bis jetzt vergeblich!Nur 10 mal insgesamt? Oder willst du nur 10 gleichzeitige Instanzen erlauben?
ne sowieso nur eine Instanz das ist schon geregelt. Wirklich nur 10x
hintereinander...für lösungsvorschläge bin ich offen!
babel
-
Hallo,
man könnte das über eine Datei lösen, die öffentlich zugänglich ist. Diese ist dann einfach AES verschlüsselt. oder RSA einfach mit einem öffentlichen Algorithmus der als sicher gilt. So mit ist dann schon mehr Aufwand nötig um das zu umgehen, da hältst du schon mehr Leute ab.
-
so nicht,
Kann man sich ja die datei copy pasten nach 10 mal , ob mit oder ohne verschlüsselung
-
Naja, die Sache ist doch recht einfach.
Um das zu erreichen braucht man eine Möglichkeit Daten zu speichern (und dann natürlich wieder zu lesen), so dass der Anwender kein Backup von diesen Daten machen kann.Und das geht auf PCs nunmal einfach nicht. Man kann es erschweren indem man die Daten an vielen verschiedenen Stellen speichert, z.B. an verschiedenen Stellen in der Registry, in Dateien in bestimmten Verzeichnissen etc., aber wirklich sicher ist keine dieser Methoden, da der User im Prinzip ein Backup seines ganzen PCs machen kann. Und wenn alles nichts bringt dann installiere ich das Programm in einer VM - dann kann ich den ganzen (virtuellen) Rechner wegsichern und wiederherstellen. In dem Fall würde es nichtmal was bringen wenn man irgendwie aufs BIOS zugreift oder krumme Sachen mit dem Bootblock/MBR/... macht.
Daraus folgt, es gibt nur eine Möglichkeit das hinzubekommen, und zwar indem man etwas zum Speichern dieser Daten verwendet was der User in keinem Fall "sichern" kann. Eine Möglichkeit wäre ein Hardware-Dongle. Wenn dieser z.B. Zähler hat die das Programm nur lesen und inkrementieren kann, und der Zähler zusätzlich gegen Überlauf geschützt ist (z.B. indem er sich ab Zählerstand X einfach nicht weiter hochzählen lässt), dann geht das.
Oder - welch neuer und genialer Einfall - man verwendet einen PC auf den der User keinen Zugriff hat, z.B. einen Server im Internet.
-
@ hustbaer
ich denke du hast es auf den punkt gebracht.ich danke euch für eure lösungsvorschläge... werde mal schaun welche
lösung ich mir einfallen lassegruß, Babel
-
hardlock dongle^^ naja zu aufwendig für sowas;)
Wie sieht es mit der Datei mit verschlüsselung aus? wenn man gleichzeutig die Datei (erstellt/geändert/..) infos der Datei sich merkt? so kann man sie nich kopieren, oder ändern?
-
BorisDieKlinge schrieb:
hardlock dongle^^ naja zu aufwendig für sowas;)
Wie "sowas"? Weißt du, was da geschützt werden soll?
BorisDieKlinge schrieb:
Wie sieht es mit der Datei mit verschlüsselung aus? wenn man gleichzeutig die Datei (erstellt/geändert/..) infos der Datei sich merkt? so kann man sie nich kopieren, oder ändern?
Lies nochmal hustbaers Beitrag (Stichwort Virtualisierung).
-
BorisDieKlinge schrieb:
hardlock dongle^^ naja zu aufwendig für sowas;)
Wie sieht es mit der Datei mit verschlüsselung aus? wenn man gleichzeutig die Datei (erstellt/geändert/..) infos der Datei sich merkt? so kann man sie nich kopieren, oder ändern?
Aha du Genie und wie willst du dir das Änderungsdatum merken? In einer anderen Datei? Registry?
Auch Hardware Dongles sind nicht sicher, ebensowenig ein Internetserver, beides kann durch Emulation umgangen werden.
-
Auch Hardware Dongles sind nicht sicher, ebensowenig ein Internetserver, beides kann durch Emulation umgangen werden.
ach was du held.
wenn die kommunikation mit dem dongle bzw. server gut gemacht ist kann man die nicht emulieren. man muss bloss etwas wie RSA oder elliptic curve verwenden um die kommunikation zu verschlüsseln.natürlich kann man das dann immer noch knacken wenn man das programm modifiziert und z.b. den public key austauscht damit das programm dann mit dem eigenen server redet, bloss wenn man schon soweit ist kann man die überprüfung gleich ganz rauswerfen und das programm damit cracken.
-
hustbaer schrieb:
Auch Hardware Dongles sind nicht sicher, ebensowenig ein Internetserver, beides kann durch Emulation umgangen werden.
ach was du held.
wenn die kommunikation mit dem dongle bzw. server gut gemacht ist kann man die nicht emulieren. man muss bloss etwas wie RSA oder elliptic curve verwenden um die kommunikation zu verschlüsseln.natürlich kann man das dann immer noch knacken wenn man das programm modifiziert und z.b. den public key austauscht damit das programm dann mit dem eigenen server redet, bloss wenn man schon soweit ist kann man die überprüfung gleich ganz rauswerfen und das programm damit cracken.
Aha deshalb gibts auch keinerlei Emulatoren für die ganzen Dongles
Vorteil von Emulator: einmal geschrieben funktionieren damit alle Programme die diesen nutzen.
-
Ich bin ein Held, juhu! schrieb:
hustbaer schrieb:
Auch Hardware Dongles sind nicht sicher, ebensowenig ein Internetserver, beides kann durch Emulation umgangen werden.
ach was du held.
wenn die kommunikation mit dem dongle bzw. server gut gemacht ist kann man die nicht emulieren. man muss bloss etwas wie RSA oder elliptic curve verwenden um die kommunikation zu verschlüsseln.natürlich kann man das dann immer noch knacken wenn man das programm modifiziert und z.b. den public key austauscht damit das programm dann mit dem eigenen server redet, bloss wenn man schon soweit ist kann man die überprüfung gleich ganz rauswerfen und das programm damit cracken.
Aha deshalb gibts auch keinerlei Emulatoren für die ganzen Dongles
Vorteil von Emulator: einmal geschrieben funktionieren damit alle Programme die diesen nutzen.
Die Emulatoren gibt es für Dongle die schlecht programmiert sind.
Wenn du RSA oder elliptic curve im Dongle implementierst dann kann man keinen allgemeinen Emulator mehr schreiben. Bzw. schreiben schon, aber er bringt dir nix wenn du bestimmte Bereiche des Dongles nicht auslesen kannst, z.B. die wo diverse Keys drin stehen.Bei Servern im Inet sieht die Sache gleich aus.
Dass es sehrwohl möglich ist soetwas sicher hinzubekommen sieht man ja am Beispiel der SIM Karten.