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.