Trabalhando com CriptHashes
Olá pessoal, hoje eu vou falar um pouco sobre o componente chamado CriptHashes que está grátis no NuGet.org https://www.nuget.org/packages/CriptHashes/. Existem vários métodos dentro do pacote onde você pode utilizar sem qualquer tipo de problema e assim deixar mais seguro as informações dentro do seu sistema. Lembre-se que é muito importante desenvolver software de forma segura.
O exemplo que vou fazer mostra a diferença entrar os hashes disponíveis para utilização. Lembrando que, o hash não volta a forma original e como fazer para comparar? Basta sempre gerar o hash e comparar com que já existe anteriormente.
Ferramentas utilizadas
- Visual Studio Microsoft (qualquer versão)
- Linguagem C# (mas pode utilizar qualquer linguagem)
- Tipo da aplicação, console aplication.
##Passo 1 - download
Fazer download do pacote disponível no endereço do NuGet.org https://www.nuget.org/packages/CriptHashes/.
Acesse o gerenciador de pacotes do Visual Studio e procure pelo pacote CriptHashes. Veja a figura 1.
Figura 1 - Fazendo download do pacote
Depois de instalado, vamos utilizá-la dentro da própria Program.cs para escrever o código.
Passo 2 - código
Código 1 - Consumindo o pacote CriptHashes
using System;
namespace ConsoleAppConsomeCriptHashes
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("#### Consuming CriptHashes!");
CriptHashes.Hash hash = new CriptHashes.Hash();
var hash512 = hash.GetHash("my name is Mauricio Junior", CriptHashes.Enum.HashType.SHA512);
Console.WriteLine($"my name is Mauricio Junior 512 = {hash512}");
var hash384 = hash.GetHash("my name is Mauricio Junior", CriptHashes.Enum.HashType.SHA384);
Console.WriteLine($"my name is Mauricio Junior 384 {hash384}");
var hash256 = hash.GetHash("my name is Mauricio Junior", CriptHashes.Enum.HashType.SHA256);
Console.WriteLine($"my name is Mauricio Junior 256 = {hash256} ");
var hash1 = hash.GetHash("my name is Mauricio Junior", CriptHashes.Enum.HashType.SHA1);
Console.WriteLine($"my name is Mauricio Junior SHA1 = {hash1}");
Console.Read();
}
}
}
O código 1 mostra a criação da instância CriptHashes.Hash hash = new CriptHases.Hash();
para depois acessar os métodos expostos com o GetHash.
Código 2 - Hash 512
CriptHashes.Hash hash = new CriptHashes.Hash();
var hash512 = hash.GetHash("my name is Mauricio Junior", CriptHashes.Enum.HashType.SHA512);
Console.WriteLine($"my name is Mauricio Junior 512 = {hash512}");
No código 2, chamei o método GetHash com a string "my name is Mauricio Junior" para o SHA512. O resultado foi um hash bem grande.
Então a minha ideia foi colocar a mesma string para todos os hashes disponíveis só para ver a diferença e veja na figura 2 o que resultou.
Figura 2 - Resultado da mesma string
Note que na imagem cada hash veio diferente. Depende da sua aplicação, você pode usar todos ou o maior para sentir mais seguro. O maior de todos foi o 512 que, quase não coube na tela. Espero que tenha gostado e qualquer dúvida pode entrar em contato pelo site https://www.mauriciojunior.org.
Sign up to our newsletter
Receive our latest updates about programming languages, software, database, books, ebooks, classes, jobs and more.