Laden...

[gelöst] Wie übermittle ich ein Passwort möglichst sicher an eine (externe) Textbox

Erstellt von Grantig vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.137 Views
Grantig Themenstarter:in
19 Beiträge seit 2009
vor 12 Jahren
[gelöst] Wie übermittle ich ein Passwort möglichst sicher an eine (externe) Textbox

Hallo,

da ich an einer Art Passwort Manager arbeite stellt sich mir die Frage, wie ich möglichst sicher ein Passwort in eine beliebige (Passwort)Textbox einfügen kann.

Mein Ansatz sieht folgendermaßen aus:

  1. Das Fenster ermitteln, das gerade den Keyboard Fokus hat
  2. Dem Fenster per SendMessage jeden Buchstaben des Passworts einzeln senden

SendMessage(targetWindow, WM_CHAR, new IntPtr(c), IntPtr.Zero);

Ist ja relativ einfach und funktioniert auch.
Aber ist das auch sicher, bzw. gibt es eine bessere Lösung für mein Problem?
Wenn ja, wie würde die aussehen?

G
538 Beiträge seit 2008
vor 12 Jahren

Du könntest einfach mal bei KeePass in den SourceCode schauen. Die haben dort das sog. "AutoType"-Feature, was ziemlich genau das tut, was du ebenfalls versuchst.

Version 2 ist sogar in .NET geschrieben.

Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann - umgekehrt ist das schon schwieriger (K. Tucholsky)
Das Problem mit Internet-Zitaten ist, dass sie oftmals zu unrecht als authentisch angenommen werden. (K. Adenauer)

3.430 Beiträge seit 2007
vor 12 Jahren

Hallo Grantig,

das Ganze ist schon relativ sicher.
Klar, wenn ein Keylogger oder Ähnliches läuft dann hast du ein Problem.
Aber da hast du auch ein Problem wenn du das PW physisch eintippst.

Der Vorteil von dieser Lösung ist dass es relativ einfach zu realisieren ist und fast mit jeder Form von Passworteingabe zurecht kommt.

z.B. KeePass macht das genauso. mit der Tastenkombination STRG+V springt er automatisch zu den zuletzt fokussierten Fenster tippt den Username, haut auf Tab und tippt das Passwort 😃

Grüße
Michael

Grantig Themenstarter:in
19 Beiträge seit 2009
vor 12 Jahren

Danke für die schnellen Antworten.
Genau das wollte ich hören. 😁