Zitat von
Phoenix:
Der Private Key soll abhängig vom Rechner jedes mal neu berechnet und NIE irgendwo abgelegt werden
Das heisst: Der Key muss auf einem Rechner jedes mal berechnet werden und immer das gleiche Ergebnis geben. Wird die Software auf einem anderen Rechner ausgeführt ändert sich entsprechend der Key.
Woraus willst du ihn berechnen? Der Computername kann sich genau wie eine SID oder die Hardware jederzeit ändern. Allerdings bist du mit der SID noch auf einer
relativ sicheren Seite.
Zitat von
Phoenix:
Ein Teil der Software muss mit dem Public Key des Rechners verschlüsselt abgelegt werden
Dies erfordert freilich ein eigenes, nur für diesen Rechner verschlüsseltes Assembly.
Wer hat überhaupt den Private und den Public Key? Wenn ich die Software einmal entschlüsselt habe (und die muß ja entschlüsselt werden um zu laufen), ist der Schutz dahin, weil ich dann theoretisch auch eigene Assemblies erstellen könnte, oder?
Zitat von
Phoenix:
Keygens greifen nicht, da ein erzeugter Key in einer Datenbank eingetragen wird und beim abrufen des Assemblys durch den Webservice geprüft und danach gelöscht wird. Somit wird sichergestellt, dass nur gültige und bezahlte Keys auch ein Assembly bekommen.
Ab wann gilt ein Assembly als übertragen? Verbindungen können abbrechen.
Zitat von
Phoenix:
Das Assembly mit den entsprechenden Funktionalitäten liegt also nur für den entsprechenden Rechner verschlüsselt auf der Platte. Die Applikation liest das Assembly ein, entschlüsselt es mit dem Private Key und läd es. Diese Prozedur ist zwingend, ein unverschlüsseltes Assembly kann nicht geladen werden.
Nochmal, wo sind Public und Private Key gelagert?
Zitat von
Phoenix:
Die Applikation selber ist ein signiertes Assembly, so dass Modifikationen an der Executable dazu führen, dass die Anwendung nicht mehr gestartet werden kann.
Das verlagert nur das Problem.
Zitat von
Phoenix:
Offtopic:
Zitat von
Phoenix:
Warum eigentlich nicht? Wer meine Software illegal vervielfältigt 'raubt' mir meine Einnahmen. Das entzieht mir letzlich die Lebensgrundlage. Wenn das zu viele machen und ich nichts mehr verdiene muss ich mir überlegen, ob es sich noch lohnt das weiterzumachen. Meine Pläne gegen später vielleicht sogar mal Mitarbeiter einzustellen wären dann für die Katz' (nein, nicht Du, Sakura). Das vernichtet letzlich sogar Arbeitsplätze. Von daher sehe ich nicht ein, das hier auf die leichte Schulter zu nehmen und als Kavaliersdelikt abzustempeln. Das ist m.E. eine massive Straftat und sollte auch so behandelt werden. Schliesslich steht da meine Existenz auf dem Spiel.
Lassen wir mal die Kirche im Dorf. Es mag ja sein, daß es eine unangenehme Sache ist, wenn deine Software raubkopiert wird - insbesondere bei einem kleinen Unternehmen. Das Problem ist wohl immer wieder (finde ich zumindest) das Preis-Leistungs-Verhältnis. Oft genug werden popelige Programme für vergleichsweise hohe Summen vertickt, wohingegen gute andere Software zum Teil komplett frei erhältlich ist (OpenOffice.org, GIMP, VMWare Server, Virtual PC ...). Klar muß da eine Abwägung geschehen, aber es ist eben manchmal besser 1000 Stück für 10 Euro zu verkaufen als 10 Stück für 100 Euro. Auch wird zu oft der Privatanwender vernachlässigt und ihm werden keine kostengünstigeren Alternativen angeboten.
Zuguterletzt ist auch die Frage welche Zielgruppe du bedienst. Wird dein Programm sowieso nur von Autohäusern eingesetzt, wird selten ein Cracker auch nur dein Programm als mögliches Ziel ansehen. Cracker machen es aus Spaß und um sich einen Namen in der Szene zu machen ... mit Programmen die keine weite Verbreitung haben, ist das nicht möglich. Nehmen wir aber mal an, dein Programm wäre ein Massenprodukt und auch für diesen Einsatz bestimmt. Ist es wirklich so cool und so dramatisch neu, daß es ein lohnendes Ziel für einen Cracker sein könnte?
Das ist eben das Problem bei etwas was immateriell ist und deshalb beliebig oft ohne Qualitätsverlust kopiert werden kann. "Massive Straftat" halte ich doch für starken Tobak ...
Zitat von
Phoenix:
Ende Offtopic