Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Juliano Marcon
Analista / Programador C# .net
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010
Juliano Marcon: Criptografia Rijndael em C# Page 2 of 8
INSCREVER-SE
Criptografia Rijndael em C#
O Rijndael é um algoritmo simétrico de chave variável (os valores possíveis para o tamanho das
QUEM SOU EU
chaves são: 128bits, 192bits, 256bits) o que dificulta muito o trabalho de quebra dos valores. Ele está
disponível a partir do .net framework 3.5. Juliano Marcon
Analista /
Para utilizar este recurso é necessário importar o namespace de criptografia, assim: Programador
C# .net
using System.Security.Cryptography; Visualizar meu perfil completo
private static byte[] bIV = { 0x50, 0x08, 0xF1, 0xDD, 0xDE, 0x3C, 0xF2, 0x18,
0x44, 0x74, 0x19, 0x2C, 0x53, 0x49, 0xAB, 0xBC }; Ainda não há seguidores.
Seja o primeiro!
/// <summary>
/// Representação de valor em base 64 (Chave Interna)
Já é um membro?Fazer login
/// </summary>
private const string cryptoKey =
ARQUIVO DO BLOG
"Q3JpcHRvZ3JhZmlhcyBjb20gUmluamRhZWwgLyBBRVM=";
▼ 2010 (23)
// O Valor acima representa a transformação para base64 de
► Outubro (3)
// um conjunto de 32 caracteres (8 * 32 = 256bits)
// A chave é: "Criptografias com Rijndael / AES" ► Setembro (3)
► Junho (2)
/// <summary>
► Abril (1)
/// Metodo de criptografia de valor
► Março (3)
/// </summary>
/// <param name="text">valor a ser criptografado</param> ► Fevereiro (2)
/// <returns>valor criptografado</returns> ▼ Janeiro (9)
public static string Encrypt(string text) Coloração de código
{
C# e os Delegates.
try
{ FamFamFam - conjunto de
ícones para sistemas
// Se a string não está vazia, executa a criptografia
if (!string.IsNullOrEmpty(text)) Criptografia Rijndael em C#
{ Windows 7 em GodMode
// Cria instancias de vetores de bytes com as chaves
Temas para o
byte[] bText , bKey; TabContainer (C# /
bKey = ASP.NET)
Convert.FromBase64String(cryptoKey); Tipos de dados em C#
bText =
Feliz ano novo!
new UTF8Encoding().GetBytes(text);
Feliz ano novo!
// Instancia a classe de criptografia Rijndael
Rijndael rijndael = new RijndaelManaged();
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010
Juliano Marcon: Criptografia Rijndael em C# Page 3 of 8
// Instancia o encriptador
CryptoStream encryptor =
new CryptoStream(
mStream ,
rijndael.CreateEncryptor(bKey , IV) ,
CryptoStreamMode.Write);
return Convert.ToBase64String(mStream.ToArray());
}
else
{
// Se a string for vazia retorna nulo
return null;
}
}
catch (Exception ex)
{
// Se algum erro ocorrer, dispara a exceção
throw new ApplicationException("Erro ao criptografar" , ex);
}
}
/// <summary>
/// Metodo de descriptografia
/// </summary>
/// <param name="text">texto criptografado</param>
/// <returns>valor descriptografado</returns>
public static string Decrypt(string text)
{
try
{
// Se a string não está vazia, executa a criptografia
if (!string.IsNullOrEmpty(text))
{
// Cria instancias de vetores de bytes com as chaves
byte[] bText , bKey;
bKey = Convert.FromBase64String(cryptoKey);
bText =
Convert.FromBase64String(text);
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010
Juliano Marcon: Criptografia Rijndael em C# Page 4 of 8
// Instancia o Decriptador
CryptoStream decryptor =
new CryptoStream(
mStream ,
rijndael.CreateDecryptor(bKey , IV) ,
CryptoStreamMode.Write);
E uma animação MUITO BOA sobre o processo que o algoritmo faz pode ser encontrada
em: http://blog.ultrassecreto.com/?p=17
0 comentários:
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010
Juliano Marcon: Criptografia Rijndael em C# Page 5 of 8
Postar um comentário
Picture Window modelo de Josh Peterson. Imagens de modelo por 5ugarless. Tecnologia do Blogger.
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010
Juliano Marcon: Criptografia Rijndael em C# Page 6 of 8
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010
Juliano Marcon: Criptografia Rijndael em C# Page 7 of 8
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010
Juliano Marcon: Criptografia Rijndael em C# Page 8 of 8
http://julianomarcon.blogspot.com/2010/01/criptografia-rijndael-em-c.html 20/10/2010