Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Passwort bei eingabe durch ******** ersetzen (https://www.delphipraxis.net/154465-passwort-bei-eingabe-durch-%2A%2A%2A%2A%2A%2A%2A%2A-ersetzen.html)

Lsm09 11. Sep 2010 20:17

Delphi-Version: 5

Passwort bei eingabe durch ******** ersetzen
 
hallo,
ich möchte wissen, wie ich bei einer passworteingabe
die Buchstaben/Zahlen/zeichen durch **** ersetze.

Lsm09

idefix2 11. Sep 2010 20:20

AW: Passwort bei eingabe durch ******** ersetzen
 
Tedit hat eine Eigenschaft passwordchar. Wenn man da einen Buchstaben zuweist, wird der an Stelle der tatsächlich eingegebenen Zeichen angezeigt.

Luckie 11. Sep 2010 20:49

AW: Passwort bei eingabe durch ******** ersetzen
 
http://www.delphi-forum.de/viewtopic.php?t=101503 :roll:

Aphton 11. Sep 2010 20:55

AW: Passwort bei eingabe durch ******** ersetzen
 
Falls delphi 5 dir die Möglichkeit noch nicht bietet, rufe diese Funktion mal auf!
Delphi-Quellcode:
procedure MakePasswordChar(EditControl: TEdit; const Enabled: Boolean; const PassChar: Char = '*');
var
  OldStyle, F: DWord;
begin
  OldStyle := GetWindowLong( EditControl.Handle, GWL_STYLE );
  if OldStyle and ES_PASSWORD = 0 then
    SetWindowLong( EditControl.Handle, GWL_STYLE, OldStyle or ES_PASSWORD );
  if Enabled then
    SendMessage( EditControl.Handle, EM_SETPASSWORDCHAR, Ord(PassChar), 0 )
  else
    SendMessage( EditControl.Handle, EM_SETPASSWORDCHAR, 0, 0 );
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MakePasswordChar( Edit1, True );
end;

jaenicke 11. Sep 2010 21:10

AW: Passwort bei eingabe durch ******** ersetzen
 
Das gibt es auch schon bei Delphi 3, vermutlich auch schon früher...

entwickler 15. Sep 2011 13:46

AW: Passwort bei eingabe durch ******** ersetzen
 
Kann ich auch die Eingabe in Form von dicken Punkten verstecken, wie das z. B. bei der Windows XP Benutzeranmeldung der Fall ist?

DeddyH 15. Sep 2011 13:57

AW: Passwort bei eingabe durch ******** ersetzen
 
Kann man: http://www.delphipraxis.net/151359-p...unkt-sein.html

Delphi-Laie 10. Jan 2013 21:18

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von Lsm09 (Beitrag 1048958)
hallo,
ich möchte wissen, wie ich bei einer passworteingabe
die Buchstaben/Zahlen/zeichen durch **** ersetze.

Ich rege an, wenigstens eine Umschaltmöglichkeit zur Klarsichteingabe zu schaffen.

Wieviele Paßwörter wurden im Verlaufe der Menschheitsgeschichte schon abgewiesen, wieviele Zugänge sogar schon gesperrt worden, nur, weil den Leuten ihre eigenen Eingaben vorenthalten wurden?

Bis heute gewöhnte ich mich an diese (un)ergonomische Katastrophe nicht.

cookie22 11. Jan 2013 03:31

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von Delphi-Laie (Beitrag 1198545)
Ich rege an, wenigstens eine Umschaltmöglichkeit zur Klarsichteingabe zu schaffen...

Mach das nicht, Passworteingaben soll man nicht sehen. Selbst mit einem einfachen Screenshot kann man so das Passwort stehlen.

idefix2 11. Jan 2013 17:38

AW: Passwort bei eingabe durch ******** ersetzen
 
Diese Sicherheitszwangsbeglückung empfinde ich persönlich ebenso lästig wie jede andere Zwangsbeglückung, ganz besonders bei Zugängen, bei denen die Geheimhaltung nicht so essentielle ist wie etwa beim Telebanking (aber auch dort).
Ich denke, es ist ganz vernünftig, jedem selbst die Entscheidung zu überlassen, und eine Umschaltung auf Klartextanzeige zu ermöglichen. Muss ja niemand machen, wenn ihm jemand gerade über die Schulter schaut.

Delphi-Laie 11. Jan 2013 19:32

AW: Passwort bei eingabe durch ******** ersetzen
 
Danke!

Diese Arroganz, zu wissen und sogar unveränderbar zu entscheiden, was für andere gut und richtig ist, stört mich generell, nicht nur in der Computerei, siehe auch hier.

Erstaunlicherweise werden solche Zwänge sogar von solchen gutgeheißen bis vehement verteidigt, die die Gefahren kennen, tendenziell richtig einzuschätzen wissen und erstere sicher sorgfältig und bei Notwendigkeit einsetzen würden. Paradox? Nur Macht der Gewohnheit? Oder stellvertretend-fürsorglich im Namen anderer, um diese Inkompetenten vor ihrer eigenen Dummheit zu schützen? Dann wären wir schon wieder bei der Geisteshaltung, zu wissen, was für andere gut und richtig ist.

Ein simpler Warnhinweis mit aussagekräftiger Risikobelehrung tut es bei Wahl der gefährlicheren Variante zur Not auch.

Furtbichler 11. Jan 2013 22:21

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von Delphi-Laie (Beitrag 1198710)
Diese Arroganz, zu wissen und sogar unveränderbar zu entscheiden, was für andere gut und richtig ist, stört mich generell, nicht nur in der Computerei, siehe auch hier

Nun ja, eine Frage der Sichtweise: Aus der Sicht des Unwissenden ist das Verhalten des Wissenden arrogant.

idefix2 11. Jan 2013 22:33

AW: Passwort bei eingabe durch ******** ersetzen
 
Ohne dir persönlich nahetreten zu wollen, aber diese Wortmeldung zeugt von beeindruckender Arroganz.

Popov 11. Jan 2013 23:27

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von Delphi-Laie (Beitrag 1198545)
Ich rege an, wenigstens eine Umschaltmöglichkeit zur Klarsichteingabe zu schaffen.

WinRAR macht das eigentlich ganz gut.

cookie22 12. Jan 2013 04:06

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von idefix2 (Beitrag 1198696)
Diese Sicherheitszwangsbeglückung empfinde ich persönlich ebenso lästig wie jede andere Zwangsbeglückung, ganz besonders bei Zugängen, bei denen die Geheimhaltung nicht so essentielle ist wie etwa beim Telebanking (aber auch dort)...

Zitat:

Zitat von Delphi-Laie (Beitrag 1198710)
Diese Arroganz, zu wissen und sogar unveränderbar zu entscheiden, was für andere gut und richtig ist, stört mich generell, nicht nur in der Computerei, siehe auch...

Mit Arroganz oder Sicherheitszwangsbeglückung hat das wenig zu tun. Wer in sicherheitsrelevante Software offensichtliche Schwächen einbaut, nichts anderes sind Klartext-Passwörter, hat keine Ahnung von seinem Job und sich nicht mit dem Thema auseinander gesetzt. ;)

