Olá pessoal, hoje gostaria de falar sobre um método de criptografia SHA384 embutido no framework .NET da Microsoft. Foram publicados outros artigos mostrando outras formas, segue a lista:

Método MD5
Método SHA1
Método SHA 256

    Não é tão diferente do que foi feito nos artigos da lista acima.  Porém existe uma diferença pequena e importante. O primeiro código mostrado é a importação de algumas classes: (Código 1.1)

using System;
using System.Collections.Generic;
using System.Security.Cryptography;
using System.Text;

Código 1.1

    O passo seguinte é criar uma classe responsável para a criptografia de dados. Pode ser qualquer nome que achar melhor, foi colocado o nome de UtilCript.cs. Dentro da classe foi colocado um método estático para a chamada ficar direto. (Código 1.2)


       private static string SHA384(string valor)
        {
            UnicodeEncoding UE = new UnicodeEncoding();
            byte[] HashValue, MessageBytes = UE.GetBytes(valor);
            SHA384Managed SHhash = new SHA384Managed();
            string strHex = "";

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

Código 1.2

    Para o código (1.2) funcione bem e você tenha uma verdadeira criptografia de dados, o melhor é criptografar uma string como senha e quando o usuário do seu aplicativo for entrar, você busca os dados na base de dados, criptografada a senha que foi digitada na tela e compara as duas para ver se é igual.

    Da forma que foi feito, não possui a decript ou seja, o método que descriptografa esses dados criptografados.

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