J'ai besoin d'une source de temps inexprimable et précise.
À moins de configurer ma propre horloge atomique (à moins que ce ne soit plus simple qu'il n'y paraît), comment pourrais-je y parvenir?
Ce n'est pas que je ne fais pas confiance aux pools NTP; Je n'ai aucune assurance de qui je parle.
Réponses:
L'une des réponses précédentes mentionnait l'authentification MD5 mais ne mentionnait pas l'authentification par clé publique disponible dans NTP4. De nombreux laboratoires nationaux fournissent des services de temps activés md5 / autokey.
Je ne comprends pas quel est votre modèle de menace; si quelqu'un est capable et désireux d'usurper votre signal GPS, vous avez de plus gros problèmes que l'heure qu'il est. Cela étant dit, vous pouvez combiner une horloge locale en utilisant le GPS ou le CDMA, puis augmenter ce signal horaire avec l'heure authentifiée de certains des laboratoires nationaux qui fournissent des services horaires authentifiés. De cette façon, si votre signal GPS est usurpé, vous pouvez toujours compter sur l'heure authentifiée des laboratoires nationaux.
GPS:
Pour aussi peu que 40 $ et quelques soudures, vous pouvez configurer une source de temps GPS + PPS locale avec une carte d'évaluation GPS Sure Electronics. Parfois, vous pouvez trouver une horloge CDMA pour pas cher sur ebay si vous ne pouvez pas recevoir de signal GPS dans votre centre de données.
Service NTP authentifié:
NIST, NRC et INRIM (laboratoires nationaux pour les États-Unis, le Canada et l'Italie) fournissent des services de temps authentifiés MD5. Contrairement au NIST et à l'INRIM, le service CRC md5 n'est pas gratuit. Le service de temps authentifié Autokey est disponible auprès de l'OBSPM et de l'INRIM (les laboratoires nationaux français et italiens) et ils fournissent ce service gratuitement. Il existe sûrement d'autres laboratoires nationaux avec du temps authentifié mais vous allez avoir besoin de google pour eux.
Liens pour le temps authentifié des laboratoires nationaux:
NIST:
http://www.nist.gov/pml/div688/grp40/auth-ntp.cfm
NRC:
http://www.nrc-cnrc.gc.ca/fra/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
la source
Mon conseil serait de faire confiance à NTP - Ce n'est en aucun cas sécurisé, mais je ne connais pas de vecteurs d'attaque majeurs, et il est aussi sécurisé que votre sélection de pairs (qui sont aussi sûrs que votre résolution DNS et votre routage) table).
Si vous devez envisager d'autres alternatives, voici quelques-unes (précision / sécurité entre parenthèses):
Votre propre horloge atomique comme source PPS. (Über précis. Merde presque inexprimable)
(Ceux-ci sont disponibles sur eBay. Ce n'est pas impossible à configurer - il y a beaucoup de nerds de temps qui les ont et votre démon NTP peut les utiliser comme source de temps. Vous devrez gérer les secondes intercalaires .)
Un récepteur GPS. (Super précis. Très difficile à usurper).
(Les signaux GPS PEUVENT être ignorés / usurpés mais c'est une attaque de spécialiste qui nécessiterait un certain effort pour être menée. Une panne totale du système GPS est peu probable, tout comme un arrêt complet.)
NTP (très précis. Usurpable avec un certain effort)
(les chances que quelqu'un vous attaque via votre source de temps sont assez minces, et si vous configurez votre démon NTP sur plusieurs serveurs de pool, toutes les valeurs aberrantes ou faux-tickers seront rejetées.
Notez que cela suppose que vous fassiez confiance à votre DNS au moins aussi loin que possible.
Un oscillateur à quartz stabilisé comme source PPS. (Pas très précis. Merde presque inexprimable)
(Selon l'oscillateur, cela peut ne pas être plus précis que l'horloge de votre ordinateur. Attendez-vous à devoir corriger l'heure périodiquement, et vous devrez gérer les secondes intercalaires.)
Horloge interne de votre ordinateur. (Plus précis qu'un sablier. Merde presque inexprimable.)
(Pour toute application moderne qui se soucie du temps, c'est à peu près inutilisable.)
la source
NTP n'est pas un protocole sécurisé (enfin, il existe un mécanisme d'authentification, mais il n'est pas largement utilisé et l'authentification MD5 n'est pas très sécurisée) - peu importe le serveur de temps Internet auquel vous parlez, vous ne savez pas vraiment que vous leur parlez. La fiabilité des pools mis à part (je ne les aime pas parce que leurs strates sont partout, le NIST a de bonnes sources pour NTP Internet), NTP Internet ne répond pas à vos besoins.
Une horloge matérielle sur le réseau local est vraiment le seul moyen de vous assurer que votre connexion n'est pas interceptée - et même alors, seulement si la sécurité de votre réseau local est en mesure de vous en assurer.
la source
Eh bien, achetez un meinberg avec synchronisation GPS. Ce ne sont pas trop chers. Vous devriez pouvoir faire confiance à cela dans une certaine mesure. http://www.meinberg.de . Ou achetez simplement un appareil de synchronisation GPS et connectez-le à un serveur.
la source
Il existe un certain nombre de sources horaires sécurisées disponibles sur Internet. La plupart d'entre eux fonctionnent de cette façon:
Vous générez un défi aléatoire.
Vous envoyez le défi à la source de temps.
La source de temps ajoute un horodatage à votre défi, le signe avec leur clé privée bien connue et vous le renvoie.
Vous confirmez la signature avec leur clé publique.
Vous savez maintenant, en supposant que vous pouvez faire confiance à cette source, que le temps dans l'horodatage reflète un temps quelque part entre le moment où vous avez généré le défi et celui où vous avez reçu la réponse.
Verisign exécute un tel service sur HTTPS. L'URL est
http://timestamp.verisign.com/scripts/timstamp.dll
. Globalsign en exécute un également, l'URL esthttp://timestamp.globalsign.com/scripts/timstamp.dll
. Le protocole est spécifié dans RFC 3161 et également implémenté dans OpenSSL .la source
reflects a time somewhere between when you generated the challenge and when you received the reply
- qui peut avoir un délai de 20 ms, 200 ms ou 2000 ms (cas pathologique). La seule garantie de temps "précise" ici est que l'horodatage de la TSA est exact pour quand la TSA l'a émis (pas quand il a été demandé ou reçu par le client)