Método SHA1


por Mauricio Junior em 1/1/2011 0


    Caro Leitor, gostaria de falar hoje sobre a melhor forma de trabalhar com SHA1. Continuando com a série de artigos sobre criptografia. O primeiro foi o MD5.

Veja o artigo:
Link: http://aspneti.com/Metodo+MD5+954,0.aspx

    O SHA1 é outra maneira de criptografar dados, é usada numa grande variedade de aplicações e protocolos de segurança, incluindo TLS, SSL, PGP, SSH e outros.

Referência:
Ferramenta: Visual Studio .NET
Linguagem: C#.NET
Plataforma: Qualquer tipo de plataforma pode ser usado o que será escrito no artigo.

Importe

    É necessário fazer dois importes na classe antes de codificar o método responsável. São os famosos using dentro da classe .cs.  Code 1.1


using System.Security.Cryptography;
using System.Text;
Referência: Code 1.1

    O segundo passo é criar um método responsável pela criptografia. Lembrando que, use toda vez que puder “dados criptografados” no banco de dados. A verificação dos dados é a comparação entre o que está no banco com o que o usuário digitou na tela.

    Nunca coloque no select a verificação. Explicando melhor, primeiro busque os dados do usuário do banco de dados, criptografa a senha que ele digitou na tela e compare se os dados são iguais.

        private static string GetSHA1(string strPlain)
        {
            UnicodeEncoding UE = new UnicodeEncoding();
            byte[] HashValue, MessageBytes = UE.GetBytes(strPlain);
            SHA1Managed SHhash = new SHA1Managed();
            string strHex = "";

            HashValue = SHhash.ComputeHash(MessageBytes);
            foreach (byte b in HashValue)
            {
                strHex += String.Format("{0:x2}", b);
            }
            return strHex;
        }
Code 1.2

    O método é público, estático, retorna uma string e recebe uma string de valor. Depois utilizo o Unicode, transformo os dados em array de bytes, utilizo o SHA1Magaged e faço o for com os dados. No final retorno a string criptografada.

    Não é nada difícil ter seus dados criptografados, mantendo mais segurança em seu aplicativo.

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

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:

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

Criando Alias no Pacote
Generics usando Object DataSource
VS 11 preparado para HTML 5
Pegando erro na aplicação web
Construindo o Windows 8
Converte Imagem em Array e Array em Imagem
Adicionando Valores no ComboBox
Trabalhando com vários projetos dentro da mesma solução
ASP.MENU com Compatibilidade
Aprenda com Windows Azure
Trabalhando com diretório e arquivo
Visual Studio 11 - Novas funcionalidades e melhorias
Aplicativo para Windows Phone 7 começa
Como criar uma tabela dinâmica com ASP.NET
Sistema de Login em ASP Utilizando três camadas - Parte VIII
Montando estrutura de um site MVC 2 com Visual Studio .NET 2010 - Parte 2
Sistema iGas - Controle de Gasolina
Propaganda Microsoft - Vemos como será e não como é.
Dica para acrescentar valor
Criptografando URL
LG Optimus Black
Vídeo mostrando como validar vários formulários
Public Interface
Criando Números Aleatoriamente
Lendo o livro O Efeito Facebook
Enviando E-mail com Anexo
CES em Las Vegas
XAML Power Toys
Upload sempre NULL
Resources e Internacionalização usando Visual Studio.NET 2005 (Parte I)
OpenWave SDK 6.2.2
Código fonte aberto
ModalDialogExtender
Tudo Sobre DataGrid - (ASP.NET e C#)
Acessibilidade