Medium 12. Jan 2013 04:10

AW: Passwort bei eingabe durch ******** ersetzen
 
Ehrlich gesagt bin ich hier voll bei Furtbichler. Im Großen und Ganzen ist durch die Nichtanzeige von Passwörtern sicherlich weit mehr Schaden abgewendet, als durch den Durchschnittsuser, der in aller Regel eher unbedarft so etwas zu breit und oft nutzen würde entstünde. Was ist schlimmer: Jeder User der Welt gibt alle 2-3 Wochen ein Passwort 2 Mal ein, oder ein gehackter Account bei was weiss ich (Bank, Online-Shop mit Bankeinzug, Zugriff auf Betriebsgeheimnisse, etc.)? Man muss den Normaluser zu seiner Sicherheit zwingen, da sonst Unbedarftheit, Unwissen und Bequemlichkeit fast garantiert Gewinnen werden. (Nicht angreifend gemeint - ich kann die Motive gut verstehen und nachvollziehen.) Aber geweint wird im Schadensfall dennoch lauter als nen Chinaböller, und danach wird dann doch wieder breit und groß nach "warum ist das nicht sicher" gefragt.

Wenn man aus deinen, Delphi-Laie, Customizingwünschen auch aus anderen Threads hier eine Zusammenfassung machen wöllte, könnte man fast denken, du würdest am liebsten PCs mit nacktem BIOS und einer Programmierumgebung vertrieben sehen wollen. Schließlich kann damit ja jeder alles genau so "einstellen", wie er es braucht. Das ist aber weder Markttauglich noch Zweckmäßig. Wenn du das für dich so willst, dann mache es doch so. Die Freiheit hast du doch. Dank verfügbarer quelloffener Betriebssysteme musst du nichtmals alles von der Pike auf selbst machen.

