Zitat:
|
Zitat von CIX88 Wird ja richtig wissenschaftlich hier :D |
Oder philosophisch. *g
Zitat:
|
Zitat von Freeaak es gibt ja 2 möglichkeiten:
1) Die PHP-Datei erstellt das Bild so: imagejpeg($img)
2) oder so: imagejpeg($img,"bild.jpg")
bei der ersten variante ist sie selbst das bild. und ich wollte wissen, ob man erkennen kann, dass es in wirklichkeit eine php-datei und kein jpeg bild ist. |
Wie bist du denn zu denken gewohnt? Eine PHP-Datei ist kein Bild und wird es niemals werden! Eine PHP-Datei kann Daten ausspucken, die ein anderes Programm (bzw. ein ganzes System mit verschiedenen Programmen und technischen Geräten) derart aufbreiten kann, dass im Auge des Betrachtes des Ergebnisses dieser "Aufbereitung" eben ein Bild entsteht.
Du hast also eine bestimmte Anfrage an den Server und daraufhin eine Antwort mit HTTP-Metadaten (Content-Type) und eben den JPEG-Daten, wobei diese eben wiederum Metadaten enthalten.
Gibt also in meinen Augen folgende Anhaltspunkte:
* Der Aufruf sieht so aus, als würde das Bild (die Bild-Daten) von einer PHP-Datei generiert, anstatt vom Server von der Platte gelesen. Das wäre z.B. bei einem Request, wie boersenkurs.php?id=dax&monat=2003-12 der Fall, bei example.com/kuchenplatte.jpeg eher nicht, oder?
* Es werden HTTP-Metadaten mitgeschickt, die ein Webserver normalerweise nicht schickt, wenn er ein statisches Bild ausgibt (frag mich nicht, ich ab keine Ahnung - probiers einfach aus (Telnet ist dein Freund));
* Die JPEG-Daten enthalten Metadaten, die genauso aussehen, wie die Metadaten, die die Libs normalerweise erzeugen, die PHP verwendet. Wurde ja bereits durchgesprochen;
* Das Bild ist augenscheinlich dynamisch generiert, weil es eben bei jedem Request andere Ergenisse liefert (ein
Prüfverfahren, wie es hier genannt wurde sollte dabei nicht nötig sein, denn die Änderungen werden offensichtlich sein - Beispiel Counter, Captcha, Charts etc.);
Letzlich kannst anhand von keinem der Punkte definitiv sagen, zu welchem Zeitpunkt das Bild wie erstellt wurde, denn alle die Daten lassen sich natürlich faken. Unwahrscheinlich höchstens, dass das Bild allzu kurz vor dem Request oder gar in der Zukunft aufgenommen wurde. In der Regel wirst du ein erzeugtes Bilder (wenn du es mehr als einmal brauchst) nach dem Generieren ja auch auf die Platte speichern und beim zweiten Aufruf von dort auslesen - ist das also dynamisch generiert oder nicht?
Ich benutze z.B. das f-Flag von mod-rewrite, um Bilder direkt einzubinden, falls diese auf der Platte existieren bzw. eben den Request an meine Anwendung weiterzuleiten, falls das Bild (noch) nicht existiert, um es ggf. von dieser bauen, speichern und zurückgeben zu lassen.
Basti