Levysoft
  • Home
  • Portfolio
  • WordPress Plugin
  • Contattami

Dal 2004 il blog di Antonio Troise

RSS FeedTwitterFacebook
Feb 19 2009

La psicologia della ricorrenza numerica: 1234567890 Day, il Bug del 2038 e altre celebrazioni numeriche

Posted by Antonio Troise
Tweet

Alle ore 3:31:30 PM dello scorso venerdi 13 febbraio 2009 (in Italia, a causa del fuso orario, erano le 00:31:30 del 14 Febbraio 2009), l’orologio interno dei sistemi Unix (e quindi anche Mac OS X) ha raggiunto il valore, non indifferente, di 1234567890 secondi. Infatti, come è noto, nei sistemi operativi Unix e Unix-like il tempo viene rappresentato come offset in secondi rispetto alla mezzanotte (UTC) del 1º gennaio 1970 (definita epoca o Epoch Time). Quindi, contando il tempo a partire dall’Epoch Time ad oggi sono appunto passati 1.234.567.890 secondi. Questo tipo di rappresentazione ha il vantaggio che, oltre che ad essere compatta, è indipendente dai fusi orari, ed è quindi direttamente confrontabile anche tra calcolatori situati a grandi distanze geografiche tra loro, ed evita di dover effettuare aggiustamenti nel caso ad esempio di dati trasmessi da un fuso orario all’altro. L’unico svantaggio è che, per averne una rappresentazione sotto forma di data e ora locali, è necessario effettuare una conversione (sempre comunque lasciata al sistema operativo).

1234567890 Day

Sebbene, questo evento non abbia nulla di realmente universale (è stato un convenzione comune decidere di iniziare a far scandire arbitrariamente l’orologio interno del cuore dei sistemi operativi Unix dalla data del 1970, ma c’è chi nota come lo scandire dell’Epoch Time sia approssimativamente vicina allo sbarco sulla Luna), l’evento ha suscitato un valore mediatico minimo, ma, al contempo, ha coinvolto i geek più puri di tutto il mondo (dai syadmin ai consulenti IT fino ad arrivare al semplice appassionato di Linux), in una maniera che solo internet può regalare con la versione geek del capodanno dell’anno 2000.

Infatti, questa curiosa ricorrenza ha visto persino dei festeggiamenti “ufficiali” da parte di gruppi di utenza e di programmazione in tutto il mondo. Il sito che ha raccolto tutti questi eventi è stato 1234567890day.com con tanto di countdown in homepage, anche se, per la verità, per molti questa ricorrenza altro non era che una scusa per organizzare una vera e propria rimpatriata di amici amanti del pinguino.

La celebrazione di questo particolare evento è stata pianificata in diverse città di tutto il mondo (San Francisco, Vancouver, Seattle, Los Angeles, Nairobi, Vienna, Copenaghen, Budapest, Croazia, etc … ovviamente è mancata una località italiana).

Geek Party

Per chi, comunque, non era riuscito a festeggiare questa singolarità numerica in compagnia, non è mancato il supporto di Digg (con oltre 5005 diggs) e di Twitter che ha unito centinaia di followers (423 per l’appunto) uniti nei festeggiamenti davanti al proprio monitor, magari supportati dalla Desk clock from ThinkGeek, una sveglia capace di visualizzare la data e l’ora in diversi formati, tra cui, oltre quello standard, anche Esadecimale, Ottale, Binario, a Numeri Romani e, ovviamente, nel formato Unix Epoch Time.

Think Geek Clock

In alternativa, il sito Cool Epoch Countdown ha fornito, e fornisce tuttora, in tempo reale lo scandire del tempo in Unix Time.

Se questi festeggiamenti vi sono sembrati assurdi, allora dovete sapere che le frasi più ricorrenti che giravano sulla blogosfera fino a qualche giorno primo, erano tutte di genere apocalittico, come questa:

It’s The End Of The World As We Know It!
There’s a fairly good chance the world is going to end tomorrow…at least the world of Unix

Ovviamente, quando si tratta di cose strane, anche Google ci mette lo zampino e per festeggiare il 1234567890 Day, Google ha proposto uno dei suoi Doodle riportante la scritta

$ date +%s …
1234567890

Google 1234567890 Day

