Schuer: Verzögertes Maskieren von Passworteingaben (+ jQuery-Plugin)

Hallo,

Jakob Nielsen[1] hat neulich einen Artikel »Stop Password Masking« veröffentlicht, in dem er sinngemäß folgendes sagt:

Usability leidet darunter, wenn Benutzer bei der Eingabe von Passwörtern
  lediglich eine Reihe von Platzhalterzeichen erhalten. Normalerweise
  erhöht das Maskieren von Passwörtern nichtmal die Sicherheit, sondern
  es kann aufgrund der Schwierigkeiten beim Login eher noch Ihrem
  Geschäft schaden. [2]

Nielsen empfielt, Passwortfelder mit Klartext zu beschreiben und dazu eine Checkbox anzubieten, die angeklickt werden kann, wenn sich der Benutzer in der Öffentlichkeit befindet, so dass die Eingabe dann wie gewohnt maskiert wird und niemand über seine Schulter blicken kann, um das Passwort auszuspähen.
Vorgabe ist jedoch, dass die Checkbox nicht aktiviert ist, das Passwort also im Klartext ausgegeben wird.

Wie seht ihr das? Ich glaube, dass es sicherheitstechnisch bedenklich ist, Passworteingaben nicht zu maskieren. Ist erst eine Aktion nötig -- Checkbox aktivieren --, um die Eingabe zu verstecken, wird die Gewohnheit in manchen Fällen dazu führen, dass der Benutzer nicht daran denkt, das Passwort zu maskieren.

Und natürlich gab es bereits Kritik an Nielsens Aussage, der Benutzer säße in den meisten Fällen sowieso zuhause vorm Bildschirm, wo ihm niemand über die Schulter schaut. Denn Großraumbüros, Mobiles Internet, Freie WLANs, Internetnutzung bei Veranstaltungen, Social Networking vor Ort, das aktuell beliebt werdende Coworking [3] oder auch technische Features wie Screen-Sharing schaffen viele Situationen, in denen der Bildschirm eben nicht immer vollkommen privat ist. Passwörter im Klartext einzugeben kann hier durchaus gefährlich sein.

Als Mittelweg zwischen Nielsen und den gewöhnlichen Passwortfeldern fanden wir die Variante sinnvoll, die auf dem iPhone eingesetzt wird: Allein das zuletzt eingegebene Zeichen wird für 2-3 Sekunden im Klartext ausgegeben, um dem Benutzer eine Rückmeldung seiner Eingabe zu geben.

Und inzwischen haben wir ein jQuery-Plugin gebaut, das versucht, diese Methode auf Webformulare zu übertragen. Es gibt noch ein paar Makel und Einschränkungen, von denen manche vermutlich nicht lösbar sind, aber grundsätzlich funktioniert es schon halbwegs gut. Eine Demo gibt's im Blogeintrag zum Plugin:
http://blog.decaf.de/2009/07/iphone-like-password-fields-using-jquery/

Hier im Forum wird in letzter Zeit viel JS diskutiert. Ich würde mich freuen, wenn ihr Lust habt, einen Blick auf das Plugin zu werfen und Feedback zu geben. Technisch ist das erst der erste Wurf, und es gibt sicherlich noch vieles zu verbessern.
Ganz allgemein bin ich auch gespannt, ob ihr die Methode halbwegs sinnvoll findet oder nur als Gefrickel anseht ;)

