先日、【パスワードアタック】で「簡単なパスワードはダメだぞ!」と警告したのですが、難しいパスワードをなかなか考えられない人のために、パスワードを自動生成するプログラムを作りました。
- 起動すると、アルファベット小文字・大文字・数字・記号を混ぜた8文字のパスワードが自動で表示されます。
- 指定されたキーを押すと、設定を変更できます。
- 1 アルファベット小文字のON/OFF
- 2 アルファベット大文字のON/OFF
- 3 数字のON/OFF
- 4 記号のON/OFF
- +− 文字数の増減(1〜32文字まで)
- その他のキー パスワードの再作成
個人での利用の他、業務で何個もパスワードを考えないといけない時にも使えるでしょう。
プログラムリスト
10 '*Password Make 20 CLV:P=8 30 GSB 300:GSB 340:GSB 380:GSB 420 40 '@LOOP 50 GSB 140:BEEP:CLK 60 K=INKEY():IF !K CONT 70 IF K=49 GSB 300 80 IF K=50 GSB 340 90 IF K=51 GSB 380 100 IF K=52 GSB 420 110 IF K=43 P=P+(P<32) 120 IF K=45 P=P-(P>1) 130 GOTO 40 140 '@PRT 150 CLS 160 ?"*SET(1=ON,0=OFF)":? 170 ?"1)Lower case letter=";L 180 ?"2)Upper case letter=";U 190 ?"3)Number=";N 200 ?"4)Symbol=";S 210 ?"+-)Length=";P 220 ?"Else)Remake" 230 ?:?"*Password" 240 IF L|U|N|S=0 RTN 250 FOR I=1 TO P 260 C=RND(94):IF ![C] CONT 270 ?CHR$(C+33); 280 NEXT 290 RTN 300 '@LOWER 310 L=!L 320 FOR I=64 TO 89:[I]=![I]:NEXT 330 RTN 340 '@UPPER 350 U=!U 360 FOR I=32 TO 57:[I]=![I]:NEXT 370 RTN 380 '@NUM 390 N=!N 400 FOR I=15 TO 24:[I]=![I]:NEXT 410 RTN 420 '@SYM 430 S=!S 440 FOR I=0 TO 14:[I]=![I]:NEXT 450 FOR I=25 TO 31:[I]=![I]:NEXT 460 FOR I=58 TO 63:[I]=![I]:NEXT 470 FOR I=90 TO 93:[I]=![I]:NEXT 480 RTN