Informatica
Convertitore di timestamp Unix (epoch) in data e ritorno
Incolla un timestamp e leggi subito la data in UTC e nella tua ora locale, oppure scrivi una data e ottieni i secondi dall'epoch. L'unità si riconosce dal numero di cifre.
Che cos'è il tempo Unix
Il tempo Unix conta i secondi trascorsi dalla mezzanotte del 1° gennaio 1970 in UTC, l'epoch. È il modo in cui quasi tutti i sistemi operativi, i database e i protocolli memorizzano un istante: un solo numero, indipendente dal fuso orario e dall'ora legale.
Il numero non dice la sua unità. Dieci cifre sono secondi, tredici millisecondi, come in JavaScript e Java, sedici microsecondi e diciannove nanosecondi. Per le date fra il 1973 e il 2286 il numero di cifre basta a capirlo, ed è quello che fa la conversione automatica.
Il fuso orario entra solo quando si scrive la data per un essere umano: lo stesso timestamp è mezzanotte a Londra e l'una a Roma. Per questo il risultato mostra sia UTC sia l'ora locale del tuo dispositivo.
Errori frequenti
- Scambiare millisecondi per secondi: un timestamp di tredici cifre letto in secondi cade decine di migliaia di anni nel futuro.
- Dimenticare il fuso: una data scritta senza indicarlo può essere interpretata in UTC da un programma e in ora locale da un altro.
- Salvare i secondi in un intero a 32 bit con segno: il 19 gennaio 2038 alle 03:14:07 UTC il valore trabocca e diventa negativo.
Domande frequenti
Il tempo Unix tiene conto dei secondi intercalari?
No. Ogni giorno vale esattamente 86.400 secondi; quando viene aggiunto un secondo intercalare, i sistemi lo ripetono o lo spalmano. Per questo il tempo Unix non è un conteggio esatto dei secondi fisici trascorsi.
Che cos'è il problema dell'anno 2038?
I sistemi che memorizzano i secondi in un intero a 32 bit con segno arrivano al massimo a 2.147.483.647, cioè il 19 gennaio 2038. Il secondo successivo diventa un numero negativo, che corrisponde al 1901.
Come ottengo il timestamp attuale in un programma?
In JavaScript Date.now() dà i millisecondi, in Python time.time() i secondi con decimali, in un terminale Linux date +%s i secondi interi. Il pulsante Adesso fa lo stesso qui.
Come funziona questo calcolo
Data UTC = epoch (1970-01-01 00:00:00 UTC) + timestamp ÷ unità. L'unità automatica è: secondi sotto 10^11, millisecondi sotto 10^14, microsecondi sotto 10^17, altrimenti nanosecondi. Da una data locale si sottrae lo scostamento del fuso valido in quella data, ora legale compresa. La settimana ISO è quella che contiene il giovedì: la settimana 1 contiene il primo giovedì dell'anno.
Calcoli collegati
Generatore di hash
MD5, SHA-1, SHA-256, SHA-384 e SHA-512 di un testo o di byte, con la verifica di un hash.
Sicurezza delle password
Entropia in bit e tempo per indovinarla, con gli schemi deboli riconosciuti. Nulla lascia il browser.
Convertitore Base64
Da testo, intero, esadecimale o binario a Base64 e ritorno, con i gruppi di 6 bit spiegati.
Convertitore di colori
Da HEX a RGB, HSL, HSV e CMYK e ritorno, con il contrasto WCAG del testo bianco e nero.