' WPA-PSK-Passphrasegenerator (WiFi Protectec Access Preshared Key) ' (c) 2005 by Andreas Meile, CH-8242 Hofen SH DECLARE FUNCTION HexFuehrNull$ (w%, b%) RANDOMIZE TIMER PRINT "Generator fr einen WPA-PSK-Passphrase-Schlssel" PRINT "Es werden die gem„ss WiFi-Standard maximal m”glichen 63 Stellen aus dem US" PRINT "ASCII-Bereich erzeugt. Dazu nachfolgend bitte v”llig zuf„llige Tasten drcken" ze$ = "" ei$ = "" FOR i% = 1 TO 63 ze$ = ze$ + CHR$(48 + i% \ 10) ei$ = ei$ + CHR$(48 + i% MOD 10) NEXT i% PRINT ze$ PRINT ei$ PRINT s$ = "" FOR i% = 1 TO 63 DO ta$ = INKEY$ LOOP WHILE ta$ = "" t! = TIMER z1% = ASC(RIGHT$(ta$, 1)) t2! = t! * 16! / 225! z2% = CINT(INT(256! * (t2! - INT(t2!)))) z3% = CINT(INT(94! * RND)) ' PRINT z1%; z2%; z3% z% = 33 + (z1% + z2% + z3%) MOD 94 PRINT CHR$(z%); s$ = s$ + CHR$(z%) NEXT i% PRINT PRINT "Schlssel wurde generiert" PRINT "Bitte Diskette einlegen und drcken, Leertaste fr Ende" DO t$ = INKEY$ LOOP UNTIL t$ = " " OR UCASE$(t$) = "D" IF t$ <> " " THEN OPEN "A:\wpa_key.txt" FOR OUTPUT AS 1 PRINT #1, "WPA-PSK-Passphrase erzeugt am "; DATE$; ", "; TIME$; " Uhr" PRINT #1, ze$ PRINT #1, ei$ PRINT #1, "" PRINT #1, s$ CLOSE 1 PRINT "Diskettendatei erstellt." ELSE PRINT "Diskette bersprungen" END IF PRINT "Ende WPA-PSK-Generator" FUNCTION HexFuehrNull$ (w%, b%) h$ = HEX$(w%) HexFuehrNull$ = STRING$(b% - LEN(h$), "0") + h$ END FUNCTION