Questão de Redes de Computadores — HTTP — VUNESP 2023
Redes de Computadores›HTTP
Código
vu196971
Banca
VUNESP
Órgão
CIJUN
Ano
2023
Cargo
Ana ( )
Uma requisição HTTP apresenta o seguinte cabeçalho: Authorization: Basic dXNlcjpwYXNz
Nesse contexto, é correto afirmar que dXNlcjpwYXNz corresponde a
Aum usuário e senha separados por dois-pontos, codificados em Base64.
Bum nome de arquivo no servidor web que contém uma senha de autorização.
Cuma senha encriptada pelo algoritmo DES ou AES.
Dum token gerado por um servidor de autenticação.
Eum hash criptográfico MD5 de um usuário e senha separados por dois-pontos.
Revelar gabarito e comentário▾
GabaritoA — um usuário e senha separados por dois-pontos, codificados em Base64.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Autenticação HTTP Basic
Gabarito: letra A. O cabeçalho Authorization: Basic dXNlcjpwYXNz utiliza o esquema de autenticação HTTP Basic, no qual as credenciais são formadas pela concatenação do usuário e senha separados por dois-pontos (user:pass) e, em seguida, codificados em Base64. A string dXNlcjpwYXNz é exatamente o resultado dessa codificação, conforme definido na RFC 7617 (que atualiza a RFC 2617).
A autenticação HTTP Basic é um dos mecanismos mais simples de controle de acesso na web. O cliente envia suas credenciais no cabeçalho Authorization, usando o esquema Basic, seguido de um espaço e da string codificada. Essa string é obtida aplicando-se a codificação Base64 sobre a sequência usuário:senha. No exemplo, decodificando dXNlcjpwYXNz, obtemos user:pass, confirmando que se trata de um par usuário/senha separado por dois-pontos e codificado em Base64.
É fundamental entender que a codificação Base64 não é criptografia — ela apenas transforma os dados em uma representação textual legível por máquinas, sem qualquer proteção de confidencialidade. Qualquer pessoa que intercepte o tráfego pode decodificar a string e obter as credenciais em texto claro. Por isso, o HTTP Basic é considerado inseguro quando usado sem uma camada de transporte segura (como TLS/HTTPS).
A banca explora exatamente essa confusão: muitos candidatos associam qualquer sequência aparentemente aleatória a criptografia ou hash. No entanto, a presença do esquema Basic e o formato da string (que termina com == quando necessário, mas aqui não) são pistas fortes de que se trata de codificação Base64. Além disso, o HTTP Basic é um mecanismo de autenticação simples, sem estado, que envia as credenciais em cada requisição, o que o torna vulnerável a ataques de interceptação se não houver TLS.
Para fixar: a diferença entre codificação, criptografia e hash é essencial. Codificação (Base64) é reversível e não usa chave; criptografia (DES, AES) usa chave e é reversível com a chave; hash (MD5, SHA) é irreversível e não usa chave. O HTTP Basic usa apenas codificação, o que o torna inseguro sem HTTPS.
Guarde essa distinção: codificação ≠ criptografia ≠ hash. É exatamente nela que as alternativas desta questão se separam — a banca tenta fazer você confundir Base64 com criptografia ou hash.
Alternativa A — ✅ Correta ⟵ GABARITO
A alternativa descreve com precisão o mecanismo do HTTP Basic: as credenciais são o usuário e a senha separados por dois-pontos (user:pass), e essa string é codificada em Base64. Decodificando dXNlcjpwYXNz, obtemos user:pass, confirmando a afirmação. A RFC 7617 define exatamente esse formato: Basic seguido de espaço e da string Base64 de usuário:senha.
Alternativa B — ❌ Incorreta
Não se trata de um nome de arquivo. O cabeçalho Authorization carrega credenciais de autenticação, não referências a arquivos no servidor. O servidor não busca uma senha em um arquivo a partir dessa string; ele decodifica a string e valida as credenciais contra seu banco de usuários.
Alternativa C — ❌ Incorreta
A string não é resultado de criptografia DES ou AES. Criptografia é um processo reversível que usa uma chave secreta, e o resultado é um texto cifrado que não pode ser decodificado sem a chave. Aqui, a string é apenas uma codificação Base64, que é reversível sem chave — qualquer pessoa pode decodificá-la. A banca tenta confundir codificação com criptografia.
Alternativa D — ❌ Incorreta
Não é um token gerado por servidor de autenticação. Tokens (como JWT, OAuth) são gerados dinamicamente pelo servidor e têm validade limitada. No HTTP Basic, as credenciais são estáticas (usuário e senha) e enviadas em toda requisição, sem geração de token.
Alternativa E — ❌ Incorreta
Não é um hash MD5. Hash é uma função unidirecional que produz um valor fixo e irreversível. A string dXNlcjpwYXNz é reversível — decodificando-a obtemos user:pass — o que a torna uma codificação, não um hash. Além disso, o esquema Basic no cabeçalho já indica o uso de Base64, não de hash.
NÃO CAIA NESSA!
A banca adora trocar codificação por criptografia ou hash. Lembre-se: Base64 é codificação (reversível, sem chave), DES/AES é criptografia (reversível, com chave), MD5 é hash (irreversível). Se a string pode ser decodificada para user:pass, é codificação. Com treino, você enxerga essas trocas de longe 💪
PEGA ESSA DICA!
Na prova, ao ver Authorization: Basic, já associe a Base64. Decodifique mentalmente ou identifique o padrão: a string Base64 usa caracteres alfanuméricos e +/, e pode terminar com ==. Se a questão falar em criptografia ou hash, desconfie — o HTTP Basic não usa nenhum dos dois.