Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Anonimo Nao

Criptografar imagens

Recommended Posts

Galera preciso que vocês me endiquem algum script php capaz de criptografar todo binario da imagem, depois ele pode salvar num banco de dados ou arquivo txt, ou mesmo com a propria extensão da imagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você vai ter que transformar a imagem em um blob, e depois pode usar o base64_encode para criptografar e depois usar o base64_decode para descriptografar o blob e voltar com os bytes originais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Totalmente desnecessário. Lembrando que "criptografia" dificilmente trará o conteúdo original de volta. No máximo você pode utilizar uma conversão de base, o base64.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o objetivo disso companheiro ? não existe forma para "Privar" a captura de sua imagem, se é o que está pensando. Apareceu no navegador já era... de tudo que fizer, ainda tem um botão chamado "print screen" no teclado de cada bixim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O objetivo não é privar do navegador, mas sim do banco de dados. Estou falando caso alguem hackei o banco de dados.

O usuario faz login e então a imagem é descriptografada e exibida no navegador. Porem antes disso a imagem fica criptografada no banco de dados. Pouco me importa se ele vai baixar ela depois ou não. Isso já é problema dele.

O importante é proteger o banco de dados. Criptografando a imagem com uma chave. Chave essa que é a mesma do login do usuario. O usuario loga, a query seleciona todos os campos do mysql, pega o blob usa a chave de login descriptografa e exibi a imagem na tela. Não entendo muito de criptografia com chaves, alguem por favor me indique uma biblioteca ou qualquer coisa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, ainda continua sem sentido.

 

no final vc tem que descriptografar e vai exibir normal pro usuário, ele ainda vai conseguir ver o blob sem a criptografia.

 

você tem que colocar senha no banco, se precaver de sql injection mas de qualquer forma esse não é um tipo de dado de extrema importância que ele não pode ver de jeito nenhum.

 

não é necessário isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existem diversas criptografias: AES, MD5 e etc só que elas são só de ida, você não pode descriptografar. Mas mesmo se a pessoa conseguir acessar o BD (O que é bem complicado se ele tiver login e senha) ela não vai conseguir dar Decode em base64 até porque uma imagem em BLOB é um base64, sendo assim você teria uma encriptação dupla e seria necessário que a pessoa pudesse usar umas tags html já com o decode do seu base64 em um navegador, algo do estilo <img src"base64;..."/> para que seja possível ver a imagem, fora isso ela é só um monte de lixo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, ainda continua sem sentido.

 

no final vc tem que descriptografar e vai exibir normal pro usuário, ele ainda vai conseguir ver o blob sem a criptografia.

 

você tem que colocar senha no banco, se precaver de sql injection mas de qualquer forma esse não é um tipo de dado de extrema importância que ele não pode ver de jeito nenhum.

 

não é necessário isso.

O usuario tem a chave, por isso ele pode descriptografar e baixar, estou falando os outros que não tema a chave não pode ter acesso caso invadam o banco de dados. Vale lembrar que o usuario não entra no banco de dados pelo php my admin, eu tenho uma pagina php, onde ele digita a senha, a senha usada descriptografa o blod e exibe a imagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguns não estao entendo, eu preciso criptografar o campo blob para caso algum hacker invadir o banco de dados não ter acesso. Mas os usuários que tem a chave de descriptografia pode ver a imagem e fazer o que quiser. O importante é proteger de usuários não autorizados. Pois as imagens contem dados importantes.

KhaosDoctor eu não consegui achar nada no google, poderia informar um link.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode resolver usando openssl.. exemplo em ambiente Windows:

 

openssl.exe aes-256-cbc -pass SENHA -salt -in file.jpg -out file_out.jpg

Após converter com o OpenSSL, salve o arquivo encriptado num campo tipo blob

 

Para ler o arquivo

openssl.exe aes-256-cbc -pass SENHA -d -in file_out.jpg -out file.jpg

Isso faz o reverso, voltando o arquivo original.

 

 

 

Sobre segurança... se um invasor entrar no server, ele descobrirá a chave do salt e poderá ler tudo de qualquer forma..

Mas de fato, é uma boa opção para dificultar a vida de invasores.

 

Se for usar openssl aes-256, esteja atento a esse "bug": http://stackoverflow.com/questions/4745029/openssl-aes-256-encrypted-file-on-windows-cant-be-decrypted-on-linux

 

 

Há diversas outras técnicas para resolver... Avalie o que for conveniente para o seu caso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.