Verschlüsseln von Script!?

Geegle

Lächelt dümmlich.
ID: 234520
L
1 Mai 2006
2.049
84
Also ich habe eine swf und eine txt Datei.
Ganz einfach erklärt:
Aus der txt Datei werden URLs in die swf eingeladen, über die dann Bilder, oder Text in die URL geladen werden.

Nun ist die Frage, wie ich das lösen könnte, dass ich diese beiden Dateien auch nur einmal benutzen kann. Eben dann, wenn ein User auch dafür gezahlt hat.

Ich möchte damit vorbeugen, dass der User, sobald er die beiden Dateien besitzt sie unendlich mal weiterbenutzen kann.
Er darf sie eben wirklich nur an einer Stelle einsetzen.

Wie machen das denn die ganzen Leute mit ihrem Bannern, oder Scripten?


Weil ich möchte eben einfach nur vorbeugen, dass meine Arbeit von dem User weiterverkauft wird...
 
Geegle schrieb:
Weil ich möchte eben einfach nur vorbeugen, dass meine Arbeit von dem User weiterverkauft wird...
Dem kannst du afaik nicht vorbeugen.

Korrigiert mich - Flash ist nicht mein Gebiet -, aber es gibt Flash-Decompiler, die eine .swf-Datei wieder dekompilieren können und in der .fla-Datei steht der gesamte Quellcode inklusivier aller Grafiken etc. ja drinnen.
 
Ja, das gibt es in der Tat.

Aber irgendwie müssen doch auch Flashbanner-Verkäufer nachvollziehen können, wie oft ihr Banner genutzt wird. Sonst könnte doch jeder den Banner weiterverkaufen.

Also jetzt als ganz dummes Beispiel...


Müsste man irgendwie mit .php arbeiten und damit abfragen, wie oft das schon benutzt wurde?
Ach ich habe keine Ahnung, aber wie soll ich mich denn verhalten?
Dem User nen Riesenpreis aufschlagen, weil er es ja eh weiterverkauft?
 
Streng genommen: Gar nicht! Ein Swf Decompiler ist dazu nicht mal nötig, es sei denn man hat vor, den Flashfilm wiederzuverwenden und nicht nur die Bilder.

Aber man kann es einem schwer machen, sie wiederzuverwenden. Man könnte die beiden Dateien über ein .php Wrapper laden, wobei das Skript zählt wie oft / vonwo / wieauchimmer sie aufgerufen wurde und nach 1x ist Ende.

Selbst wenn die Bilder nicht im Cache liegen, kann man die direkt im Proxy, via Screenshot oder Fotokamera abfangen und sie dann beliebig oft wieder verwenden, auch wenn das .php Skript nur ein Aufruf erlaubt.
 
Ne das ist mir ja ganz egal.

Das Ding sollte eben dem jeweiligen User nur einmal erlauben die swf zu benutzen. Ein weiteres mal sollte dies unmöglich sein.
Oder kann man für eine Datei die Kopierfunktion verbieten?

Wrapper heißt das?
Wie funktioniert so ein Ding?
 
da gab es auch einmal ein schönes flashgame, das immer die meldung bracht dies sei keine authorisierte domain...
 
Hmm,

ich bin mir gerade nicht sicher ob ich das Problem erfasse... irgendjemand zahlt für irgendwas, sieht dann irgendwas Flash mäßiges und soll das nur einmal benutzen können ? Kommt das so hin ?

Ich kenne mich mit Flash auch nicht aus, aber vielleicht wäre es mit PHP machbar das nach dem Kauf die Vorlage der Flash Seite an einen Ort kopiert wird und das Flash nach Ablauf dann ein anderes Script anschupst was die Datei wieder löscht.

Gruß
TZE
 
Auch mit Flash und PHP wird das nicht möglich sein. Mit einem guten SWF Decompiler kannst du dir einfach die FLA-Datei ausgeben lassen. Diese öffnest du dann in Flash, entfernst entsprechende Codesegmente im Actionscript, und schon kann jeder die SWF so oft ausführen, wie er möchte.
 
