A respeito de segurança da informação, julgue o seguinte it...
A criptografia hash é one-way, pois, uma vez obtido um valor hash h para uma string x, é computacionalmente impossível encontrar um valor de x que gere o hash h.
"A força de uma função hash contra os ataques de força bruta depende apenas do tamanho do código de hash produzido pelo algoritmo. Existem três propriedades desejáveis são elas: Resistência à primeira inversão ou propriedade unidirecional, Resistência à segunda inversão ou resistência fraca e colisões e Resistência a colisões ou resistência forte a colisões. Todas essas três propriedades possuem como característica ser computacionalmente inviável descobrir descobrir um valor x que gere o hashi;
Stalling 4ª edição pág. 243 "
One-Way de acordo com a wikipedia, http://pt.wikipedia.org/wiki/Função_de_mão_única , é:
"Em Ciência da Computação, uma função de mão única ou função de sentido único é uma função que é fácil de calcular para qualquer entrada (qualquer valor do seu domínio), mas difícil de inverter dada a imagem de uma entrada aleatória"
Espero ter ajudado.
"Computacionalmente impossível"? Não concordo com o gabarito. Creio que a palavra "inviável" seria mais adequada. Concordo com o aprendiz. Alguém poderia nos explicar o porquê? ObrigadoSegundo Stallings(2008,p.239),"Para qualquer valor h dado, é computacionalmente inviável encontrar x tal que H(x) = h. Isso às vezes é conhecido na literatura como resistência à primeira inversão ou propriedade unidirecional (one-way property).
(...)
Essa propriedade, a resistência à primeira inversão, afirma que é fácil gerar um código dada uma mensagem, mas praticamente impossível gerar uma mensagem dado um código."
Bibliografia:
CRIPTOGRAFIA E SEGURANÇA DE REDES- 4 EDIÇÃO 2008- WILLIAM STALLINGS.
computacionalmente inviável é igual impossível?
"Difícil" ou "Praticamente impossível" não são a mesma coisa que simplesmente "Impossível".
O avaliador forçou bastante a barra ao dar o gabarito como certo.
Discordo totalmente do gabarito. A questão afirmou que é impossível achar o valor x que gere o mesmo hash. E a força bruta, minha gente? Em nenhum momento a questão disse que é impossível(ou inviável como alguns colegas citaram) A PARTIR DO HASH chegar ao VALOR X. Na força bruta é perfeitamente possível chegar ao hash simplesmente testando vários valores e depois comparando ao hash h.
Sabe-se que computacionalmente impossível é diferente de computacionalmente inviável que é diferente de praticamente impossível.
Na questão examinador aduz à impossibilidade de se encontrar um valor de x que gere o hash h, o que não é verdade. Por mais trabalhoso/custoso, do ponto de vista computacional, que seja, existe a possibilidade de se realizar essa "engenharia reversa" do hash (usando-se força bruta, por exemplo).
Portanto, na minha opinião, a assertiva está errada.
Bons estudos!
impossible is nothing - CESPE discordou da afirmação
a tecnica do japones fail again.
ta ai restringindo com o impossível ..
Colisões de Hash? Alguem? Colisões?
Gabarito Certo
Primeira questão da CESPE que eu vejo colocando a palavra "impossível" sendo certa.
"Retroceder Nunca Render-se Jamais !"
Força e Fé !
Fortuna Audaces Sequitur !
Esse recado vai para o Andrew e aos demais que concordam com ele: não interessa o que vc pensa ou deixa de pensar sobre o assunto, Interessa o que a literatura diz. Leiam [1] e verá que ele usa o termo COMPUTACIONALMENTE IMPOSSIVEL.
Página 254: Para qualquer valor de hash h informado, é computacionalmente impossível encontrar y, de modo que H(y) = h.
Portanto, parem de confundir os outros com seus comentários imprecisos ou achismos.
Fonte:
CRIPTOGRAFIA E SEGURANÇA DE REDES- 6 EDIÇÃO - WILLIAM STALLINGS.
P.S.: A nova edição do livro Stallings alterou de computacionalmente inviável para computacionalmente impossível.
Gabarito correto.
.
At.te
Foco na missão ❢
Estava estudando um material baseado no livro do Stallings em inglês e acabei vendo isso :
o livro em inglês Cryptography and Network Security Principles and Practice 6th Edition em inglês dia na tabela Table 11.1 Requirements for a Cryptographic Hash Function H pág 323 usa a expressão
"computationally infeasible" geralmente traduzido para computacionalmente inviável
o livro em portugueês Criptografia e segurança de redes Princípios e práticas também 6 Edição na mesma tabela tabela 11.1 requisitos para função de hash criptográfica H.pág 254 usa a expressão
computacionalmente impossível
infeasible = inviável
Quem traduziu para impossível, não interessa se é um especialista pika das galáxias, está errado.
Já ouviu falar das raibow tables?
Novamente pergunto em uma questão, ninguém recorre?
c-
A cryptographic hash function is an algorithm for which it is computationally infeasible (because no attack is significantly more efficient than brute force) to find either a data object that maps to a pre-specified hash result (the one-way property) or two data objects that map to the same hash result (the collision-free property). Because of these characteristics, hash functions are often used to determine whether or not data has changed.
Questão passível de anulação!
Não é impossível, eu vou provar agora na prática, aliás isso foi feito pela Google com o sha1.
O experimento é o seguinte, com um linux você pode executar os seguintes comandos e obter 2 hashes iguais de 2 arquivos pdf diferentes, veja só:
1º Baixe os 2 arquivos pdf feitos pela google, com os seguinte comando:
curl -sSO https://shattered.it/static/shattered-1.pdf
curl -sSO https://shattered.it/static/shattered-2.pdf
2º Calcule o SHASUM dos arquivos utilizando o algoritmo sha1, com os seguintes comandos:
sha1sum *.pdf
Esse comando tira o shasum usando o sha1 de todos os arquivos pdf do diretório corrente, isso retorna o seguinte:
38762cf7f55934b34d179ae6a4c80cadccbb7f0a shattered-1.pdf
38762cf7f55934b34d179ae6a4c80cadccbb7f0a shattered-2.pdf
Perceba que houve colisão e os arquivos são diferentes, um é vermelho e o outro é azul.
Porém ao usar o sha256 isso não acontece:
sha256sum *.pdf
Saída:
2bb787a73e37352f92383abe7e2902936d1059ad9f1ba6daaa9c1e58ee6970d0 shattered-1.pdf
d4488775d29bdef7993367d541064dbdda50d383f89f0aa13a6ff2e0894ba5ff shattered-2.pdf
Cabe ressaltar que é inviável, mas não impossível fazer o mesmo experimento para qualquer outro algoritmo de hash.
---------------------------------------------------------------------------------
Como dito por outras pessoa, parece que o examinador copiou e colou o que estava no livro do Stallings em português, então o examinador deixou o gabarito em certo. Mas o livro em inglês não traz a palavra "impossível".
Fonte: https://stackoverflow.com/questions/3475648/sha1-collision-demo-example
A questão deveria ser trocado as palavras "é computacionalmente impossível" por "muito dificil de inverter" pois renato da costa explica em um vídeo que teve uma banca que colocou dificil de inverter para a questão não ser possível sua anulação.
Gabarito: C - Certo
A questão aborda um conceito fundamental na criptografia, especificamente no contexto de funções de hash. Para entender por que a alternativa correta é a letra C, é importante compreender alguns aspectos essenciais da criptografia e das funções hash.
Primeiramente, uma função hash é um algoritmo que transforma uma string de comprimento variável em uma sequência de comprimento fixo, conhecida como valor hash. Essa transformação é determinística, ou seja, a mesma entrada sempre produzirá a mesma saída.
O termo one-way indica que a função hash é de mão única, o que significa que, após calcular o valor hash, é computacionalmente impossível reverter o processo para obter a string original. Este é um dos principais atributos que torna as funções hash tão úteis em diversas aplicações de segurança da informação, como armazenamento de senhas, integração de arquivos e assinaturas digitais.
Vamos analisar a justificativa da alternativa correta:
Alternativa C: A criptografia hash é one-way, pois, uma vez obtido um valor hash h para uma string x, é computacionalmente impossível encontrar um valor de x que gere o hash h. Isso está correto. As funções hash são desenhadas para serem irreversíveis, garantindo que não se consiga, a partir do valor hash, determinar a string original.
Agora, vamos considerar o que tornaria a alternativa incorreta:
Alternativa E: Se a afirmativa dissesse que a criptografia hash é two-way ou que é possível reverter o hash para encontrar a string original, isso estaria errado. Isso contrariaria a definição básica de funções hash e sua aplicação em segurança da informação, onde a irreversibilidade é crucial.
Em resumo, a alternativa correta é C porque descreve com precisão a propriedade básica de uma função hash, que é ser uma função de mão única, tornando-a adequada para sua utilização em diversas áreas da segurança da informação.
Espero que essa explicação tenha sido clara e ajude a compreender melhor o tema abordado na questão. Se houver qualquer dúvida ou se precisar de mais esclarecimentos, estou à disposição para ajudar!