Një gabim në GPSD këtë të diel do ta kthejë kohën 19 vjet prapa.

Një çështje kritike është identifikuar në paketën GPSD, e cila përdoret për nxjerrjen e të dhënave të sakta të kohës dhe pozicionit nga pajisjet GPS, për shkak të së cilës koha do të zhvendoset 24 javë pas më 1024 tetor, d.m.th. ora do të ndryshohet në mars 2002. Problemi shfaqet në versionet 3.20 deri në 3.22 përfshirëse dhe zgjidhet në GPSD 3.23. Të gjithë përdoruesit e sistemeve që përdorin GPSD duhet të instalojnë përditësime menjëherë, ose të jenë të përgatitur për dështim.

Efekti i gabimit mund të çojë në dështime të paparashikueshme në sisteme të ndryshme, përfshirë ato që nuk përdorin drejtpërdrejt GPSD, pasi ky aplikacion përdoret për të marrë të dhëna të sakta kohore në disa serverë NTP të përdorur për sinkronizimin e kohës. Kur ndodhin ndërrime kohore në sisteme, mund të lindin probleme me vërtetimin (për shembull, fjalëkalimet një herë, Kerberos dhe mekanizmat e tjerë të verifikimit të aksesit që kanë një datë skadimi nuk do të funksionojnë më), me verifikimin e certifikatës dhe me llogaritjet që manipulojnë intervalet kohore ( për shembull, llogaritja e kohës së sesionit të një përdoruesi) . GPSD disponohet gjithashtu në një sërë pajisjesh të integruara dhe celulare, shumë prej të cilave nuk marrin më përditësime firmware.

Protokolli GPS përfshin një numërues javor që numëron javët që nga 5 janari 1980. Problemi është se gjatë transmetimit, për këtë numërues ndahen vetëm 10 bit, që do të thotë se ai derdhet çdo 1023 javë (19.7 vjet). Vërshimi i parë ka ndodhur në vitin 1999, i dyti në vitin 2019 dhe i treti do të ndodhë në vitin 2038. Këto ngjarje monitorohen nga prodhuesit dhe ofrohen mbajtës të veçantë për to. Aktualisht, është prezantuar paralelisht një format i ri mesazhi GPS (CNAV), në të cilin 13 bit janë ndarë për numëruesin (d.m.th., një tejmbushje pritet vetëm në 2137).

Në GPSD, në logjikën për rregullimin e pamjes së një sekonde shtesë (e shtuar për të sinkronizuar orët referuese atomike të botës me kohën astronomike të Tokës), u bë një gabim për shkak të të cilit më 24 tetor 2021, 1024 do të zbritet para kohe nga sportel javor. Sipas autorit të kodit, zhvendosja duhet të kishte ndodhur më 31 dhjetor 2022, por përkthimi i kësaj date në numër javësh nuk është kryer në mënyrë korrekte dhe në fakt numri i javëve të dhëna në çek binte nën tetor 2021. (vlera e treguar është 2180 në vend të 2600). /* Numri i javës së kontrollit të arsyeshëm, epoka GPS, kundër sekondave të brishta * Nuk funksionon mirë me regresionet, sepse skandet e kërcimit * mund të jenë nga marrësi ose nga BUILD_LEAPSECONDS. */ if (0 < session->context->leap_seconds && 19 > session->context->leap_seconds && 2180 < jave) { /* supozoni se dyti i kërcimit = 19 deri më 31 dhjetor 2022 * kështu që java > 2180 është në të ardhmen , mos e lejo */ jave -= 1024; GPSD_LOG(LOG_WARN, &session->context->gabim, "GPS javë konfuzion. Javën e rregulluar %u për kërcim %d\n", javë, sesion->context->sekonda të brishtë); }

Burimi: opennet.ru

Shto një koment