Per i non addetti ai lavori, “date +%s” è il comando da lanciare sul vostro terminale linux/unix like/mac os x per vedere visualizzata la data nel formato unix time. Per sapere a che ora e che giorno corrisponde una particolare data in unix time, è sufficiente lanciare questo script in Perl (ma potete anche visitare uno dei tanti siti di conversione data/unix time):

perl -e ‘print scalar localtime(1234567890),”\n”;’
Sat Feb 14 00:31:30 2009

Altre celebrazioni numeriche create ad hoc

E se nel lontano 09 Settembre 2001 (2001-09-09T01:46:40Z) si sono festeggiati a Copenhagen in Danimarca (presso il DKUUG), il primo 1.000.000.000 di secondi, allora vi farà piacere che che nel lontano 18 Maggio 2033 alle ore 03:33:20, ricorrerà la celebrazione del Secondo Billenium: 2000000000!

perl -e ‘print scalar localtime(2000000000),”\n”;’
Wed May 18 05:33:20 2033

La cosa buffa è che, giocando con questo piccolo script in Perl, ho scoperto che il 9 Agosto del 2005, è ricorso il Fibonacci Day dei sistemi Unix (ho sostituito la data in unix time con la Successione di Fibonacci, escluso lo zero iniziale, 1123581321):

perl -e ‘print scalar localtime(1123581321),”\n”;’
Tue Aug 9 11:55:21 2005

ma nessuno ne ha mai parlato (o sbaglio?). Forse era una ricorrenza da geek matematici, una specie ancora più rara dei normali geek!

Continuando, possiamo notare che, il 14 Novembre del 2014, si potrebbe festeggiare il Pi Greco Decimal Day per i sistemi Unix (prendendo in esame la prima parte decimale del pi greco):

perl -e ‘print scalar localtime(1415926535),”\n”;’
Fri Nov 14 01:55:35 2014

Come vedete, i motivi per festeggiare ce ne saranno molti ed è tutto frutto della psicologia della ricorrenza numerica. Un comportamento tutto tipico dell’essere umano, che si è dimostrato in tutta la sua potenza mediatica nell’anno 2000 (amplificato poi anche dal famoso Millennium Bug). Per l’uomo tutte le ricorrenze numeriche sono sempre affascinanti, come quando si prendono le misure della Piramide di Cheope della piana di Giza in Egitto e si scopre che dividendo il perimetro della Piramide per il doppio dell’altezza si ottiene un valore molto simile al pi-greco. O quando Joseph Seiss, un ecclesiastico americano, scrisse che le pietre della Piramide contenevano un sistema di numeri che indicavano misure, pesi, angoli, temperature, gradi, problemi geometrici e rilevamenti cosmici. Seiss fu sorpreso dalla ricorrente presenza nei suoi calcoli del numero 5!

E che dire della sequenza numerica 4 – 8 – 15 – 16 – 23 – 42, nota come Equazione di Valenzetti, che la DHARMA, nel mondo immaginario del serial televisivo Lost, aveva il compito di modificare per evitare la fine dell’umanità. In poco tempo finzione e realtà si sono fusi insieme, girando per internet e assumendo connotazioni di quasi-realtà.

Ovviamente alcune ricorrenze numeriche sono talmente singolari che appaiono dare un significato agli eventi più strani, dando una sorta di potere ai numeri che si trasformano in elementi cabalo-matematici.

Il Bug del 2038

Ma vi è un’altra data che i programmatori di tutto il mondo stanno aspettando, questa volta, con grande paura (come quella del Millennium Bug): è il 19 gennaio 2038 alle ore 03:14:07 AM. Dopo questo momento, il contatore supererebbe il valore massimo, e verrebbe considerato come un numero negativo. I computer leggeranno la data non come 2038 ma come 1901 (precisamente, le 20:45:52 di venerdì 13 dicembre 1901) causando errori di calcolo!

Il problema è noto da tempo a tutti e la causa del bug informatico dell’anno 2038 (“Year 2038” è chiamato anche “Y2038”, “Y2K38”, o “Y2.038K” nel linguaggio specialistico) è da imputarsi all’architettura a 32 bit di molte macchine unix attualmente esistenti che usano, come spiegato prima, la rappresentazione POSIX per calcolare il tempo (partendo dal numero di secondi a partire dal 1 gennaio 1970). Questo tipo di sistema è lo standard per i sistemi Unix, e colpisce anche software per altri sistemi operativi che siano stati sviluppati in C. Sulla maggior parte dei sistemi a 32 bit il valore del dato time_t usato per questo calcolo è un numero intero a 32 bit di tipo signed.

