seja, a informacao de tempo sempre trafega na rede de forma aberta, sem criptografia, mesmo quando uma assinatura cifrada e utilizada para garantir a autenticidade da informacao. As razoes principais para o NTP funcionar dessa forma sao que: o tempo e uma informacao publica, nao ha razao para esconder essa informacao; trabalhar com a informacao de tempo cifrada demandaria tempo tanto do servidor quando do cliente e degradaria o desempenho do sistema, fazendo-o menos exato.Existem basicamente dois metodos no NTP para realizar a autenticacao, chave simetrica (symmetric key) e chave publica (autokey).Autenticacao por Chave Simetrica (Symmetric key)A autenticacao por chave simetrica e o esquema utilizado originalmente na versao 3 do NTP, mas mantido da versao 4. Um conjunto de chaves deve ser gerado e compartilhado entre servidor e cliente. O NTP nao fornece meios para a transmissao ou armazenamento seguro das chaves; isso deve ser feito com outros recursos.Chaves simetricas podem ser usadas para: autenticar servidores ou pares no modo simetrico ativo; autenticar pares no modo simetrico passivo ou servidores broadcast ou multicast; autenticar requisicoes dos programas de monitoracao e controle ntpq e ntpdc.Quando o daemon NTP e iniciado, ele le o arquivo de chaves especificado pelo comando keys no arquivo de configuracao e armazena-as num cache. Cada chave deve ser ativada com o comando trustedkey antes de ser usada. Isso pode ser feito com o programa em funcionamento, utilizando o ntpdc. Os comandos requestkey e controlkey selecionam as chaves utilizadas para autenticar os programas ntpdc e ntpq. O arquivo de chaves pode conter varias chaves, uma em cada linha. Cada linha tem 3 colunas. A primeira e o numero da chave, entre 1 e 65535. A segunda e o tipo da chave; recomenda-se utilizar M para MD5, que e representada por uma sequencia de ate 31 caracteres ASCII (A versao 3 do NTP suportava tambem DES, mas alem de ser pior, ha problemas legais nos Estados Unidos, que consideram programas utilizando DES como municao, proibindo sua exportacao). A terceira e a chave em si. Exemplo de arquivo com chaves: 1 M ABCDEFGHIJLMJNOPQRST 2 M ESSAEHUMACHAVEMD5VALIDA 3 M ESSAEHUMACHAVEMD5VALIDATB 15 M 1234ACDAS@#$LKAS)KJDKASH 498 M NTPv4.98Exemplo de utilizacao das chaves simetricas na configuracao do ntp: server servidor1.dominio1 key 498 server servidor2.dominio2 key 2 peer servidor3.dominio3 key 3 # caminho para o arquivo com as chaves keys /etc/ntp.keys # define quais chaves sao confiaveis trustedkey 2 15 498 requestkey 15 # chave para utilizar o ntpq controlkey 15 # chave para utilizar o ntpqcAutenticacao por Chave Publica (Autokey)Na versao 4 do NTP uma nova forma de autenticacao e suportada, baseada em chaves publicas e num protocolo que foi chamado de autokey. A integridade dos pacotes e verificada atraves de chaves MD5 e a autenticidade das fontes de tempo e averiguada por meio de assinaturas digitais e varios esquemas de autenticacao. Esquemas de identificacao (identity schemes) baseados em trocas do tipo desafio/resposta sao usados para evitar varios tipos de ataques aos quais o metodo de chaves simetricas e potencialmente vulneravel.A autenticacao e baseada em grupos de seguranca (security groups). Pode-se entender um grupo de seguranca