idefix2 12. Jan 2013 08:31

AW: Passwort bei eingabe durch ******** ersetzen
 
Ja, das sehe ich natürlich voll und ganz ein. Nicht auszudenken, welcher unermessliche Schaden entstehen würde, wenn jemand mit meinem Passwort hier in der Delphi Praxis posten würde. Und wenn ich in meinem Zimmer allein vor meinem Computer sitze, dann ist die Blindeingabe von Passwörtern natürlich ein enormer Sicherheitsgewinn. Könnte ja ein Fremder von der anderen Strassenseite aus mit Teleobjektiv beobachten, was ich mache.

cookie22 12. Jan 2013 09:56

AW: Passwort bei eingabe durch ******** ersetzen
 
Das ist grober Unfug. Du kannst dir nie zu 100% sicher sein, dass du keine Spionage-Software auf deinem Rechner hast, wenn dieser nicht total abgeschottet ist. Kalrtext + Screenshot := Owned. ;)

DeddyH 12. Jan 2013 10:03

AW: Passwort bei eingabe durch ******** ersetzen
 
Naja, ein Keylogger könnte das auch. WM_GETTEXT wird aber IIRC verhindert, wenn ein vom Default abweichendes Passwortzeichen zugewiesen wurde, da bin ich aber gerade nicht sicher. Gesehen habe ich so eine Checkbox "Im Klartext anzeigen" aber auch schon bei div. Programmen. Wenn der User meint, wieso nicht, ist ja sein Problem?

cookie22 12. Jan 2013 10:12

AW: Passwort bei eingabe durch ******** ersetzen
 
Nein, dass ist nicht sein Problem. Du als Programmierer bist für die Sicherheit deiner Software verantwortlich, nicht der User.

Bummi 12. Jan 2013 10:15

AW: Passwort bei eingabe durch ******** ersetzen
 
@cookie22

Ich sehe das nicht so.
Der Benutzer als "Eigentümer" sollte selbst entscheiden können ob er das Häkchen "Passwort anzeigen" setzen möchte oder nicht.

cookie22 12. Jan 2013 10:27

AW: Passwort bei eingabe durch ******** ersetzen
 
Und wenn der Anwender nicht die Kompetenz besitzt? So etwas könnte dir ein Anwalt soagr als grobe Fahrlessigkeit auslegen.

Bummi 12. Jan 2013 10:33

AW: Passwort bei eingabe durch ******** ersetzen
 
Es ist sein Programm und somit seine Entscheidung.
Aber ich glaube wir lassen das, sonst artet es in einen Glaubenskrieg aus.

DeddyH 12. Jan 2013 10:33

AW: Passwort bei eingabe durch ******** ersetzen
 
Ein entsprechender Warnhinweis sollte natürlich nicht fehlen.

Bummi 12. Jan 2013 10:35

AW: Passwort bei eingabe durch ******** ersetzen
 
Liste der Anhänge anzeigen (Anzahl: 1)
@DeddyH
Selbst ein billiger Keylogger wie der im Anhang, kann alles mitschneiden ...
Delphi-Quellcode:
unit Unit3;
 // 2012 by Thomas Wassermann
interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type


  TForm3 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    procedure OnChar(Sender: TObject; aChar: Char);
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form3: TForm3;
  HookHandle: Cardinal = 0;
  Shift:Boolean;

  KS: TKeyboardState;


implementation
uses Key_Hook_Class;

var
kl  :TKeyLogger;
{$R *.dfm}