Infatti, se un programmatore crea una variabile di tipologia intero segnato per memorizzare un valore numerico, questo può essere come minimo -2147483648 e come massimo 2147483647. Un numero molto grande, ma che diventa un valore piccolissimo se lo trasformiamo in secondi. In 32 bit, infatti, ci stanno appena 136 anni! Usando questo sistema, la data più avanzata rappresentabile a partire dalle 00:00:00 del 1/1/1970 sono le 03:14:07 di giovedì 19/01/2038!

La cosa interessante è che il mondo POSIX comprende, oltre ai sistemi operativi derivati dal sistema UNIX (GNU/Linux, BSD, Solaris, Mac OS X), anche tutti i protocolli di rete UNIX style (http, ftp, etc). In parole povere, se le previsioni nefaste degli addetti ai lavori si avverassero, sarebbe anche la fine di internet (che funziona grazie a protocolli Unix) e dei principali server del globo (che utilizzano sistemi operativi derivati da Unix). Dopo quel secondo saremo proiettati nel 13 dicembre 1901 alle 20:45. Sicuramente questo sarà un problema da gestire da qui ai prossimi anni e richiederà un cambio epocale nella gestione del tempo e di tutto il resto nei sistemi Unix. In teoria la soluzione è semplice e già disponibile, e consiste nell’usare solo sistemi a 64 bit, come il 99% dei processori in commercio attualmente. Infatti, nei sistemi a 32 bit il limite massimo di un intero è (2^32) – 1, mentre in quelli a 64 bit è (2^64) – 1.

Come denunciato anche dal sito ufficiale, 2038bug.com, però, l’errore comune è quello di credere che il problema verrà risolto con la semplice adozione dei 64 bit, non considerando che i molti strumenti che utilizzano sistemi embedded (forni a microonde, ascensori, orologi da polso, ecc.), sono ancora a 8/16 bit e che molti database utilizzano, per i propri campi data, dei Timestamp a 32 bit.

Un aspetto curioso di questa faccenda è che su questo bug del 2038 è stata costruita la storia di John Titor, un fantomatico uomo del futuro (2036) tornato nel 1975 per recuperare un esemplare di IBM 5100 come sorta di moderna Stele di Rosetta, poiché sarebbe l’unica macchina capace di risolvere il bug che sconvolgerebbe il mondo.

Interessante come, anche in questo caso, Google ci abbia messo lo zampino, perché i più attenti avranno scoperto che la data di scadenza dei cookie di Google è il 17 gennaio 2038, due giorni prima della fine dell’Unix Epoch (solo dopo questa data il browser può procedere all’eliminazione dei dati contenuti nel cookie stesso).

Ovviamente c’è anche chi, per celebrare l’evento, ha iniziato vendere magliette con la fine dell’Unix Epoch, ma anche tazze e mousepad per ricordarvi che, la fine dei sistemi operativi come voi li conoscete, è vicina!

T-Shirt Epoch Time

Se invece, volete verificare se il vostro sistema è immune o meno da questo bug, ecco il codice C da compilare:

Questo semplice esempio in C mostra come l’aggiunta di un solo secondo al Timestamp ”Tue Jan 19 03:14:07 2038” lo tramuti in un sinistro venerdì 13 dicembre 1901. Quindi, se il vostro sistema è a 32 bit, dovrebbe produrre questo risultato:

1000000000, Sun Sep 9 01:46:40 2001
2147483647, Tue Jan 19 03:14:07 2038
-2147483648, Fri Dec 13 20:45:52 1901

Ecco una simulazione di quello che accadrebbe nel 2038 ai sistemi unix a 32 bit:

Y2038 Bug Simulation

