quinta-feira, 27 de setembro de 2012

Batch Script – Programa que verifica o nível de segurança de uma senha!


O código batch abaixo tem como função mostrar o nível de segurança de uma senha para que o usuário possa criar senhas seguras! Quando e digitado uma senha, o programa verifica e mostra se a mesma e fraca boa ou ótima!

Em minha opinião, apesar do programa “não ter muita utilidade”, o mesmo e um ótimo exercício de aprendizagem para quem gosta de programação, pois mostra como funciona um sistema de verificação de senhas em batch script, e com um pouco de criatividade e usando a mesma lógica, pode ate mesmo se aplicar a outras linguagens de programação!  

Obs: Para executar o script e só copiar o mesmo para o bloco de notas e salvo-ló com a extensão .bat ex: nomearquivo.bat

@echo off
setlocal enabledelayedexpansion
title N¡vel de seguran‡a batch
mode con cols=45 lines=10
color a
:ini
set "Mostra="
set "Mostra2="
set "Mostra3="
set "Senha="
set "Contar="
cls
echo.
echo. Digite uma senha para que seja
echo.
echo.  verificado o nivel de seguran‡a :
echo.
set/p "Senha= Senha : "
cls
if not defined Senha goto ini

:Segue
set/a "Contar+=1"
set "Senha2=!Senha:~0,%Contar%!"
if "%Senha2%" neq "%Senha%" goto:Segue

if %contar% lss 6 (echo.A senha deve ter no m¡nimo 6 caracteres
pause>nul
goto:ini)
set "min="
for %%j in (a,b,c,d,e,f,g,h,i,j,k,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do (set "le1=%%j"
call:conp min)
set "maiusc="
for %%i in (A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z) do (set "le2=%%i"
call:conp1 maiusc)
seT "num="
for %%h in (1,2,3,4,5,6,7,8,9,0) do (set "le3=%%h"
call:conp2 num)
if "%verif%" equ "1" set Mostra=Fraca
if "%verif%" equ "11" set Mostra=Boa
if "%verif%" equ "111" set Mostra=Otima
echo.
echo.
set "nivel=%min%%Maiusc%%num%"
echo.            Nivel de seguran‡a     
echo.              1          2            3
echo. _______________________________________
echo. %nivel%
echo.
echo.                  %Mostra%
pause>nul
goto:ini

:conp
for /l %%k in (0,1,!Contar!) do (set "sec=!Senha2:~%%k,1!"
if "!sec!" equ "!le1!" (set "%1=°°°°°°°°°°°°°"&set Mostra=1)
)
goto:eof
:conp1
for /l %%k in (0,1,!Contar!) do (set "sec=!Senha2:~%%k,1!"
if "!sec!" equ "!le2!" (set "%1=²²²²²²²²²²²²²"&set Mostra2=1)
)
goto:eof
:conp2
for /l %%k in (0,1,!Contar!) do (set "sec=!Senha2:~%%k,1!"
if "!sec!" equ "!le3!" (set "%1=ÛÛÛÛÛÛÛÛÛÛÛÛÛ"&set Mostra3=1)
)
set verif=%Mostra%%Mostra2%%Mostra3%
goto:eof.




##################################################################################




Seja o primeiro a comentar

Postar um comentário

Ouvir a Rádio Boa Vista FM 96,5 de Paracatu Ao Vivo e Online

Ouvir a Rádio Boa Vista FM 96,5 de Paracatu Ao Vivo e Online
Cidade: Paracatu/MG - Gênero: Popular

Chuck Norris Aprova Tecnosolution!


NOTÍCIAS TI

Ajude a divulgar nosso blog!


Total de visualizações de página

Usuários Online

Usuários online

  ©TECNOSOLUTION - Todos os direitos reservados.

Template by Dicas Blogger | Topo