Procedure TForm3.OnChar(Sender:TObject;aChar:Char);
begin
    Memo1.Lines.Text := Memo1.Lines.Text + aChar;
end;

procedure TForm3.FormCreate(Sender: TObject);
begin

   kl  :=TKeyLogger.Create;
   kl.OnGetChar := OnChar;
end;

procedure TForm3.FormDestroy(Sender: TObject);
begin
  kl.Free;
end;

end.

DeddyH 12. Jan 2013 10:42

AW: Passwort bei eingabe durch ******** ersetzen
 
#19 :roll:

Delphi-Laie 12. Jan 2013 11:01

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von cookie22 (Beitrag 1198735)
Das ist grober Unfug. Du kannst dir nie zu 100% sicher sein, dass du keine Spionage-Software auf deinem Rechner hast, wenn dieser nicht total abgeschottet ist. Kalrtext + Screenshot := Owned. ;)

Klar, die Software weiß ja auch, wann die Paßworteingabe beendet ist.

Sollte sie hingegen (nahezu) pausenlos Bildschirmkopien machen, ja wohin dann mit der ganze Datenflut? Sogar, wenn die Verbindung schnell genug wäre, den (sogar aktuellen) Computer möchte ich erleben, der das ohne spürbare Geschwindigkeitseinbußen wegsteckt.

cookie22 12. Jan 2013 11:05

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von Bummi (Beitrag 1198743)
@DeddyH
Selbst ein billiger Keylogger wie der im Anhang, kann alles mitschneiden ...

Software basierte Keylogger die nicht auf Treiberebene laufen, lassen sich aber easy aushebeln. Nur das Passwort durch Sternchen zu verstecken reicht da auch sicherlich nicht aus.

Zitat:

Zitat von Delphi-Laie (Beitrag 1198748)
Klar, die Software weiß ja auch, wann die Paßworteingabe beendet ist...

Warum sollte sie das nicht wissen? Du brauchst ja nur zyklisch zu screenen wenn bestimmte Fenster offen sind, bzw. bestimmte Websites aufgerufen werden. ;)

idefix2 12. Jan 2013 11:09

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Das ist grober Unfug. Du kannst dir nie zu 100% sicher sein, dass du keine Spionage-Software auf deinem Rechner hast, wenn dieser nicht total abgeschottet ist. Kalrtext + Screenshot := Owned.
Weil die Leute, die Spionagesoftware basteln, haben sich alle auf das Ausspionieren von Screenshots spezialisiert, von Keyloggern haben die alle noch nie etwas gehört. Wer da den groben Unfug verzapft, wollen wir einmal dahingestellt lassen...

O Gott O Gott, so schaut es aus, wenn "kompetente" Nerds sich einbilden, die inkompetenten User bevormunden zu müssen.

Daniel 12. Jan 2013 11:11

AW: Passwort bei eingabe durch ******** ersetzen
 
Ihr redet doch nun über völlig andere - viel komplexere - Anforderungen. Ausgangspunkt war, wie man in einem Eingabefeld die Eingabe durch andere Zeichen maskieren kann. Diese Frage ist hinreichend beantwortet.

Wie man nun die Eingabe eines Passwortes abhörsicher macht, ist doch ein ganz anderes Thema, das sich weit, weit über den Einsatz einer simplen TEdit-Komponente hinaus erstreckt.

idefix2 12. Jan 2013 11:15

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Nur das Passwort durch Sternchen zu verstecken reicht auch sicherlich nicht aus.
Verdammt. Hab ichs doch geahnt. Bitte klär mich auf, du grossartiger Sicherheitsexperte, was ich "sicherlich" noch alles zusätzlich berücksichtigen muss, wenn ich das Programm zur Verwaltung der 27 Vereinsmitglieder unserer Tarockrunde hacksicher machen will.

Daniel 12. Jan 2013 11:18

AW: Passwort bei eingabe durch ******** ersetzen
 
So, nu' ist aber mal gut.

DeddyH 12. Jan 2013 11:25

AW: Passwort bei eingabe durch ******** ersetzen
 
Vielleicht sollte man den Thread schließen, sonst artet es noch aus.

cookie22 12. Jan 2013 11:28

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von idefix2 (Beitrag 1198752)
Zitat:

Nur das Passwort durch Sternchen zu verstecken reicht auch sicherlich nicht aus.
Verdammt. Hab ichs doch geahnt. Bitte klär mich auf, du grossartiger Sicherheitsexperte, was ich "sicherlich" noch alles zusätzlich berücksichtigen muss, wenn ich das Programm zur Verwaltung der 27 Vereinsmitglieder unserer Tarockrunde hacksicher machen will.

Ich könnte dir wahrhaftig einige Tricks verraten um Eingabefelder sicherer zu machen. :D

Daniel 12. Jan 2013 11:28

AW: Passwort bei eingabe durch ******** ersetzen
 
Ich setze auf die Vernunft der Beteiligten.

idefix2 12. Jan 2013 11:30

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Ihr redet doch nun über völlig andere - viel komplexere - Anforderungen.
Das ist der springende Punkt. ich würde schätzen, dass 98% der Anwendungen, in denen Passwörter abgefragt werden, relativ unkritisch sind, es kann nichts ernsthaftes passieren und deshalb ist wohl auch der Anreiz, dort zu hacken, minimal.

Und wenn es um wirklich kritische Daten geht, dann liegen die Sicherheitslücken auch nicht bei einer offenen oder verdeckten Dateneingabe. Natürlich will ich nicht, dass mir jemand bei der Passworteingabe über die Schulter schauen kann und so das Passwort mitbekommt. Aber die Schutzmechanismen sollten in einem vernünftigen Verhältnis zur Brisanz der Daten stehen. Die pauschale Meldung: "Mach das nicht, Passworteingaben soll man nicht sehen.", ohne Rücksicht auf die Art des Programms und der Daten, die da zu schützen sind, ist einfach nur lächerlich.

idefix2 12. Jan 2013 11:42

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Sollte sie hingegen (nahezu) pausenlos Bildschirmkopien machen, ja wohin dann mit der ganze Datenflut? Sogar, wenn die Verbindung schnell genug wäre, den (sogar aktuellen) Computer möchte ich erleben, der das ohne spürbare Geschwindigkeitseinbußen wegsteckt.
Die Datenflut sehe ich da weniger als das problem an. Teamviewer zum Beispiel überträgt live den Bildschirm zu Fernwartungszwecken, ohne merkbare Geschwindigkeitseinbusse am Host. Aber wenn so ein Programm zu Spionagezwecken läuft, dann wird das selbstverständlich nicht nur den Bildschirm, sondern auch die Tastatur loggen und die Daten weiterleiten. Deshalb bietet die blinde Dateneingabe vor derartigen Spionageprogrammen überhaupt keinen Schutz.

cookie22 12. Jan 2013 11:52

AW: Passwort bei eingabe durch ******** ersetzen
 
Wie schon sagte ist es nicht besonders schwer ein Edit-Feld gegen 98% aller Software-Keylogger zu schützen.

Zitat:

Und wenn es um wirklich kritische Daten geht, dann liegen die Sicherheitslücken auch nicht bei einer offenen oder verdeckten Dateneingabe.
Bist du dir da sicher? Wenn dein Programm eine Schwäche hat, kann man diese auch ausnutzen.

Pentium 80486 12. Jan 2013 13:04

AW: Passwort bei eingabe durch ******** ersetzen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich habe es in einer meiner Softwareprodukte mit einem kleinen buttonähnlichen Knopf gelöst.

Der kleine "Knopf" mit der Kennzeichnung "<->" wechselt zwischen Klartext und Sternchenanzeige hin und her.

Delphi-Laie 12. Jan 2013 18:03

AW: Passwort bei eingabe durch ******** ersetzen
 
Zitat:

Zitat von Pentium 80486 (Beitrag 1198768)
ich habe es in einer meiner Softwareprodukte mit einem kleinen buttonähnlichen Knopf gelöst.

Der kleine "Knopf" mit der Kennzeichnung "<->" wechselt zwischen Klartext und Sternchenanzeige hin und her.

Meine Anerkennung, daß Du hier aus einer Stereotypie auszubrechen imstande warst!

Darf ich fragen, was das für eine Komponente ist? Ist es überhaupt nur eine, oder sind mehrere beteiligt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:05 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz