Datei ist Original
-
Hi!
Ich bin auf der Suche nach einer Möglichkeit, eine Datei so zu modifizieren, dass man checken kann, ob die Datei von mir erstellt wurde, oder ob da jemand anderes noch was gemacht hat.
Inhalt kann man ja mit md5 und Verschlüsselung schützen, das ist kein Problem.
Kann man auch irgendwie rausbekommen, ob die Datei zwischendurch woanders hinkopiert wurde? ginge mit FILETIME aber verschieben ändert dateizeit nicht. und der nutzer könnte das auch wieder verändern auf den alten wert.
Also gibt es möglichkeiten mitzubekommen, ob etwas mit der datei angestellt wurde außer daass sie gelesen wurde?
Ich hoffe, baruch das für einen kopierschutz.
-
Maxi schrieb:
Kann man auch irgendwie rausbekommen, ob die Datei zwischendurch woanders hinkopiert wurde? ginge mit FILETIME aber verschieben ändert dateizeit nicht. und der nutzer könnte das auch wieder verändern auf den alten wert.
Nein es geht nicht. Du kannst alle Daten eines Directory Eintrages für eine Datei setzen wie es Dir beliebt. Würdest Du ein Tool wie ROBOCOPY verwenden würden alle Daten inkl. Erzeugung, letztes Lese Datum etc. komplett kopiert.
Gleiches ist so bei enem Backup. Wird die Datei mit den "Backup Semantics" gesichert und wiederhergestellt, oder neu erzeugt kannst Du keinen Unterschied feststellen.
So wirst Du keinen Kopierschutz hinbekommen.
-
mach es doch etwas einfacher und verschlüssel das ganze mit PGP.
oder erstelle mit TrueCrypt eine laufwerk das du nur selbst mountest mit passwort.
so kannst du in jedem fall verhindert das jemand etwas modifizieren kann.grützi
RadiatioN
-
@martin richter: Schade... muss ich mir wohl was anderes ausdenken müssen.
@radataion: Wie meinst du das jetzt genau? Man kann dann doch einfach das gesamte laufwerk kopieren und weitergeben oder versteh ich dich falsch?
-
sicherlich könnte jemand die datei kopieren die das laufwerks image enthält. aber wie soll jemand eine legitime änderung vornehmen können ohne dafür das passwort zu haben?
ändert man nämlich das image ohne das richtige passwort zu haben merkt das ein guter verschlüsselungsalgorythmus und somit hättest du die benachrichtigung für änderungen.
natürlich versteht sich nun von selbst, das du das image ausmounten musst um dies bemerken zu können. ist so ein laufwerk auf einem server freigegeben schiest man natürlich am eigentlichen ziel vorbei.erkläre doch bitte einfach nochmal etwas genauer was du damit genau vorhast, evtl. können wir dir dann etwas passendere vorschläge machen. nicht für alles muss man das rad neu erfinden

grützi
RadiatioN
-
also...
meine kopierschutz-idee sieht so aus:Das Programm darf pro lizenz an einem ort installiert sein. Dazu erhält der Lizenznehmer einen Namen, mit dem er sich bei einem lizenzserver anmeldet und dieser server sagt dann, ob das programm laufen darf oder nicht. Weil das prog aber auch offline laufen soll, erstelle ich eine keyfile, die dann vom programm immer getestet wird ob die in ordnung ist. Den INhalt der keyfile sehe ich als so kompliziert, an dass niemand der nciht weiß wie sie genau aufgebaut ist daraus schlau wird sie zu verändern dass sie auch ohne lizenz ok ist.
Soweit ist das ziemlich sicher.
Aber was ist, wenn der Benutzer jetzt das programm an einem anderen Ort ausführen möchte? Dazu habe ich mir gedacht, der Server enthält auch eine funktion "Abmelden", und dann kann man das programm woanders neu installieren. Damit ist der Nutzer nicht nur an einem Computer gebunden.
"Abmelden" löscht die keyfile oder verändert sie ein wenig dass sie nciht mehr gültig ist. Aber ein schlauer Benutzer könnte ja die datei vorher sichern und nach dem "Abmelden" zurückkopieren. damit wär das programm abgemeldet aber es würde trotzdem noch laufen.
Deswegen frag ich, ob man gucken kann ob die datei wirklich das original ist oder nicht.
DAs ist der einzige schwachpunkt, kommt eben durch das problem mit dem nutzen auf mehreren PCs. Ansonsten find ich meine Idee ganz gut.
-
äh.
offline + "abmelden" + sicher = geht nicht
nimm nen dongle
oder lass eine der 3 vorderungen "offline, abmelden, sicher" weg.
oder verlange dass nach N programmstarts und/oder M tagen das ding den server wieder connecten muss, also "begrenzt offline"
-
schreib in deine keyfile eine eindeutige ID die zum beispiel aus der BIOS oder MoBo seriennummer erzeugt wird. die solltest du so umrechnen oder miteinander verknüpfen das keiner dahinter kommt.
kopiert jetzt jemand dein programm wird dieses das merken, da die ID aus der hardware nicht mehr der aus der keyfile entspricht

sicher ist das zu 100% NICHT!
aber durchaus ein ansatz der funktionieren könnte bis ein netter cracker sich an die arbeit macht
grützi
RadiatioN
-
@hustbaer: Ja das mit dem Connecten alle paar programmstarts oder jeden tag einmal oder so wollt ich auch noch einbaun. Nur blöd, wenn da ne Firewall das blockt. Oder man verlangt immer eine online-verbindung...
@radiation:
Ja, so hab ichs auch schon gemacht, also einfach die keyfile auf nen anderen rechner kopieren geht nicht. Aber wenn ich jetzt abmelde und vorher die keyfile sichere, dann läufts eben noch.Hm... Also ich kann ja so machen, dass jede woche oder so das Programm unbedingt zum server connecten muss, um erlaubnis zu erhalten