38. Na arquitetura TCP/IP, os protocolos que
atuam na camada de transporte são
Principais diferenças entre o IPv4 x IPv6
39. Depois de estabelecida a conexão do servidor com a internet, assinale a alternativa com o comando ftp que baixa um arquivo remoto para a máquina do usuário.
a) FTP e UDP. b) TCP e UDP. c)
IP e SMTP. d) TCP e IP. e) HTTP e
FTP.
PROTOCOLOS
Classe de programas que tem
como função principal controle do fluxo de dados entre todos os pontos da rede,
com regras rígidas de transmissão de dados independendo dos meios físicos ou
atmosféricos ou geográficos, ou seja, a informação saída origem e tem que
chegar ao destino.
FTP (Protocolo de Transferência de Arquivo) - Cuida
da transmissão do arquivo pela rede.
Usado nos processos: DownLoad e UpLoad.
É o protocolo que tem a capacidade de conectar-se a um sistema remoto e
fazer o acesso de diretórios e a transferência de arquivos entre estes
sistemas. O FTP inclui senhas de
segurança, o controle de acesso, exige que o usuário se identifique, através de
nome e senha, para ter acesso aos arquivos do servidor. É o serviço mais completo, independência de
plataforma
POP (Post Office Protocol) - É
a versão mais recente do protocolo padrão para recuperar e-mails. O POP3 é um
protocolo de cliente/servidor no qual o e-mail é recebido e guardado para você
pelo servidor de internet.
Periodicamente, você (ou o seu programa de e-mail) checa sua caixa
postal no servidor e baixa qualquer e-mail. Ele é reconhecido pelos
navegadores. SMTP e POP cuida de e-mail(s),
do enviar ao recebimento.
SMTP (Protocolo Simples de Transferência de Mensagens) - É
um protocolo usado na recepção de e-mails.
Porém, uma vez que ele é limitado em sua habilidade de enfileirar
mensagens na recepção final, ele costuma ser usado com um ou dois outros
protocolos, POP3 ou IMAP, que permitem que o usuário salve mensagens em um
serviço de mensagens e baixe-as periodicamente a partir de um servidor.
IMAP (Protocolo de Acesso à Mensagem Internet) - É
usado como serviço remoto de acesso a parte ou toda a mensagem. É um protocolo
alternativo ao POP. Você vê sua mensagem no servidor como se ela estivesse no
seu computador. Uma mensagem apagada
localmente ainda fica no servidor. O e-mail pode ser mantido e lido no
servidor. POP pode ser pensado como um serviço de 'armazenar e
encaminhar'. O IMAP pode ser pensado
como um servidor remoto de arquivos.
HTTP (Protocolo de transferência
do Hipertexto) - Usado
na Internet, cuida da transferência de
textos HTML. É um conjunto de regras para permuta de
arquivos (texto, imagens gráficas, som, vídeo e outros arquivos multimídia) na
Web. É um protocolo de aplicação. Conceitos essenciais que fazem parte do HTTP
incluem a idéia de que os arquivos podem conter referências a outros arquivos
cuja seleção irá induzir mais solicitações de transferência. Qualquer servidor Web contém, além de
arquivos HTML e outros.
TCP/IP (Protocolo de Controle e Transmissão/Protocolo Internet) - Principais
protocolos da INTERNET. IP encaminha os pacotes (dados) na rede. E endereçar os computadores da rede. TCP desmonta e monta os pacotes (dados) a ser
enviados. Os protocolos TCP/IP provê
recursos para transmissão de mensagens entre equipamentos dispersos dentro de
uma ou mais redes, e pode ser implementado sobre várias tecnologias de rede.
UDP (Protocolo que Usa Datagrama)
- Usado em aplicações DNS e SNMP, para gerenciamento de rede. É uma alternativa para o TCP. Assim como o TCP, o UDP usa o IP para
realmente levar uma pacote de dados de um computador para outro. Diferentemente do TCP, o UDP não fornece o
serviço de dividir uma mensagem na origem e remontá-la no destino. UDP não fornece a seqüência dos pacotes em
que os dados chegam. Isso significa que o programa de aplicativo que usa o UDP
deve garantir que a mensagem inteira chegou e está em ordem.
DHCP (Protocolo de Configuração de Host Dinâmico) - Usado
em redes TCP/IP, gerar um endereço IP
dinâmico no momento da conexão a uma estação.
É um protocolo de comunicações que permite que os administradores de
rede gerenciem e automatizem a designação de endereços do IP na rede de uma
organização. Quando uma organização fornece aos usuários de seu computador uma
conexão à internet, um endereço IP deve ser atribuído para cada máquina.
SNMP (protocolo simples de gerenciamento de rede) - Controla
o gerenciamento de rede, monitoramento de dispositivos da rede e suas funções.
Ele não é necessariamente limitado para redes TCP/IP. O SNMP funciona no modelo cliente servidor. O
computador e o sistema utilizado para o gerenciamento atua como cliente,
enquanto que os dispositivos gerenciados são os servidores. O software de
gerenciamento contata o servidor através do protocolo UDP e envia comandos de
consulta para obter informações sobre a configuração do dispositivo, ou
comandos para alterar algum parâmetro.
ICMP (Protocolo de Controle à Mensagem Internet) - Trabalha
com datagrama para controle de mensagem. É um protocolo de controle de
mensagens e de relatórios de erro entre um servidor e um gateway na
internet. Utiliza datagramas de IP, mas as mensagens são processadas pelo
software IP e não são diretamente aparentes para o usuário da aplicação.
LEITURA COMPLEMENTAR: IPv4 para IPv6 (IP Next Generation)
O
IPv6 foi lançado com o objetivo de fornecer mais endereços e, assim, promover o
crescimento da internet. O aumento no uso de computadores tablets, telefones e demais parelhos
eletrônicos ou sistemas (como robôs, carros, e eletrodomésticos), que já estão
ou ainda estarão conectados online tornou necessária a criação do novo IPv6, em
substituição ao IPv4 que estava com conexões esgotadas. O modelo 4 foi criado
nos anos 70 e oficialmente esgotado em 03 de fevereiro de 2011. Nessa data, a
Icann (a instituição global reguladora desses endereços) informou que concedeu
os últimos cinco lotes da reserva de IPs para identificar os dispositivos na
web. Vale lembrar, porém, que o IPv4 ainda não vai desaparecer por completo; o
novo IPv6 vai coexistir com a versão 4 até que a transição do velho para o
atual esteja completa, o que levará alguns anos. Outro detalhe é que, mesmo com
a migração de um modelo para outro, o novo IPv6 pode não trazer melhorias
significativas num primeiro momento, e alguns usuários poderão receber seus
dados da rede com um pouco de atraso.
Principais diferenças entre o IPv4 x IPv6
IPv4
|
IPv6
|
Os endereços têm 32 bits (4 bytes) de
tamanho.
|
Os endereços têm 128 bits (16 bytes) de
tamanho.
|
Cada endereço corresponde a uma conexão,
que muitas vezes é dividida entre vários computadores.
|
Com tantos endereços, cada computador terá
o seu endereço real na internet.
|
Um endereço
IP é binários números, mas podem ser armazenados como texto
para leitores humanos. Por exemplo, um endereço de 32 bits numérico (IPv4)
é escrito em decimal como quatro números separados por pontos. Cada
número pode ser igual a zero a 255. Por
exemplo, 1.160.10.240 poderia ser um endereço IP.
|
Os endereços
IPv6 são 128-bit endereço IP escrito em hexadecimal e separados por dois
pontos. Um exemplo de endereço IPv6 poderia ser escrito
assim: 3ffe: 1900:4545:3:200: f8ff: fe21: 67cf
|
IPSec é opcional e deverá ser suportado
externamente.
|
O suporte ao IPSec não é opcional.
|
Pode ser configurado manualmente ou por
DHCP.
|
Não requer configuração manual ou DHCP.
|
Deve suportar um tamanho de pacote de
576-byte (possivelmente fragmentado).
|
Deve suportar um tamanho de pacote de
1280-byte (sem fragmentação).
|
Para mais informações veja o original em
inglês em
http://www.techsutram.com/2009/03/differences-ipv4-vs-ipv6.html
http://www.techsutram.com/2009/03/differences-ipv4-vs-ipv6.html
Uso dos serviços de IPv6:
√ Google (Gmail
e YouTube), Facebook, Microsoft (Bing) e Yahoo;
√ Provedores de acesso, como Comcast e AT&T, dos
Estados Unidos, Free, da França;
√ Fabricantes de equipamentos de redes, como Cisco e
D-Link.
No BRASIL
O NIC.br (Núcleo de Informação e Coordenação do
Ponto BR) tem coordenado os esforços de implantação do IPv6 no Brasil desde
2008. A previsão que o estoque de iPv4 acabe na América Latina, em fevereiro de
2014.
Saiba mais em:
Olhar digital (ipv4 vs ipv6)
39. Depois de estabelecida a conexão do servidor com a internet, assinale a alternativa com o comando ftp que baixa um arquivo remoto para a máquina do usuário.
a) Receive. b) Send. c) Get.
d) File. e) Put.
d) File. e) Put.
Comando
|
Comando
está usando para ...
|
Comando
usado para ...
|
!
|
Fuja para o shell
|
Associado com comando local
|
$
|
Executar macro
|
Executar Macro
|
?
|
Informações de ajuda local de impressão
|
Imprime a ajuda de informações locais
|
conta
|
Enviar comando para conta de servidor
remoto
|
Enviar comando para a conta do servidor
remoto
|
anexar
|
Anexar um arquivo
|
Concatena um arquivo
|
ascii
|
Setembro tipo de transferência ascii
|
Para configurar e transferir arquivos
ASCII
|
sino
|
Quando o comando Beep concluída
|
Sino som quando o comando foi concluído
|
binário
|
Setembro tipo de transferência de binário
|
Para configurar e transferir arquivos
binários
|
adeus
|
encerrar a sessão ftp e saída
|
Completando a sessão de ftp e saída
|
caso
|
mget alternar superior / inferior
mapeamento ID de caso
|
Mapeamento mesmas letras
|
CD
|
mudar o diretório de trabalho remoto
|
Altere o diretório no servidor remoto
|
cdup
|
mudar o diretório de trabalho remota para
o diretório pai
|
Mude para o diretório pai no servidor
remoto
|
chmod
|
alterar as permissões de arquivos de
arquivo remoto
|
Alterar as permissões no servidor remoto
|
fechar
|
encerrar a sessão ftp
|
Terminar a sessão FTP
|
cr
|
retorno de carro alternância retirada na
ascii fica
|
Retorno de carro
|
excluir
|
excluir o arquivo remoto
|
Excluir um arquivo no servidor remoto
|
depurar
|
Alternar / definir o modo de depuração
|
Define o modo de supressão de erro
|
dir
|
Lista o conteúdo do diretório remoto
|
Lista o conteúdo do diretório remoto
|
desligar
|
encerrar a sessão ftp
|
Terminar a sessão FTP
|
forma
|
Definir o formato de transferência de
arquivos
|
Definir o formato de transferência de
arquivos
|
obter
|
Receber arquivo
|
Receber arquivo ou trazê-lo para o
servidor local
|
glob
|
Expansão metacaractere alternância de
nomes de arquivos locais
|
Transposição nome local com um
metacaractere
|
Hash
|
Impressão alternância '#' para cada buffer
TRANSFERIDO
|
Imprimir o metacaractere "#"
para cada buffer transferido
|
ajudar
|
Informações de ajuda local de impressão
|
Inprime informações locais ajuda
|
ocioso
|
Obter (set) temporizador de inactividade
no lado remoto
|
Defina o tempo disponível do lado remoto
|
imagem
|
Setembro tipo de transferência de binário
|
Para configurar e transferir arquivos
binários
|
lcd
|
Local para as Alterações diretório de
trabalho
|
Diretório mudou no servidor local
|
ls
|
Lista o conteúdo do diretório remoto
|
Listar o conteúdo do diretório remoto
|
macdef
|
Define uma macro
|
Define uma macro
|
mdelete
|
Excluir vários arquivos
|
Excluir vários arquivos
|
mdir
|
Lista o conteúdo de múltiplos diretórios
remotos
|
Lista o conteúdo de múltiplos diretórios
remotos
|
mget
|
obter vários arquivos
|
Receber vários arquivos
|
mkdir
|
criar diretório na máquina remota
|
Crie um diretório na máquina remota
|
mls
|
O conteúdo da lista de vários diretórios
remotos
|
Lista o conteúdo de múltiplos diretórios
remotos
|
modo
|
definir o modo de transferência de
arquivos
|
Definir o modo de transferência
|
modetime
|
Modo COM TEMPO
|
Modo Relógio
|
mput
|
enviar vários arquivos
|
Enviar vários arquivos
|
mais novo
|
obter o arquivo se o arquivo remoto é mais
recente do que arquivo local
|
Obter o arquivo remoto se a máquina ms
novo local
|
nmap
|
Modelos de setembro de padrão de
mapeamento de nome de arquivo
|
Conjuntos de acordo com o nome do arquivo
modelo
|
NLIST
|
NLIST conteúdo do diretório remoto
|
Lista o conteúdo de múltiplos diretórios
remotos
|
ntrans
|
Setembro tabela de tradução para o padrão
de mapeamento de nome de arquivo
|
Configura tabela de tradução de nomes de
arquivos de mapeamento
|
abrir
|
ligar para remoto tftp
|
Abra conexão remota
|
incitar
|
força interativa alertando sobre vários
comandos
|
Força a execução de vários comandos
|
procuração
|
comando em questão conexão alternativa
|
Comando para conexão alternativa
|
SendPort
|
alternar o uso de PORT cmd para cada
conexão de dados
|
Ativar / desativar o uso do comando PORT
para cada conexão de dados
|
colocar
|
enviar um arquivo
|
Enviar um arquivo para o controle remoto
|
pwd
|
imprimir diretório de trabalho na máquina
remota
|
Imprimir diretório de trabalho na máquina
remota
|
desistir
|
encerrar a sessão ftp e saída
|
Termina sessão ftp e saídas
|
citar
|
enviar o comando ftp arbitrária
|
Enviar comando ftp arbitrária
|
recv
|
Receber Arquivo
|
Obter o arquivo da máquina remota
|
reget
|
Obter arquivo reiniciar no final do
arquivo local
|
Reinicia a recepção do arquivo local para
|
rstatus
|
mostrar o estado da máquina remota
|
Apresenta o estado da máquina remota
|
rhelp
|
obter ajuda de um servidor remoto
|
Dá-nos a ajuda dos comandos remotos
|
rebatizar
|
renomear o arquivo
|
Renomear um nome de arquivo
|
restabelecer
|
enfileirados respostas claras de comando
|
Limpa respostas de comando na fila
|
reinicie
|
reiniciar a transferência de arquivos em
bytecount
|
Reiniciar a transferência a partir do
contador de bytes
|
rmdir
|
remover o diretório na máquina remota
|
Excluir um diretório na máquina remota
|
runique
|
alternar loja exclusiva para arquivos
locais
|
Ativar / desativar o único de
armazenamento de arquivos locais
|
enviar
|
enviar um arquivo
|
Enviar um arquivo para o servidor remoto
|
local
|
comando local específico enviar para o
servidor remoto
|
Enviar um comando específico para a
máquina remota / TD>
|
tamanho
|
mostrar o tamanho de arquivo remoto
|
Exibe o tamanho de um arquivo
|
estado
|
mostrar o status atual
|
Exibe o status local
|
struct
|
definir a estrutura de transferência de
arquivos
|
Definir transferência de arquivos
estructra
|
sistema
|
mostrar o tipo de sistema remoto
|
Exibe o tipo de sistema remoto
|
Sunique
|
alternar loja exclusiva na máquina remota
|
Ativar / desativar o único de
armazenamento na máquina remota
|
TENEX
|
Setembro TENEX tipo de transferência de
arquivos
|
Transferência de arquivos tipo TENEX
|
traçar
|
pacote alternância rastreamento
|
Ativar / desativar o caminho de
transferência de pacotes
|
tipo
|
definir o tipo de transferência de
arquivos
|
Define o tipo de arquivo para transferir
|
usuário
|
enviar novas informações do usuário
|
Enviar novas informações do usuário
|
umask
|
get (conjunto) umask no lado remoto
|
Define o sistema de licenças no lado
remoto
|
verboso
|
alternar o modo detalhado
|
Ativar / desativar o modo de entrega
completo
|
Comando
|
Comando
está usando para ...
|
Comando
usado para ...
|
!
|
Fuja para o shell
|
Associado com comando local
|
$
|
Executar macro
|
Executar Macro
|
?
|
Informações de ajuda local de impressão
|
Imprime a ajuda de informações locais
|
conta
|
Enviar comando para conta de servidor
remoto
|
Enviar comando para a conta do servidor
remoto
|
anexar
|
Anexar um arquivo
|
Concatena um arquivo
|
ascii
|
Setembro tipo de transferência ascii
|
Para configurar e transferir arquivos
ASCII
|
sino
|
Quando o comando Beep concluída
|
Sino som quando o comando foi concluído
|
binário
|
Setembro tipo de transferência de binário
|
Para configurar e transferir arquivos
binários
|
adeus
|
encerrar a sessão ftp e saída
|
Completando a sessão de ftp e saída
|
caso
|
mget alternar superior / inferior
mapeamento ID de caso
|
Mapeamento mesmas letras
|
CD
|
mudar o diretório de trabalho remoto
|
Altere o diretório no servidor remoto
|
cdup
|
mudar o diretório de trabalho remota para
o diretório pai
|
Mude para o diretório pai no servidor
remoto
|
chmod
|
alterar as permissões de arquivos de
arquivo remoto
|
Alterar as permissões no servidor remoto
|
fechar
|
encerrar a sessão ftp
|
Terminar a sessão FTP
|
cr
|
retorno de carro alternância retirada na
ascii fica
|
Retorno de carro
|
excluir
|
excluir o arquivo remoto
|
Excluir um arquivo no servidor remoto
|
depurar
|
Alternar / definir o modo de depuração
|
Define o modo de supressão de erro
|
dir
|
Lista o conteúdo do diretório remoto
|
Lista o conteúdo do diretório remoto
|
desligar
|
encerrar a sessão ftp
|
Terminar a sessão FTP
|
forma
|
Definir o formato de transferência de
arquivos
|
Definir o formato de transferência de
arquivos
|
obter
|
Receber arquivo
|
Receber arquivo ou trazê-lo para o
servidor local
|
glob
|
Expansão metacaractere alternância de
nomes de arquivos locais
|
Transposição nome local com um
metacaractere
|
Hash
|
Impressão alternância '#' para cada buffer
TRANSFERIDO
|
Imprimir o metacaractere "#"
para cada buffer transferido
|
ajudar
|
Informações de ajuda local de impressão
|
Inprime informações locais ajuda
|
ocioso
|
Obter (set) temporizador de inactividade
no lado remoto
|
Defina o tempo disponível do lado remoto
|
imagem
|
Setembro tipo de transferência de binário
|
Para configurar e transferir arquivos
binários
|
lcd
|
Local para as Alterações diretório de
trabalho
|
Diretório mudou no servidor local
|
ls
|
Lista o conteúdo do diretório remoto
|
Listar o conteúdo do diretório remoto
|
macdef
|
Define uma macro
|
Define uma macro
|
mdelete
|
Excluir vários arquivos
|
Excluir vários arquivos
|
mdir
|
Lista o conteúdo de múltiplos diretórios
remotos
|
Lista o conteúdo de múltiplos diretórios
remotos
|
mget
|
obter vários arquivos
|
Receber vários arquivos
|
mkdir
|
criar diretório na máquina remota
|
Crie um diretório na máquina remota
|
mls
|
O conteúdo da lista de vários diretórios
remotos
|
Lista o conteúdo de múltiplos diretórios
remotos
|
modo
|
definir o modo de transferência de
arquivos
|
Definir o modo de transferência
|
modetime
|
Modo COM TEMPO
|
Modo Relógio
|
mput
|
enviar vários arquivos
|
Enviar vários arquivos
|
mais novo
|
obter o arquivo se o arquivo remoto é mais
recente do que arquivo local
|
Obter o arquivo remoto se a máquina ms
novo local
|
nmap
|
Modelos de setembro de padrão de
mapeamento de nome de arquivo
|
Conjuntos de acordo com o nome do arquivo
modelo
|
NLIST
|
NLIST conteúdo do diretório remoto
|
Lista o conteúdo de múltiplos diretórios
remotos
|
ntrans
|
Setembro tabela de tradução para o padrão
de mapeamento de nome de arquivo
|
Configura tabela de tradução de nomes de
arquivos de mapeamento
|
abrir
|
ligar para remoto tftp
|
Abra conexão remota
|
incitar
|
força interativa alertando sobre vários
comandos
|
Força a execução de vários comandos
|
procuração
|
comando em questão conexão alternativa
|
Comando para conexão alternativa
|
SendPort
|
alternar o uso de PORT cmd para cada
conexão de dados
|
Ativar / desativar o uso do comando PORT
para cada conexão de dados
|
colocar
|
enviar um arquivo
|
Enviar um arquivo para o controle remoto
|
pwd
|
imprimir diretório de trabalho na máquina
remota
|
Imprimir diretório de trabalho na máquina
remota
|
desistir
|
encerrar a sessão ftp e saída
|
Termina sessão ftp e saídas
|
citar
|
enviar o comando ftp arbitrária
|
Enviar comando ftp arbitrária
|
recv
|
Receber Arquivo
|
Obter o arquivo da máquina remota
|
reget
|
Obter arquivo reiniciar no final do
arquivo local
|
Reinicia a recepção do arquivo local para
|
rstatus
|
mostrar o estado da máquina remota
|
Apresenta o estado da máquina remota
|
rhelp
|
obter ajuda de um servidor remoto
|
Dá-nos a ajuda dos comandos remotos
|
rebatizar
|
renomear o arquivo
|
Renomear um nome de arquivo
|
restabelecer
|
enfileirados respostas claras de comando
|
Limpa respostas de comando na fila
|
reinicie
|
reiniciar a transferência de arquivos em bytecount
|
Reiniciar a transferência a partir do
contador de bytes
|
rmdir
|
remover o diretório na máquina remota
|
Excluir um diretório na máquina remota
|
runique
|
alternar loja exclusiva para arquivos
locais
|
Ativar / desativar o único de
armazenamento de arquivos locais
|
enviar
|
enviar um arquivo
|
Enviar um arquivo para o servidor remoto
|
local
|
comando local específico enviar para o
servidor remoto
|
Enviar um comando específico para a
máquina remota / TD>
|
tamanho
|
mostrar o tamanho de arquivo remoto
|
Exibe o tamanho de um arquivo
|
estado
|
mostrar o status atual
|
Exibe o status local
|
struct
|
definir a estrutura de transferência de
arquivos
|
Definir transferência de arquivos
estructra
|
sistema
|
mostrar o tipo de sistema remoto
|
Exibe o tipo de sistema remoto
|
Sunique
|
alternar loja exclusiva na máquina remota
|
Ativar / desativar o único de
armazenamento na máquina remota
|
TENEX
|
Setembro TENEX tipo de transferência de
arquivos
|
Transferência de arquivos tipo TENEX
|
traçar
|
pacote alternância rastreamento
|
Ativar / desativar o caminho de
transferência de pacotes
|
tipo
|
definir o tipo de transferência de
arquivos
|
Define o tipo de arquivo para transferir
|
usuário
|
enviar novas informações do usuário
|
Enviar novas informações do usuário
|
umask
|
get (conjunto) umask no lado remoto
|
Define o sistema de licenças no lado
remoto
|
verboso
|
alternar o modo detalhado
|
Ativar / desativar o modo de entrega
completo
|
40. A criptografia hash permite que seja
calculado um identificador digital de tamanho fixo, chamado de valor hash,
a partir de uma string de qualquer tamanho. Assinale a alternativa que contém o
algoritmo hash que trabalha com o valor fixo de 20 bytes.
a) SHA-1 b) SHA-2 c) MD2 d)
MD5 e) MD4.0
Um hash é uma sequência de bits geradas por
um algoritmo de dispersão, em geral representada em base hexadecimal, que
permite a visualização em letras e números (0 a 9 e A a F),
representando um nibble cada. O conceito teórico diz que "hash
é a transformação de uma grande quantidade de informações em uma pequena
quantidade de informações". Essa sequência busca identificar um arquivo ou
informação unicamente. Por exemplo, uma mensagem de correio eletrônico,
uma senha, uma chave criptográfica ou mesmo um arquivo. É um
método para transformar dados de tal forma que o resultado seja (quase)
exclusivo. Além disso, funções usadas em criptografia garantem que não é
possível a partir de um valor de hash retornar à informação original. Como a
sequência do hash é limitada, muitas vezes não passando de 512 bits,
existem colisões (sequências iguais para dados diferentes). Quanto maior
for a dificuldade de se criar colisões intencionais, melhor é o algoritmo.
Uma função de hash recebe um valor de um determinado tipo e retorna um
código para ele. Enquanto o ideal seria gerar identificadores únicos para os
valores de entrada, isso normalmente não é possível: na maioria dos casos,
o contra domínio de nossa função é muito menor do que o
seu domínio, ou seja, x (o tipo de entrada) pode assumir uma
gama muito maior de valores do que hash(x) (o resultado da função de
hash). Os algoritmos de hash mais usados são os de
16 bytes MD4 e MD5 ou o SHA-1, de 20 bytes.
Características de alguns algoritmos:
MD4: Desenvolvido em 1990/91
por Ron Rivest, vários ataques foram detectados, o que fez com que o
algoritmo fosse considerado frágil. [carece de fontes]
MD5: O MD5 (Message-Digest algorithm
5) é um algoritmo de hash de 128 bits unidirecional desenvolvido pela RSA Data
Security, Inc., descrito na RFC 1321, e muito utilizado por softwares com
protocolo par-a-par (P2P, ou Peer-to-Peer, em inglês), verificação de
integridade e logins. Existem alguns métodos de ataque divulgados para o MD5.
SHA-1 (Secure Hash Algorithm):
Desenvolvido pelo NIST e NSA. Já foram exploradas falhas no SHA.
WHIRLPOOL: função criptográfica de
hash desenvolvida por Paulo S. L. M. Barreto e por Vincent
Rijmen (co-autor do AES). A função foi recomendada pelo
projeto NESSIE (Europeu). Foi
também adotado pelo ISO e IEC como parte do padrão
internacional ISO 10118-3.
O processo é unidirecional e impossibilita descobrir o conteúdo
original a partir do hash. O valor de conferência ("check-sum") muda
se um único bit for alterado, acrescentado ou retirado da mensagem.