Viele Grüße
_Dirk

  1. Hallo!

    Ich bin zu der Ansicht gelangt, dass dieses Plugin ein gutgemachter Versuch ist, den Browserherstellern die Arbeit abzunehmen, ein besseres Sicherheitsmodell für ihre Software zu erstellen.

    Abgesehen davon ist die iPhone-Methode immer noch problematisch, da es trotzdem möglich ist, das Passwort auszuspähen. Viel besser ist da doch ein Modell, welches es ermöglichen würde, ohne einfach nachvollziehbare manuelle Eingabe die Identität des Nutzers festzustellen - sei es durch entsprechende geheime Schlüssel auf einer SD-Card in einem Challenge-Response-Verfahren oder durch eine Kombination aus Fingerabdruck und Maus- bzw. Fingergesten - oder durch etwas ganz anderes, auf das wir einfach noch nicht gekommen sind.

    Bis wir zu einer haptischeren Lösung gekommen sind, sind normale Passwörter immer noch der beste Weg, um die Sicherheit der Nutzeridentität zu schützen.

    Gruß, LX

    --
    RFC 1925, Satz 8: Es ist komplizierter als man denkt.
    1. Ich bin zu der Ansicht gelangt, dass dieses Plugin ein gutgemachter Versuch ist, den Browserherstellern die Arbeit abzunehmen, ein besseres Sicherheitsmodell für ihre Software zu erstellen.

      Finde ich gut. Danke für die Rückmeldung!

      Viele Grüße
      _Dirk

  2. Hi,

    Jakob Nielsen[1] hat neulich einen Artikel »Stop Password Masking« veröffentlicht, in dem er sinngemäß folgendes sagt:
    [...]
    Wie seht ihr das?

    ich sehe das so, dass große Namen keine Garantie für große Worte sind. Manchmal kommt auch völliger Schwachsinn bei raus, für den andere Leute gekündigt würden (oder zumindest gehören). Ich hoffe für Herrn Nielsen, dass es sich bei seiner Äußerung um ein Experiment handelt.

    Als Mittelweg zwischen Nielsen und den gewöhnlichen Passwortfeldern fanden wir die Variante sinnvoll, die auf dem iPhone eingesetzt wird: Allein das zuletzt eingegebene Zeichen wird für 2-3 Sekunden im Klartext ausgegeben, um dem Benutzer eine Rückmeldung seiner Eingabe zu geben.

    Es dürfte nur wenige Menschen auf dem Planeten geben, die hierbei nicht bereits aus dem Augenwinkel das Passwort unbewusst mitlesen können. Danke übrigens für die Info, ich hielt diesen Umstand bisher für einen Bug im iPhone-Simulator, mit dem ich gelegentlich arbeite - ein weiterer Grund, weshalb ich ein solches Gerät garantiert nicht kaufen werde.

    Und inzwischen haben wir ein jQuery-Plugin gebaut, das versucht, diese Methode auf Webformulare zu übertragen. Es gibt noch ein paar Makel und Einschränkungen, von denen manche vermutlich nicht lösbar sind, aber grundsätzlich funktioniert es schon halbwegs gut.

    Der größte Makel dürfte sein, dass das Passwort (ganz oder teilweise) im Klartext angezeigt werden kann. Meine Güte.

    Hier im Forum wird in letzter Zeit viel JS diskutiert. Ich würde mich freuen, wenn ihr Lust habt, einen Blick auf das Plugin zu werfen und Feedback zu geben. Technisch ist das erst der erste Wurf, und es gibt sicherlich noch vieles zu verbessern.

    Verbesserungsvorschlag: Bitte löschen.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. ich sehe das so, dass große Namen keine Garantie für große Worte sind. Manchmal kommt auch völliger Schwachsinn bei raus, für den andere Leute gekündigt würden (oder zumindest gehören). Ich hoffe für Herrn Nielsen, dass es sich bei seiner Äußerung um ein Experiment handelt.

      Er wollte sicherlich ein bisschen provozieren. Und hat dafür einige Kritik ernten müssen. Wer Visionär sein möchte, muss nunmal weit raus schwimmen ;)

      Es dürfte nur wenige Menschen auf dem Planeten geben, die hierbei nicht bereits aus dem Augenwinkel das Passwort unbewusst mitlesen können.

      Chuck Norris, okay. Wer noch?

      Der größte Makel dürfte sein, dass das Passwort (ganz oder teilweise) im Klartext angezeigt werden kann. Meine Güte.

      Durchaus, ja. Aber für den Fall, dass ein Passwort nicht maskiert wird, sondern im Klartext ausgegeben wird: Siehst Du eine Missbrauchsgefahr? Jemand, der im Moment des Eintippens hinterm Benutzer steht und per Fernzündung den modifizierten Browser per JS veranlasst, die Maskierung aufzuheben?
      Scheint mir noch etwas abstrakt, aber vielleicht magst Du es weiter ausmalen?

      Verbesserungsvorschlag: Bitte löschen.

      Das ist mit JS alleine nicht möglich, sondern müsste serverseitig geschehen ;)

      Viele Grüße
      _Dirk

      1. Hi,

        Er wollte sicherlich ein bisschen provozieren. Und hat dafür einige Kritik ernten müssen. Wer Visionär sein möchte, muss nunmal weit raus schwimmen ;)

        zugegeben. Allerdings sehe ich keinen Sinn darin, aus dem Meer heraus in ein Abwasserrohr bis hin zu den letzten versumpften Katakomben zurück zu schwimmen.

        Es dürfte nur wenige Menschen auf dem Planeten geben, die hierbei nicht bereits aus dem Augenwinkel das Passwort unbewusst mitlesen können.

        Chuck Norris, okay. Wer noch?

        Ähm, ich. Mir ist es bisher immer gelungen, das Passwort mitzubekommen, das ein Kollege im Simulator eintippte, während ich noch in einem anderen Fenster seinen Code las. Und er tippt nicht langsam.

        Der größte Makel dürfte sein, dass das Passwort (ganz oder teilweise) im Klartext angezeigt werden kann. Meine Güte.
        Durchaus, ja. Aber für den Fall, dass ein Passwort nicht maskiert wird, sondern im Klartext ausgegeben wird: Siehst Du eine Missbrauchsgefahr?

        Missbrauchgefahr bei einem für jeden zufälligen Passanten lesbaren Passwort? Ja, die sehe ich.

        Jemand, der im Moment des Eintippens hinterm Benutzer steht und per Fernzündung den modifizierten Browser per JS veranlasst, die Maskierung aufzuheben?

        Die Fernzündung kann Shift+Tab Leerzeichentaste sein. Ist schnell getippt, wenn man es ein wenig geschickt anstellt. Ich möchte auch gar nicht erst von möglichen Script-Fehlern anfangen, aber Fehlbedienung ist ein durchaus präsentes Problem - nicht jeder schaut beim Tippen auf den Bildschirm, es kann ganz hervorragend passieren, dass jemand sein komplettes Passwort der Öffentlichkeit preisgibt, bevor er bemerkt, dass er die Checkbox doch nicht aktiviert hat. Wer ein solches Risiko bei *Passwörtern* eingeht, dem würde ich nicht mal ein Exemplar der StVO anvertrauen.

        Scheint mir noch etwas abstrakt, aber vielleicht magst Du es weiter ausmalen?

        Bunt genug? :-)

        Verbesserungsvorschlag: Bitte löschen.
        Das ist mit JS alleine nicht möglich, sondern müsste serverseitig geschehen ;)

        Make it so.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. nicht jeder schaut beim Tippen auf den Bildschirm, es kann ganz hervorragend passieren, dass jemand sein komplettes Passwort der Öffentlichkeit preisgibt, bevor er bemerkt, dass er die Checkbox doch nicht aktiviert hat. Wer ein solches Risiko bei *Passwörtern* eingeht, dem würde ich nicht mal ein Exemplar der StVO anvertrauen.

          Hm, haben wir uns missverstanden? Mir ging es nicht um die Methode, Passwörter generell im Klartext anzuzeigen und optional per Checkbox zu maskieren -- so wie Nielsen vorschlägt --, sondern mir ging es um die Methode des verzögerten Maskierens, bei dem nur der letzte Buchstabe des Passworts für 2-3 Sekunden sichtbar ist, um dem Benutzer Rückmeldung über seine Eingabe zu geben.

          Passwörter im Klartext sehe ich auch als No-go. Das verzögerte Maskieren allerdings finde ich ziemlich cool und denke auch nicht, dass viele Leute außer Chuck Norris, Dir und Christian von hinten über die Schulter ein Passwort in 12-16px mitlesen können, falls es sich nicht gerade um alltägliche Worte wie »Schlauchboot«, »Gartenmulch« oder »Vital-Fluoreszenz-Doppelfärbung« handelt.

          Bunt genug? :-)

          Zu quietschig. Hast Du auch Pastellfarben?

          Viele Grüße
          _Dirk

          1. Hallo Schuer,

            ... Das verzögerte Maskieren allerdings finde ich ziemlich cool und denke auch nicht, dass viele Leute außer Chuck Norris, Dir und Christian von hinten über die Schulter ein Passwort in 12-16px mitlesen können, falls es sich nicht gerade um alltägliche Worte wie »Schlauchboot«, »Gartenmulch« oder »Vital-Fluoreszenz-Doppelfärbung« handelt.

            und die können das Passwort bestimmt auch beim Blick auf die Tastatur beim Tippen mitlesen.

            Mir gefällt das Tool sehr gut und ich sehe da auch keine zusätzlichen Sicherheitsrisiken.

            Gruß, Jürgen

            1. Mir gefällt das Tool sehr gut und ich sehe da auch keine zusätzlichen Sicherheitsrisiken.

              Danke für Deine Rückmeldung, Jürgen!

              Viele Grüße
              _Dirk

      2. 你好 Schuer,

        Es dürfte nur wenige Menschen auf dem Planeten geben, die hierbei nicht bereits aus dem Augenwinkel das Passwort unbewusst mitlesen können.

        Chuck Norris, okay. Wer noch?

        Also, mir gelingt das üblicherweise auch.

        Beim iPhone halte ich das noch für erträglich (aber nicht für gut), da das Device klein ist und ich es beim tippen mit der Hand verdecken kann. Bei einem handelsüblichen breitbild-Monitor bräuchte man schon verdammt breite Hände ;-)

        再见,
         克里斯蒂安

        --
        http://wwwtech.de/
        Kommt ein Nullvektor zum Psychiater: "Herr Doktor, ich bin orientierungslos!"
        Hochzeit mit FlitterwochenCFPropertyList: PHP-Klassen zur Manipulation von Apples property lists
        1. Also, mir gelingt das üblicherweise auch.

          Jaaa, Duuuuuu! Aber..

          Viele Grüße
          _Dirk

          1. Hallo Dirk,

            Jaaa, Duuuuuu! Aber..

            Hier, ich bin auch nicht ganz frei davon, es sei denn das Passwort besteht nur Zahlen. Aber ich werde von Dir auch wahrscheinlich in die Abteilung Freak einsortierst, während Du das Banner der Normalen hochhältst. ;)

            Tim

            1. Hier, ich bin auch nicht ganz frei davon

              Okay, ich sehe schon, wir müssen hier demnächst mal einen Testcase bauen. Alle einen Schritt zurücktreten, abwechselnd das linke und rechte Auge zuhalten und dabei den halbmaskierten Duden vorlesen.
              Menschen mit absolutem Gehör brauchen vermutlich nichtmal hinschauen, sondern erkennen Buchstabenfolgen allein am Klang der genormten Tastatur.

              Aber ich werde von Dir auch wahrscheinlich in die Abteilung Freak einsortierst,

              Neh neh, das deutest Du falsch. Ich versuche ja immer, möglichst wenige Dinge in Schubladen zu lagern, wenn es sich vermeiden lässt.

              Viele Grüße
              _Dirk

    2. @@Cheatah:

      nuqneH

      ich sehe das so, dass große Namen keine Garantie für große Worte sind. Manchmal kommt auch völliger Schwachsinn bei raus, für den andere Leute gekündigt würden (oder zumindest gehören). Ich hoffe für Herrn Nielsen, dass es sich bei seiner Äußerung um ein Experiment handelt.

      Nielsen sieht es aus einem anderen Blickwinkel: Es ist für den Nutzer immer sinnvoll, vom System eine genaue Rückmeldung über die gemachte Eingabe zu erhalten. Dass dies bei sicherheitsrelevanten Dingen wie Passworteingabe problematisch ist, steht auf einem ganz anderen Blatt.

      Daher finde ich die Variante, das jeweils letzte Zeichen anzuzuegen, gar nicht so uninteressant.

      Qapla'

      PS: Äußerst dümmlich ist die Passworteingabe bspw. in der Kommandozeile von UNIX/Linux. Dort wird gar nichts angezeigt, der Nutzer erkennt nicht, ob das System den Tastendruck akzeptiert hat oder nicht.

      --
      Bildung lässt sich nicht downloaden. (Günther Jauch)
      1. Nielsen sieht es aus einem anderen Blickwinkel: Es ist für den Nutzer immer sinnvoll, vom System eine genaue Rückmeldung über die gemachte Eingabe zu erhalten. Dass dies bei sicherheitsrelevanten Dingen wie Passworteingabe problematisch ist, steht auf einem ganz anderen Blatt.

        Ich denke auch, dass ihm der Sicherheitsaspekt durchaus bewusst ist, er aber für dieses Dickicht von Aufmerksamkeit für seinen Artikel gerne etwas Prügel einstecken wollte.

        Daher finde ich die Variante, das jeweils letzte Zeichen anzuzuegen, gar nicht so uninteressant.

        Hätte ich bei Dir nicht unbedingt vermutet. Schön zu hören!

        Viele Grüße
        _Dirk

    3. Hallo.

      ich sehe das so, dass große Namen keine Garantie für große Worte sind. Manchmal kommt auch völliger Schwachsinn bei raus, für den andere Leute gekündigt würden (oder zumindest gehören).

      Dann bleibt zu hoffen, dass dein Hang zur Geheimhaltung vertraulicher Daten auch deinen Nick einschließt.
      MfG, at

  3. n'abend,

    http://blog.decaf.de/2009/07/iphone-like-password-fields-using-jquery/

    Der Ansatz scheint zu funktionieren. Beim Überfliegen des Codes sind mir die einen oder anderen Dinge aufgefallen:

    1. Funktionsweise von jQuery.extend()
      var opts = $.extend(defaults, options);
      A Plugin Development Pattern behauptet, dass du $.extend( {}, defaults, options ) ausführen möchtest.

    2. Mehrere Variablen deklarieren

    var opts    = $.extend(defaults, options);  
    var checker = new Array();  
    var timer   = new Array();
    

    könnte auch wie folgt notiert werden:

    var opts = $.extend( {}, defaults, options ),  
      checker = [],  
      timer = [];
    
    1. Redundanten Code vermeiden
    // get original password tag values  
    var name        = $(this).attr('name');  
    var id          = $(this).attr('id');  
    var cssclass    = $(this).attr('class');  
    var style       = $(this).attr('style');  
    var size        = $(this).attr('size');  
    var maxlength   = $(this).attr('maxlength');  
    var disabled    = $(this).attr('disabled');  
    var tabindex    = $(this).attr('tabindex');  
    var accesskey   = $(this).attr('accesskey');  
    var value       = $(this).attr('value');
    

    Das ständige $(this) bedeutet unnötige Aufwand (prüfen ob jQuery Objekt bereits existiert, aus cache holen). ein var $this = $(this); tut in sachen Speicherverbrauch nicht weh, reduziert aber unnötige Arbeit.

    Wenn du eine ganze Litanei von ähnlich zu verarbeitetenden Werten hast, bietet es sich an den kram in einer Schleife zu erledigen:

    var attributes = [ 'name', 'id', 'class', 'style', 'size', 'maxlength', 'disabled', 'tabindex', 'accesskey', 'value' ],  
      data = [],  
      $this = $(this);  
      
    $.each( attributes, function()  
    {  
      var key = this + "";  
      data[ key ] = $this.attr( key );  
    });
    
    1. Scope Scope Scope
    getId = function(id) {  
    /* ... */  
    }
    

    Diese anonyme Funktion ist im globalen Scope richtig aufgehoben? Möchtest du der _Wertzuweisung_ noch ein Semikolon anhängen, damit beim Minifizieren nichts kaputt geht? Etwa so:

    var getId = function(id) {  
    /* ... */  
    };
    
    1. write less, do the same
      tmp = tmp + unescape(opts.replacement); kann auch als tmp += unescape(opts.replacement); notiert werden.

    weiterhin schönen abend...

    --
    #selfhtml hat ein Forum?
    sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|
    1. Klasse. Großartigen Dank, globe!

      Viele Grüße
      _Dirk

  4. Hey,

    jahrelang wird auf jedem noch so kleinen Benutzer rumgehackt:

    "don't fuck with my browser!"

    Woher weisst du, ob nicht vielleicht schon eine Extension diesen Zweck in MEINEM Browser erfüllt?

    hth

    P.S. auch wenn jemand 12312312444 Follower in seinem Twittershitter Account hat, heisst das noch lange nicht, dass er/sie auch sinnvolle Sachen von sich gibt.

    1. Woher weisst du, ob nicht vielleicht schon eine Extension diesen Zweck in MEINEM Browser erfüllt?

      Guter Punkt, danke dafür!

      Viele Grüße
      _Dirk

    2. P.S. auch wenn jemand 12312312444 Follower in seinem Twittershitter Account hat, heisst das noch lange nicht, dass er/sie auch sinnvolle Sachen von sich gibt.

      Nielsen twittert?? Hell freezes over!

      Mathias

  5. Hallo,

    zu Nielsen sag' ich lieber nichts ...

    und es gibt sicherlich noch vieles zu verbessern.
    Ganz allgemein bin ich auch gespannt, ob ihr die Methode halbwegs sinnvoll findet oder nur als Gefrickel anseht ;)

    ... aber ich komme doch nochmals auf ihn zurück:

    Nielsen empfielt, Passwortfelder mit Klartext zu beschreiben und dazu eine Checkbox anzubieten, die angeklickt werden kann, wenn sich der Benutzer in der Öffentlichkeit befindet, so dass die Eingabe dann wie gewohnt maskiert wird und niemand über seine Schulter blicken kann, um das Passwort auszuspähen.

    es hängt ganz wesentlich von der Anwendung selbst ab. Ich sitze sehr oft an einem Rechner, dessen Anzeige auf eine Leinwand projiziert wird und muss mich mit Echtdaten an diversen Webanwendungen anmelden. Hier möchte ich noch nicht mal den iPhone-Modus haben.

    Deswegen wäre meine Empfehlung (für solche Anwendungen) genau umgekehrt:
    Standardmäßig Eingabe wie gewohnt komplett maskiert. Über eine Checkbox kann der iPhone-Modus aktiviert werden.

    Dass dieser nützlich sein kann, will ich nicht bestreiten: Feststelltaste, falsche Zeicheneingabe wegen falscher Tastaturbelegung, nicht aktivierter Ziffernblock, ... ich hab' in meiner Praxis schon viel erlebt.

    Freundliche Grüße

    Vinzenz

    1. es hängt ganz wesentlich von der Anwendung selbst ab. Ich sitze sehr oft an einem Rechner, dessen Anzeige auf eine Leinwand projiziert wird und muss mich mit Echtdaten an diversen Webanwendungen anmelden. Hier möchte ich noch nicht mal den iPhone-Modus haben.

      Letztlich ist es doch so, hier geht es um Sicherheit und spätestens beim Bankkonto will jeder die möglichst 100% Sicherheit. Deshalb ist alles was einem zu mehr Sicherheitsdenken erzieht und Bequemlichkeit ignoriert sinnvoll. Ich bin auch kein Freund der Passworteingabe in der Linuxkonsole, aber das ist vermutlich der sicherste Mechanismus.

      Als ich den Internet Account an der Uni bekam, mußte ich an einem fremden Rechner, in einer Konsole oder DOS Fenster, mein Passwort dafür eingeben. Das ich mir in dem Moment ausdenken sollte. Und ich hatte nicht gepeilt, dass ich in einem falschen Feld war und dort mein Passwort eintippte. Für mehrere Leute, die daneben standen, lesbar. Das war peinlich :-) ich benutze das Passwort heute noch ;-)

      Ich finde das Passwort sollte nie angezeigt werden, auch wenn's lästig ist.

      Struppi.

      1. Ich finde das Passwort sollte nie angezeigt werden, auch wenn's lästig ist.

        *Strichliste zück*

        Auch diese Meinung kann ich natürlich gut nachvollziehen. Danke für Dein Posting!

        Viele Grüße
        _Dirk

      2. @@Struppi:

        nuqneH

        Ich bin auch kein Freund der Passworteingabe in der Linuxkonsole, aber das ist vermutlich der sicherste Mechanismus.

        Die Anzeige von '●' o.ä. für jedes Zeichen ist auch nicht unsicherer als gar keine Ausgabe. Man erkennt zwar die Länge des Passworts; diese ist in vielen Fällen aber ohnehin bekannt (PINs von Geldkarten bestehen immer aus 4 Ziffern).

        Ich finde das Passwort sollte nie angezeigt werden, auch wenn's lästig ist.

        Ich finde, zumindest ein '●' für jedes eingegebene Zeichen sollte angezeigt werden.

        Qapla'

        --
        Bildung lässt sich nicht downloaden. (Günther Jauch)
        1. Ich finde das Passwort sollte nie angezeigt werden, auch wenn's lästig ist.

          Ich finde, zumindest ein '●' für jedes eingegebene Zeichen sollte angezeigt werden.

          Finde ich im Prinzip ja auch (schrieb ich auch bereits). Aber wie schon gesagt, vom erzieherischen Aspekt, in Bezug auf den Umgang mit Passwörtern,  halte ich die Linuxvariante für sinnvoller.

          Struppi.

        2. Hallo.

          Die Anzeige von '●' o.ä. für jedes Zeichen ist auch nicht unsicherer als gar keine Ausgabe. Man erkennt zwar die Länge des Passworts; diese ist in vielen Fällen aber ohnehin bekannt (PINs von Geldkarten bestehen immer aus 4 Ziffern).

          [...]

          Ich finde, zumindest ein '●' für jedes eingegebene Zeichen sollte angezeigt

          Ich kann mich an eine Passwortabfrage erinnern, die pro eingegebenem Zeichen sogar drei Sternchen angezeigt hat. Sehr gewöhnungsbedürftig.
          MfG, at

      3. Hallo Struppi,

        Letztlich ist es doch so, hier geht es um Sicherheit und spätestens beim Bankkonto will jeder die möglichst 100% Sicherheit.

        Wenn das bloß der Fall wäre. ;-) Es hat schon seinen Grund, warum Banken explizit ihre Kunden noch einmal darauf hinweisen, dass sie ihre PIN eben nicht auf die Karte selbst draufschreiben sollen.

        Viele Grüße,
        Christian

        --
        Mein "Weblog" [RSS]
        Using XSLT to create JSON output (Saxon-B 9.0 for Java)
        »I don't believe you can call yourself a web developer until you've built an app that uses hyperlinks for deletion and have all your data deleted by a search bot.«
                    -- Kommentar bei TDWTF
        1. Letztlich ist es doch so, hier geht es um Sicherheit und spätestens beim Bankkonto will jeder die möglichst 100% Sicherheit.

          Wenn das bloß der Fall wäre. ;-) Es hat schon seinen Grund, warum Banken explizit ihre Kunden noch einmal darauf hinweisen, dass sie ihre PIN eben nicht auf die Karte selbst draufschreiben sollen.

          Gibt's natürlich alles, genauso wie Leute ihr Passwort auf Anfrage rausrücken. Ist aber eher nicht die Regel.

          Mittlerweile sind in vielen Banken auch Hinweise, dass man beim eintippen der PIN am Automat, die Hand darüber halten soll, obwohl diese maskiert ist. Da würd auch keiner (mehr) auf die Idee kommen die Nummer anzeigen zu lassen. Ich kenn zwei Leute, denen letztes Jahr das Konto abgeräumt wurde.

          Struppi.

    2. Ich sitze sehr oft an einem Rechner, dessen Anzeige auf eine Leinwand projiziert wird und muss mich mit Echtdaten an diversen Webanwendungen anmelden. Hier möchte ich noch nicht mal den iPhone-Modus haben.

      Das ist ein wichtiger Punkt. Und gerade den hatten wir nicht bedacht, als wir das Passwortding gebaut haben:

      Sobald der Bildschirm dauerhaft öffentlich ist, muss das Passwort vollständig maskiert werden.

      Wir wollen deshalb für die nächste Version des Plugins eine dezente Möglichkeit zum Deaktivieren der Klartextanzeige einbringen. Macht es zwar wieder ein Stück komplexer, aber zumindest werden dann diese Situationen verhindert, in denen das Plugin kategorisch nicht eingesetzt werden könnte.

      Deswegen wäre meine Empfehlung (für solche Anwendungen) genau umgekehrt:
      Standardmäßig Eingabe wie gewohnt komplett maskiert. Über eine Checkbox kann der iPhone-Modus aktiviert werden.

      In dem Fall würde ich allerdings vorschlagen, dass per Checkbox das gesamte Passwort im Klartext angezeigt wird. Im Gegensatz zu Nielsens Empfehlung aber eben nicht per default, sondern optional für den Fall, dass die Eingabe geprüft werden will.

      Danke für Deine Rückmeldung!

      Viele Grüße
      _Dirk

  6. Hi Dirk et al,

    die Meinung, dass man Klartextanzeige des Passwortes immer als opt-in und nicht als opt-out anbieten sollte, kam schon von einigen anderen im Thread - da schliesse ich mich an.
    Mensch ist ein Gewohnheitstier, und bei der erwähnten Präsentation am Beamer vergesse ich dann bestimmt dieses Feature abzuschalten, wenn es per Default an ist - weil es nach einem anfänglichen Aha-Effekt bis dahin bestimmt schon so sehr zur Gewohnheit geworden ist, dass ich es nicht mehr explizit wahrnehme. (Mein initiales opt-out bei erstmaliger Nutzung der Seite in einem Cookie zu speichern, wäre auch keine Alternative - wenn ich bei der Präsentation überhaupt meinen eigenen Browser nutze, dann sorgt Murphy garantiert dafür, dass genau fünf Minuten vorher der Cookie abgelaufen ist.)

    Wenn überhaupt, dann würde ich als Nutzer eine Option begrüssen, die mir die Anzeige des kompletten Passwortes im Klartext ermöglicht - und auch diese wohl vor allem während eines Registrierungsvorgangs nutzen. Das jeweils letzte Zeichen im Klartext anzuzeigen wie beim iPhone, da sehe ich weniger Sinn drin. Wobei es den da vielleicht noch eher hat, bzw. generell bei Systemen, wo die Eingabe über einen Touchscreen passiert - da ist das visuelle Feedback, dass ein "Tastendruchk" angenommen wurde, vielleicht sogar noch ganz wünschenswert. Bei einer normalen Tastatur, auf der ich Zeichen "einhacken" kann, habe ich das aber noch nie vermisst, da mir Tastsinn und Gehör schon ausreichend Feedback geben. (Der Feedback-Aspekt ist noch das einzige, was dieses Feature beim iPhone für mich halbwegs rechtfertigt. Gerade das Ding düfte zu den Devices zählen, bei denen ich noch in der höchsten Anzahl denkbarer Szenarien die Möglichkeit habe, es vor zu neugierigen Augen einfach wegzudrehen.)

    Einige Mitposter haben Bedenken hinsichtlich der Sicherheit geäussert.
    So lange man das immer und jedes Mal als explizite Wahlmöglichkeit für den Nutzer mit Maskierung als Default umsetzt, sehe ich diesbezüglich eigentlich kaum ein Problem.
    Der "Bequemlichkeits-Faktor" soll gefährlich werden können. Aber ob das in Zeiten, wo das Passwort immer noch zu oft entweder "passwort" heisst, oder mittels Post-It am Monitor klebt, ein relevantes Argument ist - ich weiss nicht.

    Zu deinem Plugin und der Testmöglichkeit in deinem Blog: Dabei irritiert mich (wenn ich denn wirklich hinsehe, was ich beim Tippen von Passwörtern normalweise nicht mache), dass der Cursor im Feld immer hin und her zappelt, je nachdem ob gerade ein schmales l oder ein fettes m durch den Kringel ersetzt wird - da würde ich also vorschlagen, generell eine monospace-Schriftart für das Passwortfeld zu wählen, dann sieht das ganze etwas ruhiger aus.

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
    1. die Meinung, dass man Klartextanzeige des Passwortes immer als opt-in und nicht als opt-out anbieten sollte, kam schon von einigen anderen im Thread - da schliesse ich mich an.

      Ist auch meine Meinung. Nielsens Vorschlag hingegen ist zu unsicher.

      Das jeweils letzte Zeichen im Klartext anzuzeigen wie beim iPhone, da sehe ich weniger Sinn drin. Wobei es den da vielleicht noch eher hat, bzw. generell bei Systemen, wo die Eingabe über einen Touchscreen passiert - da ist das visuelle Feedback, dass ein "Tastendruchk" angenommen wurde, vielleicht sogar noch ganz wünschenswert.

      Stimmt, an Geräten mit Touchscreen oder ohne QWERTY-Tastatur macht das Feedback, welches Zeichen eingegeben wurde, sehr viel Sinn. Vor allem auch, weil es für gewöhnlich kein Copy & Paste gibt -- Wenn es das gibt und es benutzt wird, sollte allerdings der gesamte String maskiert werden. Oder in Kurzform: Wird mehr als ein Zeichen pro Anschlag eingegeben, maskiere diese vollständig.

      Zu deinem Plugin und der Testmöglichkeit in deinem Blog: Dabei irritiert mich (wenn ich denn wirklich hinsehe, was ich beim Tippen von Passwörtern normalweise nicht mache), dass der Cursor im Feld immer hin und her zappelt, je nachdem ob gerade ein schmales l oder ein fettes m durch den Kringel ersetzt wird - da würde ich also vorschlagen, generell eine monospace-Schriftart für das Passwortfeld zu wählen, dann sieht das ganze etwas ruhiger aus.

      Gute Anregung. Danke dafür und für den Kommentar insgesamt!

      Die nächste Version ist in Arbeit und wird vermutlich alle aktuell offenen (technischen) Kritikpunkte ausmerzen. Bei der Gelegenheit wird's dann nochmal aufgehübscht.

      Viele Grüße
      _Dirk

      1. Hallo.

        Stimmt, an Geräten mit Touchscreen oder ohne QWERTY-Tastatur macht das Feedback, welches Zeichen eingegeben wurde, sehr viel Sinn. Vor allem auch, weil es für gewöhnlich kein Copy & Paste gibt -- Wenn es das gibt und es benutzt wird, sollte allerdings der gesamte String maskiert werden. Oder in Kurzform: Wird mehr als ein Zeichen pro Anschlag eingegeben, maskiere diese vollständig.

        Apropos Copy & Paste: Wenn ich bei eurer Lösung ein Passwort eingebe, kann dieses ja in einem Dialogfenster kontrolliert werden. Wenn ich jedoch das Passwort aus eurem Eingabefeld ausschneide und wieder hineinkopiere, zeigt mir der Dialog anschließend kein Passwort mehr an. Getestet in Opera, Safari und Firefox. Praktisch relevant ist dieser Fehler trotz der ungewöhnlichen Handhabung meines Erachtens aus zwei Gründen: Erstens muss man von einem Sicherheitsmerkmal eine einwandfreie Funktion erwarten können. Zweitens könnte der Fehler auf eine tieferliegende Fehlfunktion hindeuten, die weit schwerer wiegende Konsequenzen haben könnte.
        Ansonsten bitte ein Lob von mir verbuchen, danke.
        MfG, at

        1. Wenn ich jedoch das Passwort aus eurem Eingabefeld ausschneide und wieder hineinkopiere, zeigt mir der Dialog anschließend kein Passwort mehr an.

          Ja, copy & paste ist in der aktuellen Version ein wirkliches Übel. Die nächste Version aber wird es sehr viel besser machen. Wenn ich das richtig sehe, können wir alle Macken ausmerzen, die aktuell bekannt sind. Damit sollte das Ding robust genug für die Praxis sein.

          Ansonsten bitte ein Lob von mir verbuchen, danke.

          Vielen Dank, aus Deinem design- und usabilitylastigen Mund freut mich das umso mehr!

          Viele Grüße
          _Dirk