UPDATE: Ho appena scoperto che molti geek matematici festeggiano la giornata della radice quadrata che viene celebrata nella data in cui, sia il giorno che il mese, risultano essere la radice delle ultime due cifre dell’anno. L’ultima festività è occorsa il 03 Marzo 2009 (3/3/09 Square Root Day), ma beccare la radice giusta non è facile come sembra (sembra che capiti solo 9 volte in un secolo). Se vogliamo continuare a dare i numeri, l’ultimo giorno papabile prima di questo è stato infatti il due febbraio del 2004, che casualmente coincideva con il ‘giorno della marmotta’ americano. Per festeggiare di nuovo dovremo aspettare ben sette anni, esattamente il quattro aprile del 2016. Il primo a celebrare questo evento è stato, nella lontana radice dell’81, Ron Gordon.

Tag:2038, 42, blogosfera, bug, digg, fibonacci, geek, Google, Linux, lost, mac, perl, pi-greco, titor, twitter, unix
CONTINUE READING >
2 comments
Mag 7 2007

La rivoluzione del web 2.0 va oltre: Digg si allea con gli hacker che hanno decriptato gli HD-Dvd contro la RIAA e Youtube pubblica la canzone che mette in musica i numeri della chiave di decrittazione

Posted by Antonio Troise
Tweet

Ricordate la storia di Muslix64, quell’hacker che affermava di esser riuscito a craccare il codice AACS (ottenendo le cosiddette “volume key”) che serve per proteggere i nuovi dvd ad alta definizione dalla pirateria e di farne il backup (sprotetto) su hard disk?
Ebbene, pare che le cose siano andate avanti in maniera del tutto inaspettata e siamo entrati in una era in cui gli user-generated content iniziano a far sentire il loro peso e ad influenzare le persone.

Innanzitutto provate a mettere su Google, come chiave di ricerca, la seguente sequenza di caratteri esadecimali “09 f9 11 02 9d 74 e3 5b d8 41 56 c5 63 56 88 c0”, corrispondente al numero decimale 13256278887989457651018865901401704640.
Ebbene avrete un risultato strabiliante: 1.370.000 pagine riportano questo strano numero. Ma di cosa si tratta?

Facciamo un rapido passo indietro e torniamo all’epoca in cui un certo Muslix64 utilizzò una tecnica sopraffina per far leva su una poco accorta implementazione dell’algoritmo di crittografia da parte di un software per la visione sul computer degli Hd-Dvd, che manteneva nella Ram in chiaro le chiavi di crittografia. La notizia fece il giro del mondo in pochi minuti: anni di sviluppo per creare la chiave di protezione AACS erano andati in fumo! Dopo lo scalpore suscitato da quella notizia, però, Muslix64 ha preferito tornare nell’ombra, ma nel frattempo altri hacker si sono fatti avanti, proseguendo il lavoro di Muslix64.
Come Arzenami che riuscì a trovare il modo di recuperare la “processing key”, utilizzata non solo per la crittografia degli Hd-Dvd ma anche per i film ad alta definizione in formato Blu-ray.
Infine, un altro hacker, dal nome ATARI Vampire, ha completato l’opera, riuscendo a estrapolare la processing key dalla Memoria del computer. Questa chiave di fatto è un passepartout, un grimaldello universale in pochi bit che permette di aggirare gli algoritmi e gli standard industriali alla base di AACS, costati anni di sviluppo e lavoro.
Come se non bastasse esiste un quarto metodo per copiare i film ad alta definizione, questa volta sotto forma di un vero e proprio software (AnyDVD HD), che senza troppi fronzoli aggira le protezioni AACS.

A causa di questa sequenza di codici esadecimali, sul Web è scoppiata quella che può essere definita una vera e propria rivolta, che ha portato a una rapidissima diffusione su centinaia di migliaia di siti, blog e Forum, della chiave in questione. Rivolta cominciata sul noto portale di social networking Digg, sul quale gli utenti della comunità, sentendosi vittime di censura, hanno deciso di ribellarsi, diffondendo e replicando la chiave migliaia di volte; addirittura qualcuno ha messo in musica la chiave, pubblicando su YouTube il brano “Oh Nine, Eff Nine” ispirandosi ai primi caratteri del codice. Qui, però, voglio pubblicare una versione migliore del video che mostra anche delle immagini emblematiche (il video originale mostra uno schermo nero e si sente solo la canzone)

