Preciso de uma fonte de tempo inabalável e precisa.
Com falta de configurar meu próprio relógio atômico (a menos que isso seja mais fácil do que parece), como eu poderia fazer isso?
Não é que eu não confie nos pools NTP; Não tenho garantia de quem estou falando.
Respostas:
Uma das respostas anteriores mencionou a autenticação MD5, mas não mencionou a autenticação pubkey disponível no NTP4. Muitos laboratórios nacionais fornecem serviços de horário habilitados para md5 / autokey.
Eu não entendo qual é o seu modelo de ameaça; se alguém é capaz e deseja falsificar seu sinal de GPS, você tem problemas maiores do que a hora. Dito isto, você pode combinar um relógio local usando GPS ou CDMA e aumentar esse sinal de tempo com o tempo autenticado de alguns laboratórios nacionais que fornecem serviços de tempo autenticados. Dessa forma, se o seu sinal de GPS for falsificado, você ainda poderá contar com o tempo autenticado dos laboratórios nacionais.
GPS:
Por apenas US $ 40 e algumas soldas, você pode configurar uma fonte de tempo local GPS + PPS com uma placa de avaliação GPS da Sure Electronics. Ocasionalmente, você pode encontrar um refclock CDMA por um preço bastante baixo no ebay se não conseguir receber um sinal de GPS no seu data center.
Serviço NTP autenticado:
O NIST, o NRC e o INRIM (laboratórios nacionais dos EUA, Canadá e Itália) fornecem serviços de hora autenticados pelo MD5. Ao contrário do NIST e do INRIM, o serviço CRC md5 não é gratuito. O serviço de horário autenticado da Autokey está disponível no OBSPM e no INRIM (laboratórios nacionais francês e italiano) e eles fornecem esse serviço gratuitamente. Certamente existem outros laboratórios nacionais com tempo autenticado, mas você precisará pesquisar no Google.
Links para o tempo autenticado dos laboratórios nacionais:
NIST:
http://www.nist.gov/pml/div688/grp40/auth-ntp.cfm
NRC:
http://www.nrc-cnrc.gc.ca/eng/services/inms/calibration-services/time-frequency.html#Authenticated
OBSPM:
http://syrte.obspm.fr/informatique/ntp_infos.php
https://syrte.obspm.fr/informatique/ntp_keys.php
INRIM:
http://www.inrim.it/ntp/
http://www.inrim.it/ntp/auth_i.shtml
fonte
Meu conselho seria confiar no NTP - não é seguro, mas não conheço nenhum vetor de ataque importante e é tão seguro quanto sua seleção de pares (que são tão seguros quanto a resolução de DNS e o roteamento) mesa).
Se você precisar considerar outras alternativas, aqui estão algumas (precisão / segurança entre parênteses):
Seu próprio relógio atômico como fonte PPS. (Über acurate. Porra, quase invencível)
(Estes estão disponíveis no eBay. Não é impossível configurar - existem muitos nerds que os possuem e o seu daemon NTP pode usá-los como uma fonte de tempo. Você precisará lidar com segundos bissextos .)
Um receptor GPS. (Super preciso. Muito difícil de falsificar).
(Os sinais de GPS PODEM ser substituídos / falsificados, mas esse é um ataque especializado que exigiria algum esforço para ser realizado. Uma falha total do sistema GPS é improvável, assim como um desligamento completo.)
NTP (muito preciso. Spoofable com algum esforço)
(As chances de alguém atacando você através de sua fonte de tempo são bastante reduzidas, e se você configurar o seu daemon NTP contra vários dos servidores de pool os valores atípicos ou falso-tickers serão descartadas.
Note-se que isso pressupõe que você confia no seu DNS pelo menos na medida do possível.
Um oscilador de quartzo estabilizado como fonte de PPS. (Não é muito preciso. É quase imperceptível)
(Dependendo do oscilador, isso pode não ser mais preciso do que o relógio do seu computador. Espere corrigir o horário periodicamente e você precisará lidar com segundos bissextos.)
O relógio interno do seu computador. (Mais preciso do que uma ampulheta. É quase imperturbável.)
(Para qualquer aplicativo moderno que se preocupa com o tempo, isso é praticamente inutilizável.)
fonte
O NTP não é um protocolo seguro (bem, existe um mecanismo de autenticação, mas não é amplamente usado, e a autenticação MD5 não é terrivelmente segura) - independentemente do servidor de horário da Internet com o qual você está falando, você realmente não sabe que você está falando com eles. Confiabilidade das piscinas à parte (não gosto delas porque seus estratos estão espalhados por todo o lugar, o NIST tem boas fontes de internet NTP), a internet NTP não atende às suas necessidades.
Um relógio de hardware na rede local é realmente a única maneira de garantir que sua conexão não esteja sendo interceptada - e mesmo assim, apenas se a segurança da sua rede de área local puder garantir isso.
fonte
Bem, compre um meinberg com sincronização GPS. Aqueles não são muito caros. Você deve confiar nisso até certo ponto. http://www.meinberg.de . Ou simplesmente compre um dispositivo de sincronização GPS e conecte-o a um servidor.
fonte
Há várias fontes de tempo seguras disponíveis na Internet. A maioria deles funciona desta maneira:
Você gera um desafio aleatório.
Você envia o desafio para a fonte de tempo.
A fonte de tempo anexa um carimbo de data / hora ao seu desafio, assina com a conhecida chave privada e envia de volta para você.
Você confirma a assinatura com sua chave pública.
Agora você sabe, supondo que possa confiar nessa fonte, que o horário no registro de data e hora reflete um horário entre quando você gerou o desafio e quando recebeu a resposta.
A Verisign executa esse serviço por HTTPS. A URL é
http://timestamp.verisign.com/scripts/timstamp.dll
. O Globalsign também executa um, o URL éhttp://timestamp.globalsign.com/scripts/timstamp.dll
. O protocolo é especificado na RFC 3161 e também implementado no OpenSSL .fonte
reflects a time somewhere between when you generated the challenge and when you received the reply
/ hora - isso pode ter um atraso de 20 ms, 200 ms ou 2000 ms (caso patológico). A única garantia de tempo "precisas" aqui é que timestamp da TSA é preciso para quando o TSA emitiu (não quando foi solicitada ou recebida pelo cliente)