Método SHA 256


por Mauricio Junior em 1/1/2011 0

        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:
http://aspneti.com/Metodo+SHA1+957,0.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.

voltar   comente  subir

 
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. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, ECODE10.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



Comentários:
Comentado por: Francinaldo - 2/2/2011 0:00:00
Oi Mauricio, você conhece alguma forma de fazer uma criptografia que possa ser feita engenharia reversa? Por exemplo, uma criptografia personalizada que a string possa ter ser valor original lido.

Digo isso pois gostaria de entender como os dados de empresas financeiras como bancos e cartões de crédito são criptografados e depois descriptogrados. Sei que o java possui uma forma de fazer algo parecido com isso.

Comente (dê sua opinião):
Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

Dica ASP.NET para alerta e nova página
Fotos do HTC Mozart
Windows Phone 7.1 Mango
Criando uma aplicação de uma maneira nova para melhor publicação
NDOC para versão framework 2.0
Aplicativo iCantada Free
Vídeo - Sistema de Atendimento de Clientes
Token e Sessão Corrente com C#.NET
Visual SourceSafe – Série 6
Enviado email anexado
Vídeo - Google Earth Live em tempo real
Comunicação .NET e VB 6.0 – Parte II - usando Visual Studio.NET 2005
Usando Themes ASP.NET 2.0 (Parte 2)
Servidor Integrado - Visual Studio.NET
Descobrindo os dias do mês e final de semana
Novo AjaxControlToolkit e Visual Studio 11
Pagamento via celular
2 Eventos, 1 dia: Mix On UniEURO
Windows Phone 7, nada como aprender vendo
Pegando IP da Máquina com CSharp
Trabalhando com STORED PROCEDURE
Trabalhando com o componente Accordion
Windows Form - Retornando valor entre formulários
Criptografia de String de Conexão no Web.Config
Customizando o Membership e Role Provider
Promo Code do Livro CSharp .NET para Web
Registro Encontro .NET (Fotos)
Sistema Calcula IMC e IGC no Celular
GridView Parte I
Padrões de nomenclaturas
Alerta JavaScript com Link Button
Resources e Internacionalização usando Visual Studio.NET 2005 (Parte IV)
Envio de e-mail através de formulário web
TV e Internet, um casamento perfeito
VS 11 preparado para HTML 5