Santana Oliveira Posted April 12, 2014 Report Share Posted April 12, 2014 Boa tarde Alguém sabe se é possivel e se não existe nenhum problema em ecriptar uma password 2 vezes ou seja ecriptar uma password e depois ecriptar a palavra já ecriptada. Ou se ja fazer: $password = hash('sha512', $password ); $password = hash('whirlpool', $password ); em vez de $password = hash('whirlpool', $password ); apenas? Fica mais seguro? Pode existir conflito? Alguém me pode ajudar? Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted April 12, 2014 Report Share Posted April 12, 2014 (edited) se as duas operações f e g são bijectivas não existe problema nenhum em aplicar f(g(X)) pois poderás sempre aplica as funções subrejectoras que terás sempre X de volta : g'(f'(Y)) se é mais seguro ? não. pensa bem : se para quebrar uma palavra-chave tens de aplicar uma função h, não interessa se esse h é igual à função f, g ou à composta f->g. basta saber qual o tipo de função é a função h. por outras palavras, basta saber que o teu sistema aplica a composta desses dois métodos que o processo de conversão/descoberta é o mesmo e tem o mesmo tempo de processamento ------------- ps : esta resposta faz-me lembrar um utilizador recente que veio para o fórum fazer posts que vieram a ser apagados onde um dois quais referia que usava matemática para um caso de higiene pessoal ... Edited April 12, 2014 by HappyHippyHippo IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
Santana Oliveira Posted April 12, 2014 Author Report Share Posted April 12, 2014 se as duas operações f e g são bijectivas não existe problema nenhum em aplicar f(g(X)) pois poderás sempre aplica as funções subrejectoras que terás sempre X de volta : g'(f'(Y)) se é mais seguro ? não. pensa bem : se para quebrar uma palavra-chave tens de aplicar uma função h, não interessa se esse h é igual à função f, g ou à composta f->g. basta saber qual o tipo de função é a função h. por outras palavras, basta saber que o teu sistema aplica a composta desses dois métodos que o processo de conversão/descoberta é o mesmo e tem o mesmo tempo de processamento ------------- ps : esta resposta faz-me lembrar um utilizador recente que veio para o fórum fazer posts que vieram a ser apagados onde um dois quais referia que usava matemática para um caso de higiene pessoal ... Então como posso deixar a minha ecriptação mais segura já que existe varios desencriptador como https://crackstation.net/ Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted April 12, 2014 Report Share Posted April 12, 2014 usa melhores palavras-passe assim como o uso de "salts" na geração da hash IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
Santana Oliveira Posted April 12, 2014 Author Report Share Posted April 12, 2014 usa melhores palavras-passe assim como o uso de "salts" na geração da hash OK vou ver disso obrigado Link to comment Share on other sites More sharing options...
Guest faviouz Posted April 12, 2014 Report Share Posted April 12, 2014 Recomendo ler How To Safely Store A Password para uma apreciação geral e curta do problema. Essencialmente, bcrypt é a melhor método para guardar passwords. Qualquer outro método deve ser evitado - incluindo hash(password+salt). Em PHP existe uma nova API para gerar password hashes com o bcrypt:https://gist.github.com/nikic/3707231 Definitivamente é o método mais simples e seguro. Não percas mais tempo com outras soluções. Link to comment Share on other sites More sharing options...
Knitter Posted April 13, 2014 Report Share Posted April 13, 2014 Não nego que bcrypt seja uma vantagem, mas esse artigo, e muitos outros por aí, focam o facto de que bcrypt é mais lento e por isso demora mais tempo a determinar uma hash, e assim torna-se mais lento tentar encontrar uma colisão, mesmo que o bcrypt tenha um esquema de iniciação mais completo (e lento) e que faça uso de salts internas, não deixa de ser uma função de hash e ter as mesmas características que as restantes e, nesse caso, a mesma falha que todas as outras em que existem colisões. É mais difícil encontrar colisões mas continua a ser possível, e o argumento da velocidade só será importante se alguém estive a tentar criar colisões gerando passwords e as hashes no momento e tipicamente o problema é mitigado com tabelas de hashes pré-computadas. Além disso, a segurança ao gravar as passwords é relevante apenas quando o atacante já tem acesso a toda a base de dados... nesse caso a segurança já falhou há muito tempo. Não pretendo negar o uso de bcrypt, apenas lembrar que a segurança de um sistema é composta por muito mais coisas que o algoritmo de hashing que usam para guardar passwords na base de dados, diria até que esse é um ponto menor porque quando for testado já um atacante controla toda a base de dados e para isso o mais certo é controlar todo o sistema, facilmente troca o algoritmo da hashing ou modifica o sistema de forma a ter as passwords sem sequer ter de tentar encontrar colisões. 1 Report www.sergiolopes.eu Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now