Desenvolvimento - ASP. NET
Método SHA1
Caro Leitor, gostaria de falar hoje sobre a melhor forma de trabalhar com SHA1.
por Mauricio JuniorCaro 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/artigo/954/Metodo+MD5.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.