Come vedete due grandi strumenti della rivoluzione del Web 2.0, DIGG e YOUTUBE, sono stati utilizzati dal POPOLO DELLA RETE per far valere i propri diritti contro la RIAA. Insomma, nasce un nuovo mezzo di espressione che, dopo la stampa di Gutenberg, permette a chiunque di diffondere la propria libertà di pensiero.

Tutto comincia con un post pubblicato sulla Home page di Digg contenente il famigerato codice esadecimale necessario al crack degli Hd-Dvd, fatto che ha innescato la reazione immediata della RIAA (Recording Industry Association of America) equivalente alla nostra SIAE. A seguito del post, la RIAA ha inviato a Digg quello che è denominato “Cease and Desist“, ovvero un’ingiunzione a rimuovere tutti i link contenenti la chiave esadecimale e a non proseguire nella pubblicazione di altri collegamenti simili. I responsabili di Digg hanno subito censurato la notizia, e la cosa ha mandato gli utenti del sito di social networking su tutte le furie. I post contenente la chiave si sono rapidamente moltiplicati, e dopo numerosi tentativi da parte di Digg di bloccare la rivolta, Kevin Rose, fondatore di Digg, ha deciso di arrendersi e di cessare il filtro dei messaggi. Non solo: si è addirittura schierato dalla parte della sua comunità, pubblicando un post sul proprio blog intitolato con la sequenza esadecimale.

“Dopo aver letto centinaia di storie e migliaia di commenti all’accaduto, la situazione ci è apparsa chiara. Preferite che Digg crolli combattendo, piuttosto che vederlo inchinarsi al volere di un’azienda più grande e potente. Vi ascoltiamo, tanto che abbiamo deciso di bloccare l’azione di censura: non elimineremo i post o i commenti contenenti il codice, qualunque sia la conseguenza. Se perderemo, che cavolo, almeno saremo morti provando a combattere. Digg continua. Kevin”.

Jay Adelson , l’amministratore delegato di Digg, ha successivamente minimizzato il problema, dichiarando di che nessuna denuncia per l’accaduto è stata ricevuta da Digg. Secondo Adelson, inoltre, le voci circolate in Rete sulla possibile morte del sito sarebbero delle esagerazioni.

Intanto leggo che nel frattempo qualcuno ha anche registrato un dominio: http://www.09f911029d74e35bd84156c5635688c0.ws/. Credo proprio che il popolo della rete stia dando il meglio di sè!

[via pc più facile]

Tag:digg, esadecimale, hacker, hd-dvd, key, riaa
CONTINUE READING >
1 comment
Ott 15 2006

180° News

Posted by Antonio Troise
Tweet

180° News è un nuovo “collaborative news site” che ricorda da vicino il noto Digg: proprio come digg, raccoglie e pubblica notizie provenienti da tutto il mondo consentendo poi ai lettori di decidere, tramite democratica votazione, quali siano quelle che meritano maggior attenzione. L’unica differenza è che non si limita a trattare solo news tecnologiche ma propone notizie di ogni genere.
[via blogs4biz.info]

Tag:collaborative, democrazia, digg, news, votazione
CONTINUE READING >
0 comments
SeguiPrezzi - Risparmia con Amazon.it

Categorie

Commenti Recenti

  • Antonio Troise on UltraEdit: per i programmatori esigenti il miglior editor di testo per Windows, Mac OS e Linux
  • Fioredicollina on UltraEdit: per i programmatori esigenti il miglior editor di testo per Windows, Mac OS e Linux
  • Antonio Troise on UltraEdit: per i programmatori esigenti il miglior editor di testo per Windows, Mac OS e Linux
  • Emanuele on UltraEdit: per i programmatori esigenti il miglior editor di testo per Windows, Mac OS e Linux
  • Luca on iDatabase: la valida alternativa di Bento per macOS e iOS per i database personali

Meta

  • Accedi
  • Entries RSS
  • Comments RSS
  • WordPress.org

Friends Link

  • GamerTagMatch
  • SeguiPrezzi.it – Risparmia con Amazon.it
  • Trendy Nail

Seguimi su:

  • facebook
  • twitter
  • rss
Creative Commons License
Levysoft by Antonio Troise is licensed under a Creative Commons Attribuzione-Non commerciale 2.5 Italia License.
© Copyright 2004 - 2014 - Levysoft by Antonio Troise