Se hai seguito gli sviluppi di Android, devi aver sentito il nome "Avvio verificato" un po 'negli ultimi due anni. Google ha introdotto la funzionalità di sicurezza in Android 4.4 (Kitkat), in modo assolutamente non intrusivo, e ha lentamente aumentato la sua visibilità nelle versioni più recenti del suo sistema operativo Android.
Negli ultimi due giorni, abbiamo visto notizie sulla presenza di un "Avvio verificato rigorosamente applicato"Nell'ultima iterazione di Google del sistema operativo mobile più utilizzato al mondo. Android Nougat utilizzerà un livello di controllo di sicurezza più elevato all'avvio del dispositivo. Mentre, su Marshmallow, l'Avvio verificato ha fornito all'utente solo un avviso, nel caso in cui abbia rilevato qualcosa di sbagliato nella partizione di sistema, Android Nougat farà un ulteriore passo avanti e utilizzerà quello che Google chiama "Avvio verificato rigorosamente applicato", che lo farà non consentire al dispositivo di avviarsi affatto, nel caso in cui rilevi anomalie nella partizione, modifiche apportate al bootloader o presenza di codice "dannoso" nel dispositivo. Ciò pone la domanda: "Che cosa significa esattamente questo per gli utenti?", Risulta, la risposta è diversa per le due principali categorie di utenti Android (utenti occasionali e utenti esperti) e forniremo la risposta per entrambi.
Avvio verificato rigorosamente applicato
Innanzitutto, un po 'di background sull'avvio verificato: in genere, quando Android esegue un test di verifica sulle partizioni, lo fa dividendo le partizioni in blocchi da 4KiB e confrontandole con una tabella firmata. Se tutto va a buon fine, significa che il sistema è completamente pulito. Tuttavia, se alcuni blocchi risultano manomessi o corrotti, Android informa l'utente dei problemi e lascia che sia l'utente a risolverli (o meno).
Tutto ciò sta per cambiare con Android Nougat e l'avvio verificato rigorosamente applicato. Quando l'avvio verificato viene eseguito in modalità forzata, viene eseguito non tollera alcun difetto nelle partizioni. Se rileva problemi, esso non consentirà al dispositivo di avviarsi, e potrebbe consentire all'utente di eseguire l'avvio in un file ambiente in modalità provvisoria, per provare a correggere i problemi. Tuttavia, l'avvio verificato rigorosamente applicato non è solo un controllo contro i blocchi di dati errati. Di solito può anche correggere gli errori nei blocchi di dati. Ciò è reso possibile dalla presenza di codici Forward Error Correcting, che possono essere utilizzati per correggere gli errori nei blocchi di dati. Tuttavia, questo non può sempre funzionare e, nei casi in cui non lo fa, sei praticamente morto nell'acqua.
Avvio verificato rigorosamente applicato: il buono, il brutto e il cattivo
1. Il buono
L'applicazione di avvio verificato su dispositivi Android lo farà migliorare la sicurezza sui dispositivi. Nel caso in cui il dispositivo venga infettato da malware, Avvio verificato rigorosamente applicato lo rileverà la prossima volta che avvii il dispositivo e lo risolverà o probabilmente ti chiederà di fare qualcosa al riguardo.
Questa funzionalità lo farà anche verificare la corruzione dei dati, e nella maggior parte dei casi sarà in grado di correggere eventuali errori introdotti nei dati, grazie ai codici FEC. Google utilizza codici FEC che possono correggere un errore di bit sconosciuto in 255 bit. Certo, sembra un numero piuttosto piccolo, ma mettiamolo in prospettiva, per quanto riguarda un dispositivo mobile:
Nota: I valori seguenti sono tratti dal post del blog dell'ingegnere di Google Sami Tolvanen su sviluppatori Android.
Google avrebbe potuto utilizzare i codici FEC RS (255,223): questi codici sarebbero stati in grado di correggere 16 errori di bit sconosciuti in 255 bit, ma l'overhead di spazio a causa dei 32 bit di dati ridondanti sarebbe stato quasi il 15%, e questo è molto, soprattutto sui dispositivi mobili. Aggiungilo al fatto che Android è il sistema operativo predominante sugli smartphone economici forniti con 4-8 GB di memoria e il 15% di spazio extra sembra sicuramente molto.
Sacrificando le capacità di correzione degli errori, a favore del risparmio di spazio, Google ha deciso di utilizzare i codici FEC RS (255,253). Questi codici possono correggere solo un singolo errore sconosciuto in 255 bit, ma l'overhead di spazio è solo dello 0,8%.
Nota: RS (255, N) è una rappresentazione dei codici Reed-Solomon, che sono un tipo di codici di correzione degli errori.
2. Il cattivo
Mai sentito parlare di "Ci sono due facce di una moneta"? Certo che l'hai fatto. Sebbene le intenzioni di Google con Avvio verificato rigorosamente applicato fossero senza dubbio puri come un piccolo unicorno, arrivano con la loro serie di problemi.
Quando avvio verificato rigorosamente applicato verifica la presenza di malware, controlla anche modifiche illegali al kernel, al bootloader e ad altre cose con cui non ti annoierò, ma questo significa che Android Nougat probabilmente incontrerà molti problemi con il rooting e il flashing delle ROM personalizzate, perché l'avvio verificato non può distinguere tra codice malware indesiderato, e il codice che ha sbloccato il tuo bootloader. Ciò significa che se il tuo dispositivo è dotato di un bootloader bloccato e il tuo OEM non consente lo sblocco del bootloader, praticamente non puoi farlo. Si spera che qualcuno riesca a trovare un exploit per questo.
Per fortuna, la maggior parte delle persone che eseguono il root dei propri dispositivi e eseguono il flashing delle ROM personalizzate per le funzionalità e le funzionalità aggiuntive, utilizzano telefoni compatibili con gli sviluppatori, come il Nexus. C'è molto da considerare, riguardo a questo argomento, e non è sicuramente la fine delle ROM personalizzate, almeno non sui dispositivi dotati di un bootloader sbloccato o che consentono di sbloccare il bootloader. Tuttavia, dispositivi come i telefoni Samsung non consentono ufficialmente lo sblocco del bootloader e su questi dispositivi, lo sblocco del bootloader sarà sicuramente visto come "un problema" da Verified Boot, impedendo al dispositivo di avviarsi.
Un altro problema che si presenterà con l'avvio verificato rigorosamente applicato è quello che interesserà anche gli utenti che non si preoccupano davvero di ottenere i privilegi di root o di installare ROM personalizzate. Nel corso del tempo, durante l'utilizzo del dispositivo, è inevitabile che si verifichi un danneggiamento naturale dei dati nella memoria; non per la presenza di un malware, ma semplicemente perché accade. Questo di solito non è un problema, o almeno non così grave come l'avvio verificato lo trasformerà in. Se si dispone di dati corrotti che l'avvio verificato rigorosamente applicato non è in grado di correggere all'avvio, non consentirà l'avvio del dispositivo. A mio parere, questo è un problema più grande e più visibile di alcuni dati corrotti sulla partizione utente.
3. Il brutto
Tra tutti i vantaggi di applicare l'avvio verificato e tutti i potenziali problemi, il più inquietante, probabilmente, è il fatto che gli OEM potrebbero iniziare a usarlo in modo improprio per bloccare i propri dispositivi in modo tale che le persone non siano in grado di utilizzare Android per ciò che era previsto essere: aperto, intuitivo per gli sviluppatori e completamente personalizzabile. L'avvio verificato rigorosamente applicato metterà nelle mani degli OEM, il potere di garantire che le persone non siano in grado di sbloccare i bootloader sui propri dispositivi, vietando così loro di installare ROM personalizzate e strumenti di miglioramento delle funzionalità come i moduli Xposed.
VEDERE ANCHE: Nessuna ROM personalizzata Android N disponibile? Abbiamo la soluzione per te
Android Nougat: un cambiamento radicale nel modo in cui funziona Android?
Sebbene siamo sicuri che le intenzioni di Google fossero semplicemente di evitare potenziali problemi agli utenti Android occasionali, che non saprebbero cosa fare nel caso in cui il loro dispositivo fosse stato colpito da un malware o se la loro memoria avesse blocchi di dati danneggiati, potrebbe aver consegnato agli OEM e il produttore è lo strumento perfetto per costringere gli utenti a vivere con ciò che è stato offerto loro e nient'altro.
Ovviamente qualcuno troverà un exploit o una soluzione alternativa per questa situazione, e speriamo che lo facciano, nel vero spirito di Android. Fino a quando qualcuno non trova una soluzione, tuttavia, tutto ciò che noi, in quanto utenti, possiamo fare è assicurarci di acquistare i nostri dispositivi da produttori di facile sviluppo.
Cortesia dell'immagine in evidenza: Flickr