XdevPasswordField

Anfang  Zurück  Vor

Letzte Änderung 16.01.2014

 

Das XdevPasswordField ist ein XdevTextField, das aus Sicherheitsgründen alle Zeichen bei der Eingabe durch Punkte ersetzt und damit ausschließlich verdeckte Eingaben zulässt. Die eingegebene Zeichenfolge kann zudem als kryptographischer Hashwert gespeichert werden. Eine Hashfunktion wandelt eine Zeichenkette beliebiger Länge in eine Zeichenkette mit fester Länge um. Mit kryptographischen Hashfunktionen lassen sich Integritätsprüfungen von Dateien und Nachrichten durchführen. In der Praxis werden entsprechende Funktionen auch für die Verschlüsselung von Passwörter und digitaler Signaturen verwendet. Ein sehr weit verbreiteter Algorithmus dafür ist MD5 (Message-Digest Algorithm 5). MD5 erzeugt aus jeder Eingabe einen 128-Bit langen Hashwert, der i.d.R. als 32-stellige Hexadezimalzahl angegeben wird, auch wenn die Eingabe länger oder kürzer war, z.B. XDEV3 > 407597a2502455a2b39a126c55ca85ac. Darüber hinaus wird auch SHA (Secure Hash Alorithm) unterstützt.

 

Alternativ können Eingaben jedoch auch als herkömmliche Zeichenkette (String) gespeichert werden. Das XdevPasswordField besitzt darüber hinaus alle Eigenschaften eines herkömmlichen XdevTextFields.

 

 

clip0208

 

 

1.Fügen Sie ein XdevPasswordField in ein XdevFormular ein.

2.Wählen Sie in den Eigenschaften bei Formular-Rückgabewert > Hash aus.

3.Legen Sie bei Hash-Algorithmus > MD5 fest.

clip0336

 

 

 

Wichtigste Methoden

 

getPassword() : char[]

 

Gibt den Text in des TextFields als character-Array zurück.

Rückgabewert: Der Inhalt des PasswordFields als char[] Zeichenkette.

//Schreibt den Inhalt der Komponente in die Variable "password"
String password = passwordField.getPassword();

 

setText(String t)

 

Legt den Textinhalt für das PasswordField fest.

t - Die Zeichenkette, die als Textinhalt des PasswordFields definiert werden soll.

//Setzt den Inhalt des PasswordFields auf die übergebene Zeichenkette "geheim"
passwordField.setText("geheim");

 

setHashAlgorithm(String hashAlgorithm)

 

Legt den Algorithmus fest, der für die verschlüsselte Rückgabe von Texten genutzt wird.

hashAlgorithm - Der Algorithmus, der zum Verschlüsseln des PasswordField-Inhalts genutzt wird.

//Setzt die Verschlüsselungsmethode auf "MD5"
passwordField.setHashAlgorithm("MD5");

 

getHashString() : String

 

Gibt den Text in des TextFields als Hash-String zurück. Der genutzte Algorithmus kann entweder im den Komponenten-Eigenschaften festgelegt werden oder programmatisch, wie im untenstehenden Beispiel zu sehen ist.

Rückgabewert: Das Passwort als codierter String.

//Setzt die Verschlüsselungsmethode auf "MD5"
passwordField.setHashAlgorithm("MD5");
 
//Schreibt den Text des PasswordFields als MD5-Hash in die Variable "encryptedPassword"
String encryptedPassword = passwordField.getHashString();

 

getHashString(String algorithm) : String

 

Gibt den Text in des TextFields als Hash-String zurück. Der genutzte Algorithmus wird als Parameter übergeben.

algorithm - Der Algorithmus zum Verschlüsseln des Passworts als String.

Rückgabewert: Das Passwort als codierter String.

//Schreibt den Text des PasswordFields als MD5-Hash in die Variable "encryptedPassword"
String encryptedPassword = passwordField.getHashString("MD5");

 

setEditable(boolean b)

 

Legt fest, ob der Text der Komponente bearbeitet werden kann.

b - Wird dieser Parameter auf true gesetzt, so wird das PasswordField editierbar, false macht die Komponente nicht bearbeitbar.

//Deaktiviert die Möglichkeit, den Textinhalt der Komponente zu ändern
passwordField.setEditable(false);