es wurde zwar schon gesagt, aber nochmal: es ist nicht möglich

auf deine frage, wie du dich verhalten sollst:
wenn du etwas verkaufst, dann binde es einfach an entsprechende AGBs. du hast ansonsten absolut keine chance deinen "wunsch" zu realisieren. denn es gibt keinen schutz.

ps.: wenn du was verkaufst.. warum sollte der es dann nur einmal nutzen dürfen? is ja auch irgendwie unlogisch.


@ "dies ist eine ungültige domain"
das ist nix weiter als eine sicherheitsrichtlinie die man im AS angibt, ein kopierschutz ist das nicht.
 
also einmal könnte man natürlich die Flashdatei durch einen Obfuscator jagen (macht Variablen-Namen und Funktion für Menschen nicht leicht nachvollziehbar) zweitens eben verschlüsseln.

Dann geht es nur, wenn du die Daten nicht aus einer TXT-Datei an das Flash übergibst, sondern über PHP, das Problem ist eben, in dem moment, wo du die Daten übergibst, könnte man allles mitschneiden, also vllt noch ne verschlüsselung der übergebenen Daten einbauen, ist die sicherste Methode die es gibt, aber auch sehr aufwendig
 
Erstmal folgendes: Es gibt keinen Flash Decompiler, der aus einer .SWF wieder eine .FLA macht. Dazu habe ich jedes Produkt auf dem Markt durch. Es scheitert schon daran, daß in der SWF Ebenen und anderes nicht mehr existieren! Um im ActionScript also was zu ändern, müsste man die .FLA neu konstruieren und das kann mühselig sein, je nachdem wie umfangreich der Code ist.

Es gibt Techniken, mit denen man teilweise .SWF's zusätzlich schützen kann. Such mal in Google nach "SWF Bytecode Protection" oder sowas in der Art. Es gibt da einen Bytecode den man im Actionscript reinpacken kann, der viele Decompiler gänzlich versagen lässt, genau Bezeichnung oder URL hab ich grad nicht zur Hand, da wirst du ein wenig googeln müssen.

Ansonsten, wenn du dir die Mühe antun willst (ist es meistens nicht Wert), kannst du Techniken einsetzen, die in anderer Software (meist geschrieben in C/C++) zum Einsatz kommen um Debugger zu stoppen bzw. das Debuggen zu erschweren. Aber, wie wir ja wissen, gibt es kaum eine Technik die wirklich wirkungsvoll zu 100% schützen kann, man kann es einem "Hacker" lediglich nur erschweren.

Der effizienteste Schutz, den Unternehmen in der Regel auch nutzen sind strikte Lizenzbedingungen, also der rechtliche, um diejenigen, die dagegen verstossen und dir bekannt sind dranzukriegen.
 
SpecialsGuy schrieb:
Erstmal folgendes: Es gibt keinen Flash Decompiler, der aus einer .SWF wieder eine .FLA macht. Dazu habe ich jedes Produkt auf dem Markt durch. Es scheitert schon daran, daß in der SWF Ebenen und anderes nicht mehr existieren! Um im ActionScript also was zu ändern, müsste man die .FLA neu konstruieren und das kann mühselig sein, je nachdem wie umfangreich der Code ist.
Ach, da spricht ja ein Experte :roll:

Ich versichere dir: Es gibt mindestens ein solches Programm und es funktioniert definitiv.
 
ich habe darüber auch schonmal mit meinen php scripten nachgedacht und bin zu dem schluß gekommen eine datei zu inkluden die auf einem server liegt. In der datei definierst du eine Konstante die dann existiert und im script selber frägst du die Domain von der der Aufruf kommt und die Existenz der Konstanten ab. In wifern das ganze rechtens ist, ist mir noch nicht weiter bekannt aber vielleicht ist das ein kleiner Gedanken anstoß für dein Vorhaben.
 
Raven schrieb:
Ach, da spricht ja ein Experte :roll:

Ich versichere dir: Es gibt mindestens ein solches Programm und es funktioniert definitiv.

Ja, da spricht ein Experte :p
Aber du weißt ja, daß auch solch einer nie immer alles wissen kann ;)

Würde mich sehr interessieren, welches das sein soll. Soviel ich weiß, wirst du nicht die .FLA kriegen, die du vorher hattest. Allein schon deswegen, weil in der .SWF alles auf eine Timeline landet, zumindest soviel ich weiß.
Kann sein, daß ich da falsch liege, hab mich mit dem Thema "Flash Decompiler" seit letztes Jahr nicht mehr weitergehend beschäftigt. Klär mich mal auf :)

Im Grunde ist es das gleiche Prinzip, wenn man ein C-prog kompiliert hat, so ist der eigentliche Code nicht mehr so zurückzukriegen (auch wenn es sich in Flash legidlich um Bytecode handelt, entspricht es dem Prinzip).
 
Zuletzt bearbeitet:
SpecialsGuy schrieb:
Ja, da spricht ein Experte :p
Aber du weißt ja, daß auch solch einer nie immer alles wissen kann ;)
Hehe, war ja nicht böse gemeint ;)

SpecialsGuy schrieb:
Würde mich sehr interessieren, welches das sein soll.
Da bekommst du gleich mal 'ne PN, das sollte hier evtl. nicht jedes Skript-Kiddie lesen.
 
als ichs mal getestet hatte, konnte ich mit https://www.sothink.com/product/flashdecompiler/ bis zu flash 7 alles decompilieren. mit ebenen, as, ...
inzwischen kann er auch flash 8.

bytecode kann man immer decompilieren. das gilt für flash wie auch für java und die ganzen anderen bytecode sprachen, zudenen vielleicht irgendwann auch php gehören wird.
 
SpecialsGuy schrieb:
Im Grunde ist es das gleiche Prinzip, wenn man ein C-prog kompiliert hat, so ist der eigentliche Code nicht mehr so zurückzukriegen (auch wenn es sich in Flash legidlich um Bytecode handelt, entspricht es dem Prinzip).
so ähnlich funzt das in flash auch, man bekommt sicherlich nicht die gleiche fla zurück wie sie der programmierer mit seinen variablennamen definiert etc. wenn doch dann gute nacht otto

Scar, erstell dir mal ne fla, compiliere sie, und schick dann den decompiler dran. Du wirst nicht mehr deine variablennamen wiederfinden sonder nur "pseudo-variablen", und darüber kannst du dich glücklich schätzen ;)

aber wir weichen vom thema ab, sicher bekommt man so ein system afaik nicht, sondern man kann es dem "einbrecher" durch meine genannten technicken nur sehr sehr schwer machen, eben so weit, dass es nachher wieder sinnlos ist sich damit zu beschäftigen
 
Sehr Sehr schwer? Nunja - Starforce oder so mögen schwer sein, aber was ihr da bauen wollt hält im besten fall kleine Kinder auf.
 
Sehr Sehr schwer? Nunja - Starforce oder so mögen schwer sein, aber was ihr da bauen wollt hält im besten fall kleine Kinder auf.
also da das flash unleserlich ist, die übergebenen daten unleserlich sind, und man dementsprechend nicht so leicht den algorithmus für die decodierung der daten vom php rausfinden kann, wird es für seinen gebrauch denke ich mal alle mal reichen.
Und Starforce kann man mit Flash ja nicht wirklich vergleichen, obwohl man auch Flashdateien mit Bytecode-Code ausliefern kann, jedoch dann nach der Methode decode([...Bytecode...]) ^^
 
bytecode kann man immer decompilieren. das gilt für flash wie auch für java und die ganzen anderen bytecode sprachen, zudenen vielleicht irgendwann auch php gehören wird.
Na ja das mit php möchte ich bezweifeln. Aber na ja decompilieren kann man ein Programm immer, es ist nur die Frage wie verwertbar das dann noch ist.