Convertisseur de Timestamp Unix
Convertissez entre les timestamps Unix et les dates lisibles. Supporte la précision en secondes et millisecondes.
Comment Utiliser
- Entrez un timestamp Unix pour le convertir en date lisible
- Ou choisissez une date et une heure pour les convertir en timestamp Unix
- Basculez entre le format secondes et millisecondes
Questions Fréquentes
-
Qu'est-ce qu'un timestamp Unix ?
Un timestamp Unix est le nombre de secondes écoulées depuis le 1er janvier 1970 (UTC), également connu sous le nom d'époque Unix. Il est largement utilisé en programmation et dans les bases de données.
-
Quelle est la différence entre les timestamps en secondes et en millisecondes ?
Les timestamps Unix en secondes ont 10 chiffres (ex. 1700000000), tandis que les timestamps en millisecondes en ont 13 (ex. 1700000000000). JavaScript utilise les millisecondes, tandis que la plupart des systèmes Unix utilisent les secondes.
-
Qu'est-ce que le problème Y2K38 ?
Les systèmes 32 bits stockent les timestamps sous forme d'entier signé 32 bits, qui débordera le 19 janvier 2038. Les systèmes modernes 64 bits n'ont pas cette limitation.
-
Cet outil tient-il compte des fuseaux horaires ?
L'outil affiche les heures à la fois en UTC et dans votre fuseau horaire local pour faciliter la comparaison.
Le timestamp Unix : une référence temporelle universelle
Le timestamp Unix (aussi appelé Unix time ou POSIX time) est l'une des conventions les plus fondamentales de l'informatique moderne. Il représente un point dans le temps sous la forme d'un simple nombre entier : le nombre de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 UTC, une date arbitraire choisie lors de la création des premières versions d'Unix dans les laboratoires Bell.
Ce choix d'une valeur numérique unique présente des avantages considérables : les comparaisons entre deux dates se ramènent à une simple soustraction, le tri chronologique d'enregistrements est immédiat, et la valeur est identique quel que soit le fuseau horaire ou la langue du système.
Secondes vs millisecondes : une source fréquente de confusion
Deux conventions coexistent selon les plateformes :
- Secondes (10 chiffres, ex.
1700000000) : utilisé par les systèmes Unix/Linux, les bases de données comme MySQL et PostgreSQL, les APIs web classiques. - Millisecondes (13 chiffres, ex.
1700000000000) : utilisé par JavaScript (Date.now(),new Date().getTime()), Java et de nombreuses APIs modernes.
Une erreur classique consiste à interpréter un timestamp en millisecondes comme des secondes, ce qui donne une date dans les années 57000 environ — un signe immédiat que la conversion est incorrecte. À l'inverse, un timestamp en secondes interprété comme des millisecondes pointera vers les années 1970.
Le problème Y2K38
Les systèmes 32 bits stockent les timestamps sous forme d'entier signé sur 32 bits, dont la valeur maximale est 2 147 483 647 — ce qui correspond exactement au 19 janvier 2038 à 03:14:07 UTC. Au-delà de cette valeur, le compteur déborde et revient à une valeur négative, représentant une date en 1901.
Ce problème, surnommé Y2K38 ou Year 2038 problem, est l'héritier direct du célèbre bug de l'an 2000. Contrairement à Y2K, les systèmes modernes 64 bits ne sont pas affectés : un entier signé sur 64 bits peut représenter des dates jusqu'à l'an 292 277 026 596, soit bien au-delà de l'existence prévisible de l'humanité.
Où les timestamps Unix sont-ils utilisés ?
- Bases de données : colonnes de type
TIMESTAMPdans MySQL, SQLite, PostgreSQL - Journaux système : chaque entrée de log est horodatée avec un timestamp
- Tokens d'authentification : les JWT (JSON Web Tokens) utilisent des timestamps pour les dates d'expiration (
exp) et d'émission (iat) - Systèmes de fichiers : dates de création et modification des fichiers
- APIs REST : la majorité des APIs renvoient des dates en timestamp ou en ISO 8601 (qui se dérive facilement d'un timestamp)
Comprendre les timestamps Unix est une compétence fondamentale pour tout développeur, administrateur système ou analyste de données.