Jump to content
taviroquai

Encriptar ficheiros

Recommended Posts

taviroquai

Viva pessoal,

Gostaria que me dessem umas dicas sobre a melhor forma de encriptar ficheiros completos com PHP. Não serão ficheiros grandes, terão no máximo 50k.

Já desenvolvi uma solução que usa uma destas extensões e está a funcionar o encriptar/desencriptar.

Basicamente leio o ficheiro em modo binário, aplico o algoritmo de encriptação e gravo o ficheiro. Por exemplo para um ficheiro de imagem, este ficheiro deixa de ser reconhecido por um editor de imagem e só depois de desencriptar, o ficheiro volta ao normal.

Também posso dizer que, para o algoritmo, gero uma chave aleatória e registo todos os pares [ficheiro, chave].

Provavelmente isto só deve ser viável (tempo/recursos) para ficheiros pequenos...

Gostaria de saber se sugerem outra coisa  :thumbsup:

Cumps

Share this post


Link to post
Share on other sites
IceBrain

Sim, lendo o ficheiro por completo para memória e trabalhando com ele assim só é prático para ficheiros relativamente pequenos.

Se tiveres (ou puderes instalar) o GPG, há uma extensão no PEAR que permite encriptar ficheiros directamente sem ter que os carregar completamente para memória.


❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Share this post


Link to post
Share on other sites
taviroquai

Simplesmente, segurança. Só quem tiver a chave poderá usar o ficheiro...  ;) mais alguma ideia?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.