Criptografando Senhas ou Strings

A segurança hoje em dia tem ficado sempre em primeiro plano quando dizemos ou falamos em software. Não importa qual o tipo de software ou sistema, o que vale é a segurança de dados, informações, usuários e senhas.

A segurança do código é uma prioridade além do próprio sistema, mas iremos apenas trabalhar agora com criptografia de dados. Não importa o tipo de dado para criptografar, basta apenas criptografar e garantir a segurança de informações. Muitas pessoas criam uma nova maneira para criptografar dados com chaves públicas, privadas e tudo mais. Demonstrarei como criptografar dados usando uma classe do próprio framework .NET.

 

Colocarei duas formas:

SHA1 (Secure Hash Algorithm – Algoritmo de Resumo Seguro).
Este algoritmo recebe como entrada um documento qualquer sob a forma digital com um tamanho de até 2 elevado a 64 bits (18.446.744.073.709.551.616 bits) ou 2.305.843.009.213.693.952 “Bytes” ou caracteres, e gera como saída de string de 160 bits ou 20 Bytes. Ele é um pouco mais lento que o MD5, mas em compensação mais difícil de ser quebrado.

MD5 (Message Digest) – Ele produz uma saída de 128 bits ou 16 Bytes. Ele é mais rápido que o SHA-1.

 

HashPasswordForStoringInConfigFile(senha, formato da senha)
Senha: string passada ou descrição qualquer que o usuário digitou
Formato da Senha: tipo do formato, você pode escolher dois tipos de formato (MD5, SHA1)

 

Criei uma página no meu projeto com o nome testeCript.aspx, você pode criar a sua própria página conforme quiser.

 

Na página, coloquei apenas alguns objetos. Segue a descrição dos mesmos.

TextBox

Id = txtSenha

Text = “em branco”

 

Button

Id = cmdCript

Text = Criptografar

 

Label (são dois)

Id = lblSHA1

Text = “em branco”

 

Id = lblMD5

Text = “em branco”

 

Cliquei duas vezes no botão cmdCript e coloquei as seguintes linhas de código:

 

private void cmdCript_Click(object sender, System.EventArgs e)

{

lblSHA1.Text = “SHA1 ” + criptografarSHA1(txtSenha.Text) ;

lblMD5.Text = “MD5 ” + criptografarMD5(txtSenha.Text) ;

}

 

Veja que ainda não foram criados os métodos criptografarSHA1 nem criptografarMD5.

Segue os métodos.

 

private string criptografarSHA1(string cript)

{

return FormsAuthentication.HashPasswordForStoringInConfigFile(cript,”SHA1″);

}

 

private string criptografarMD5(string cript)

{

return FormsAuthentication.HashPasswordForStoringInConfigFile(cript,”MD5″);

}

 

Cliquei F5 e depois digite no campo textbox algo

 

Fonte: http://www.juliobattisti.com.br/artigos/csharp/criptografandodados001.asp

Deixe um comentário