Seite 1 von 2

Passwortfel !?!

Verfasst: 29.08.2005 12:33
von Programie
Wie kann man ein Passwortfeld erstellen, das überprüft, ob das richtige Passwort eingegeben wurde?

Das Passwort (oder der PIN) sollte über dem Textfeld Stehen.

Verfasst: 29.08.2005 12:35
von Hroudtwolf
Per Inputrequester zum Beispiel.

Die Auswertung sollte über MD5_Fingerprint erfolgen.

siehe hier...
http://www.purebasic-lounge.de/viewtopic.php?t=1496

Verfasst: 29.08.2005 12:47
von Green Snake
am besten ist das, wenn du dir selbst ein fenster programmierst.
dessen aussehen du aauch nach beliebn ändern kannst.

wie wolf sagte, machs über MD5_Fingerprint
oder sogar über den md5file finger print. :allright:

bei einem selbstgemachten fenster kannst du das stringadget auch noch verschlüsseln, bzw deren inhalt.
es werden dann sternchen angezeigt ;)

Verfasst: 29.08.2005 12:57
von hardfalcon
Green Snake hat geschrieben:wie wolf sagte, machs über MD5_Fingerprint
oder sogar über den md5file finger print. :allright:
Da wir in der Anfängerecke sind, will ich mich mal zurückhalten, und einfach mit einem "no comment" reagieren... /:->

Verfasst: 29.08.2005 13:02
von Hroudtwolf
@GreenSnake

Mit MD5FileFingerprint(Dateiname$) kannst du keinen String hashen.

@Hardfalcon

Da wir in der Anfängerecke sind hättest du statt einem "No Coment" eine erklärung posten können.

Verfasst: 29.08.2005 13:03
von AndyX
ähem. Der FileFingerPrint passt da wohl irgendwie nicht dazu... :roll: /:->

BTW: Es gibt StringGadget auch in Passwort (Sternchen) Ausführung.

Verfasst: 29.08.2005 13:12
von Programie
Ja! Das habe ich gesucht! Aber, ist es möglich, das Textfeld in ein Passwortfeld umzuändern?

Ich meine das so:
Ich schreibe zub Beispiel: user
Das Textfeld soll aber das so anzeigen: ****

Geht das?

Verfasst: 29.08.2005 13:17
von Kiffi
> Aber, ist es möglich, das Textfeld in ein Passwortfeld umzuändern?

Yepp! Dann musst Du Deinem StringGadget das Flag [c]#PB_String_Password[/c] übergeben.
PB-Hilfe hat geschrieben:#PB_String_Password: Passwort-Modus, es werden nur '*' anstelle normaler Zeichen angezeigt.
Grüße ... Kiffi

Verfasst: 29.08.2005 13:21
von ts-soft

Code: Alles auswählen

Ergebnis = StringGadget(#Gadget, x, y, Breite, Höhe, Inhalt$,#PB_String_Password) 

Verfasst: 29.08.2005 13:22
von hardfalcon
Hroudtwolf hat geschrieben:@Hardfalcon
Da wir in der Anfängerecke sind hättest du statt einem "No Coment" eine erklärung posten können.
Da hast du eigentlich recht. Also:
MD5Checksumme = MD5FileFingerprint("Datei.dat") macht daselbe wie folgender Code:

Code: Alles auswählen

DefType.l Dateilaenge
DefType.s Dateistring, MD5Checksumme

ReadFile(0,"Datei.dat")
Dateilaenge = Lof()
If Dateilaenge = ReadData(*Dateistring,Dateilaenge)
  MD5Checksumme = MD5Fingerprint(*Dateistring,Dateilaenge)
Else
  Debug "Fehler - Konnte Datei nicht einlesen!"
EndIf
Ich hab den 2. Code übrigens nicht überprüft, sondern einfach so "on the fly" hingekrizzelt, er kann also noch nen Bug enthalten.

@Greensnake: MD5FileFingerprint() macht deshalb keinen Sinn, weil es unnötig komplizierter und vor allem viel langsamer ist: schliesslich musst du den Inhalt des String-Gadgets erst in eine Datei schreiben, dann wird vom MD5FileFingerprint()-Befehl die Datei wieder ins RAM geladen, ausgelesen, und die Checksumme berechnet. Wenn du MD5Fingerprint() nimmst, wird die Checksumme sofort von einem String, der sich bereits im RAM befindet, berechnet, was natürlich VIEL schneller ist.

cya
Pascal

//EDIT: @Programie: du kannst einem "normales" Stringgadget auch nachträglich das "Passwortfeldflag" verpassen, mittels einem WinAPI-Befehl... Der Name fällt mir allerdings grad nicht ein... sry... /:-> :lol: