Olá! Friday, 19 de April de 2024.



Dicas CódigoFonte.net
Friday, 09 de April de 2010

Como criptografar dados no MySQL

Olá Pessoal, 

Segurança nunca é demais quando estamos tratando com dados importantes para nossos usuários. Pensando nisto, resolvi postar hoje um tutorial bem simples de como criptografar dados em suas tabelas no MySQL. 

Para criptografar dados no MySQL vamos utilizar a função AES_ENCRYPT() e AES_DECRYPT(), ambas estão disponíveis desde a versão 4.0.2 do banco de dados e podem ser consideradas como a função mais segura atualmente. 

A vantagem desta função é que você poderá utilizar uma chave privada para encriptar e desencriptar os dados, permitindo a gravação dos dados seguramente e a leitura da mesma forma como foram gravados. 

Mas como faço para inserir um registro em minha tabela no MySQL com um campo encriptado?

Simples, vejam: 

INSERT INTO TBL_DADOS(CAMPO1, CAMPO2) VALUES('Meu valor não encriptado', AES_ENCRYPT('Meu valor encriptado', 'MINHA_CHAVE'); 

Onde "MINHA_CHAVE" pode ser qualquer palavra chave que será utilizada para desencriptar os seus dados. 

O resultado de um campo encriptado é um valor binário como por exemplo mž?ôzDF“‘²šaѵÓׯ|fõÎ*-^êäÃ

Para tornar a inserção mais segura, você poderá utilizar uma variável registrada no momento da conexão com o banco de dados, assim: 

SELECT @CHAVE_CRIPTOGRAFIA := 'minha_chave';

E nos seus comandos SQL, utilize a variável normalmente: 

INSERT INTO TBL_DADOS(CAMPO1, CAMPO2) VALUES('Meu valor não encriptado', AES_ENCRYPT('Meu valor encriptado', @CHAVE_CRIPTOGRAFIA);

Mas como faço para descriptografar os dados?

Basta utilizar a função inversa AES_DECRYPT passando o campo e a chave que você utilizou para encriptar o dado. 

SELECT AES_DECRYPT(CAMPO2, @CHAVE_CRIPTOGRAFIA) FROM TBL_DADOS;

Pronto. Simples não acham? 

Até mais pessoal. 


Comentários do artigo [Novo comentário]

Edivaldo Santos - 17 de August de 2010 - 19:47
Olá, muito boa essa dica. Tenho um portal de noticias www.cantaresnet.com.br ele é terceirizado. Estou estudando web design e tenho pesquisado muito este assunto. Gostei da dica e vou tirar proveito dela
jose maria de souza - 02 de September de 2011 - 07:03
OLHA REALMENTE FOI BOM ENCONTRAR MAIS UMA FERRAMENTA PARA NOS AJUDAR COM O AVANÇO TÃO RAPIDO DA INFORMAÇÃO
Para adicionar um comentário você deve efetuar o login


Gostou do CódigoFonte.net? Quer indicar a um amigo?
Preencha os campos a seguir.
Seu Nome:
Seu E-mail:
E-mail de seu Amigo:


CodigoFonte.net » Meu Mural » Competiva - Criação de Sites » Todos os Direitos Reservados © 2002/2010