Desenvolvimento - C#

Método SHA 256

Caro Leitor, gostaria de mostrar mais um método para criptografia com 256 bits

por Mauricio Junior



Caro Leitor, gostaria de mostrar mais um método para criptografia com 256 bits. Para isso existe uma classe chamada SHA256Managed que possibilita essa façanha. Em um artigo anterior, foi publicado o SHA1 e para você que ainda não leu pode ler clicando no link abaixo:

Link SHA1:
linhadecodigo.com.br/artigo/3143/Metodo-SHA1.aspx

Referência:
Linguagem C#.NET
Ferramenta de desenvolvimento: Visual Studio .NET 2008
Plataforma: Pode ser usado em qualquer plataforma

O primeiro passo é importar algumas classes do próprio framework .NET da Microsoft em sua classe. Depois do importe fica pronto o uso sem qualquer problema. Antes foi criado uma pasta chamada Util e dentro dela uma classe chamada CriptoUtil.cs. (Code 1.1)

 

using System.Security.Cryptography;
using System.Text;

Code 1.1

Depois de importar, foi criado um método específico para criptografia de dados. Dentro da classe foi criado método chamado SHA256. (Code 1.2)

 

        private string SHA256(string valor)
{
1 UnicodeEncoding UE = new UnicodeEncoding();
2 byte[] HashValue, MessageBytes = UE.GetBytes(valor);
3 SHA256Managed SHhash = new SHA256Managed();
4 string strHex = "";

5 HashValue = SHhash.ComputeHash(MessageBytes);
6 foreach (byte b in HashValue)
7 {
8 strHex += String.Format("{0:x2}", b);
9 }
10 return strHex;
  }

Code 1.2

A única linha que muda referente ao outro artigo é a 3 linha do método onde foi instanciado o SHA256Managed.

Lembro ainda que, alguns dados devem ser criptografadas dentro do banco de dados, como senha e dados pessoais. Essas senhas e dados pessoas devem ser buscados e comparados em tempo de execução dentro da aplicação, ou seja, melhor buscar os dados no banco, criptografadas a senha do usuário depois do LOGIN e comparar se a senha retornada é a mesma digitada.

Espero que tenha gostado e qualquer dúvida pode entrar em contato.

Mauricio Junior

Mauricio Junior - Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; . Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna e sou editor do Linha de Código.
Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A.
Blog:
blog.mauriciojunior.org
Site pessoal: www.mauriciojunior.org