Archive for the ‘PHP’ Category
Mein Montag auf der IPC SE 2010 in Berlin
Meine zweite PHP-Konferenz (wenn man die Unconference 2009 dazuzählen möchte) startete gestern, aber nicht alles läuft so wie es laufen sollte.
Um 3:15 klingelte der Wecker. 3:45 losgefahren, noch 2 Personen aus Bielefeld abgeholt die mit nach Berlin fahren wollten (Mitfahrzentrale) und dann auf die Autobahn. Alles lief super, bis zum Ortsschild Berlin: Stau, 12 Kilometer. Von 8 bis 9:30 also Zeit verloren und die erste Session auf der Konferenz direkt verpasst, den Vortrag über Zend Framework und Doctrine hätte ich sehr gern gesehen ;-(
Die interessanteste Session des Tages war für mich die Präsentation von „PHP Tool Integration“ (PTI). Schonmal gehört bei Nils im Blog, doch „wir hatten ja bereits die entsprechenden Tools auf dem Continuous Integration (CI) Server im Einsatz“, also brauche ich das nicht mehr auf der Workstation. Mit diesem Eclipse-Plugin ist es möglich, PHPUnit, PHP_Codesniffer, PHP Depend und PHP Copy/Paste Detector zu integrieren und direkt aus der IDE heraus mit einem Klick auszuführen. Doch ich habe mich geirrt, Sven hat mich umgestimmt.
PHP-Test für Fortgeschrittene | ZCE Tests zu gewinnen
Ich habe in den letzten Tagen überlegt, gesammelt und hoffentlich einige interessante Fragen erstellt, mit deren Beantwortung ihr die verbliebenen Zertifizierungs-Tests erhalten könnt.
Ihr bekommt 10 zufällige Fragen präsentiert die ihr beantwortet. Diejenigen, die >= 50% richtig beantworten, kommen in die Lostrommel.
Wichtig: Jeder darf nur einmal teilnehmen! Wen ich beim mehrfachen Ausfüllen erwische fliegt raus und wird hier an den Blog-Pranger gestellt. Es soll Spass machen und natürlich auch etwas auf die ZCE-Prüfung vorbereiten die ihr alle hoffentlich bald macht.
Ich werde am 05.06.2010 die Ergebnisse veröffentlichen, dann endet diese Aktion und ihr bekommt alle Fragen und Antworten zu Gesicht.
Der Test ist begrenzt auf 5 Minuten, also vertrödelt keine Zeit bei der Beantwortung. Hier gehts zum Test!
Applikationslogin mittels SSL-Zertifikat
Passworte haben Nachteile, das wissen wir alle. Sie müssen genügend komplex aber trotzdem merkbar sein, die Länge und Art der Zeichen sind dafür verantwortlich wie einfach es zu erraten ist. Fast niemand verwendet Passworte mit mehr als 8 oder 10 Zeichen. Ohne wirksame Brute-Force-Gegenmaßnahmen sind diese innerhalb von Stunden oder wenigen Tagen knackbar. Auch ein Einbruch in den Webserver liefert dem Angreifer heutzutage häufig den Hash des Passwortes (häufig MD5).
SSL bzw. Public/Private-Key Verfahren zeigen sichere Alternativen. Diese sind häufig sehr lang (>1024 bit) und dadurch nicht mehr erratbar. Außerdem ist es möglich den Public-Key ohne Bedenken herauszugeben, daraus den Private-Key zu errechnen wird auf lange Zeit nicht möglich sein. Das ist zwar auch bei Passworten möglich (md5, sha1 etc), aber diese Hashes sind kürzer und in der Vergangenheit regelmäßig geknackt worden. Erhältliche Rainboxtables und Wörterbuch-Angriffe machen die Rückführung auf das Originalpasswort sehr einfach.
Wie wäre es also, zum Beispiel den Admin-Bereich einer Applikation nicht mittels Username+Passwort zu schützen, sondern mit einem OpenSSL-Keypaar? Dann braucht man sich keine Sorgen über Brute-Force-Angriffe machen.
Eine weitere schöne Anwendungsmöglichkeit ist, wenn sich die Administratoren als einer ihrer User einloggen können möchten. Da man ja die Passworte seiner User nicht kennt muss man das anders lösen.
Linkpool Nummer 7
Blogartikel über Mutation Testing, sehr interessant um seine Tests zu testen:
http://blog.astrumfutura.com/index.php?/plugin/tag/mutateme
Webseitengeschwindigkeit ist wichtig:
http://www.stevesouders.com/blog/2010/05/07/wpo-web-performance-optimization/
http://devzone.zend.com/article/12078-Zend-Framework-1.10.4-Released
Einfacher forken unter Linux mit PCNTL:
http://kore-nordmann.de/blog/0098_native_job_queue.html
Git post-receive Hooks mit Gearman umgesetzt:
http://weierophinney.net/matthew/archives/240-Writing-Gearman-Workers-in-PHP.html
http://code.ning.com/2010/05/php-microbenchmarking/
Inline Grafiken in HTML E-Mails mit Zend_Mail automatisch versenden
Ich (Ralf Eggert) stand neulich vor dem Problem, dass ich alle Grafiken in einer HTML E-Mail automatisch als Inline-Images identifizieren und dann an die E-Mail anhängen wollte. Die Grundidee zur Lösung des Problems ist es, mit einem regulären Ausdruck alle Grafiken zu finden und dann entsprechend anzuhängen. Beim Versand gab es ein paar Probleme, die ich zusammen mit Michaels Hilfe lösen konnte. Und genau deshalb findet ihr hier nun diesen kurzen Gastbeitrag.
Der Code unten zeigt ein komplettes lauffähiges Beispiel. Nach der Konfiguration wird auch gleich ein Zend_Mail Objekt erstellt und der HTML Bereich mit Inhalten bestückt. Über preg_match_all und array_filter werden alle Fundstellen in IMG Tags, im BACKGROUND Attribut sowie im Inline-CSS gefunden. Das Array mit den Ergebnissen wird dann durchlaufen. Abhängig davon, ob es sich um Grafiken auf dem Server oder externe Grafiken handelt, wird dann das entsprechende Attachment erstellt.
Weiterlesen »