Producing salted Password Hashes using the MD5 Algorithm

As an exercise in password storage i implemented a PHP function that takes up to 160 bytes from an UTF-8 encoded Unicode cleartext, generates a random salt and produces a password hash using the MD5 algorithm.

Please note that this is just an exercise and should not be used in production.

  • This code has not been properly tested and has never been reviewed. I think it’s OK for educational purposes (otherwise i would not have published it), but it is very likely to have bugs.
  • There are computational attacks on MD5 that break the algorithms fundamental promises, they can be performed without extraordinary effort. That makes MD5 unusable for security-related purposes in the general case.
  • For PHP version 5.5 and later, you can use the password hashing API instead.

At any rate, it can be helpful to understand what the use case is and what „password hashing“ actually can accomplish. Read on for further observations.

Weiterlesen … »

Einige Bemerkungen zur neuen Webseite des Verkehrsverbundes Rhein-Neckar GmbH (VRN)

Einleitung

Ich bin selbstständiger Web-Entwickler und bin immmer auf der Suche nach interessanten Fallbeispielen, und zwar nicht nur nach den Gelungenen sondern auch nach den Problematischen. Heute möchte ich ein Beispiel für Letztere aus meinem persönlichen Erfahrungsbereich präsentieren.

Als zahlender Kunde freut es mich zwar, dass der öffentliche Verkehrsverbund der Region, VRN GmbH sich zu einer Modernisierung seines Online-Angebots www.vrn.de entschlossen und eine Webseite mit vielen sinnvollen und interessanten Informationen und Funktionen umgesetzt hat.

Leider muss ich aber feststellen, dass sich die Leistungsfähigkeit der Webseite seit deren Erneuerung insgesamt verschlechtert hat und dass gerade bei wichtigen Funktionen wie der Fahrplan-Auskunft spürbar höhere Ladezeiten und störende Fehlfunktionen auftreten, die die Bedienung langsamer und umständlicher als bei der Vorversion machen. Dies möchte ich im Folgenden anhand von vier Beispielen belegen.

Weiterlesen … »

Diese Nachricht könnte ein Betrugsversuch sein

diese.nachricht.koennte.ein.betrugsversuch.sein

USB-WLAN-Adapter mit externer, ausrichtbarer Antenne

Habe jetzt den Edimax EW-7811UAC (Hersteller-Seite) am Linux-Laptop im Einsatz, um Probleme mit der Verbindungsqualität beim Einsatz im Aussenbereich zu beheben.

Treiber: https://github.com/diederikdehaas/rtl8812AU

Hinweis: Andere Varianten des rtl8812-Treibers haben es nicht geschafft, das Gerät zu erkennen bzw. zu initialisieren.Ich verwende Linux Kernel Version 4.1.0.

Alles bestens:

  • Das Gerät funktioniert mit diesem Treiber problemlos, es etabliert 150Mb/s mit 2,4 GHz an einem TP-LINK TL-WR941ND.
  • Das in der README, Abschnitt „DKMS“ beschriebene Verfahren funktioniert ebenfalls.

Apfelblüte

Ausgesprochen schön in dieser Region sind Kirsch- und Apfelblüte. Hier ein sehr alter gelber Kirschbaum:

Gelber Kirschbaum

Gelber Kirschbaum

Einige Apfelbäume aus der Region:

Grüne Apfelblüte

Grüne hochstämmige Apfelblüte, aufgenommen bei diesigem Wetter.

Apfelbäume #1

Traditioneller Streuobst-Apfelbaum am Wegesrand.

Apfelbäume #2

Detail-Ansicht #1

Apfelbäume #3

Detail-Ansicht #2

Webinterface für Kameraüberwachung

Webinterface für Kameraüberwachung, mit dem mehrere Standorte überwacht werden können.

  • Bis zu 16 Kameras pro Fenster.
  • Responsives Layout.
  • Unterstützung für eigene Themes.
  • Vielseitig konfigurierbar: Standortprofile mit eigenen Layouts,
    Refresh-Rate global, pro Standort und pro Kamera,
    optionale Server-Status-Überwachung.
  • Implementation in HTML/JS;
    kompatibel mit allen gängigen Webservern;
    getestet mit allen aktuellen Browsern und Endgeräten.

Teststellung mit 1 USB-Kamera

Teststellung mit 1 USB-Kamera

Beispielanwendung.

Beispielanwendung.

Im Lauf des Jahres ist eine freie Version angedacht, dafür brauchen wir aber Sponsoren – wie heisst es so schön – „von nichts kommt nichts“! Diese erhalten dann natürlich Premium-Support und maßgeschneiderte Features – alles Verhandlunsgsache.

Interessierte Personen oder Unternehmen können sich gerne bei mir melden.

Rejecting Microsoft Executables and Office Documents with Postfix

Here is a pcre-entry for Postfix‘ mime_header_checks that will cause Postfix to reject any email containing

  • a file potentially containing code that is executable on Microsoft operating systems (note that this also includes filenames ending with .js) or
  • a document for Microsoft Office (including Access, Excel, Powerpoint, Visio and Word including RTF Documents) or
  • some archive types (ZIP-, 7Zip-, LHA-Archives and MS Exchange data in TNEF format):
# Contents of file "/etc/postfix/mime_header_checks":
/^Content-(Disposition|Type).*name=.*?\.(
    accd[bert]|
    do(b|[ct][mx]?)|rtf|
    pp(am|(s|t)[mx]?)|pot[mx]?|sld[mx]|
    v[dt]x|vs[dsxt]|
    xl(am?|l|m|[st][mx]?|sb|w)|
    386|
    ad[ep]|app|as[dfx]|
    ba[st]|
    cab|c[bp]l|chm|cmd|com|crt|csh|
    dll|
    exe|
    fxp|
    hlp|ht[aor]|
    in[fips]|isp|
    jar|jse?|
    ksh|
    lib|lnk|
    md[bet]|ms[cipt]|
    ocx|ops|
    pcd|pif|prg|
    reg|
    sc[rt]|sh[bms]?|swf|sys|
    url|
    vb[esx]|vcs|vxd|
    wm[dsz]|
    ws[cfh]|
    7z|lha|tnef|zip)\s*([;'"]|$)/x
        REJECT Attachment of type $2 not accepted

Weiterlesen … »

Winning the Copyleft Fight

lol or meh, that is the question.

lol or meh, that is the question.