Daftar Isi:
Di awal setiap bulan, Google merilis Buletin Keamanan Android bulanan dan mulai mengirim pembaruan ke telepon Pixel. Sangat menyenangkan bahwa perusahaan itu transparan tentang apa yang sedang terjadi dan bagaimana segala sesuatunya diperbaiki bahkan jika Anda bukan tipe orang yang suka membaca kode sumber.
Ada banyak pekerjaan yang dilakukan di patch ini sebelum dipublikasikan, dan bahkan ada lebih banyak pekerjaan yang terlibat sebelum datang ke telepon lain - jika itu datang sama sekali. Mari kita lihat bagaimana sosis dibuat dan mencoba untuk memiliki pemahaman yang lebih baik tentang mengapa garis waktu untuk patch keamanan sedikit buram.
Pertama, Anda memperbaiki Android
Android adalah binatang yang rumit. Lebih dari 5 juta baris kode, kode ini ada untuk membantu perusahaan yang membuat produk seluler bangkit dan berjalan dengan platform aplikasi lengkap termasuk akses ke Google Play dan layanan lainnya. Itu bukan sesuatu yang bisa digunakan apa adanya; perusahaan-perusahaan ini menghabiskan banyak waktu untuk mencoba membuat Android yang disesuaikan untuk bergabung ke dalam perangkat lunak lain yang mungkin mereka gunakan untuk membuat sistem operasi yang dihomogenisasi.
Google memiliki beberapa aturan tentang bagaimana ini harus dilakukan jika perusahaan ingin memasukkan layanannya, tetapi produsen memiliki tali panjang tentang bagaimana produk akhir dibangun.
Kode ini adalah tempat patch keamanan hidup. Seseorang, baik itu peneliti keamanan atau hanya Joe biasa-biasa saja, menemukan cacat pada telepon yang dapat digunakan untuk mengurangi lapisan keamanan perangkat. Jika cacat itu bukan sesuatu yang dibuat oleh OEM, tim Android ditugaskan untuk mencari tahu apa yang terjadi, mengapa itu terjadi, dan bagaimana cara memperbaikinya dengan cara yang paling tidak mengganggu.
Jika cacat keamanan ditemukan dan itu merupakan bagian dari kode Android dasar, Google harus memperbaikinya lalu mengirimkannya kepada orang lain.
Seringkali, cacat itu bukan sesuatu yang bisa diperbaiki Google. Seperti kami, Google tidak memiliki akses ke firmware dari perusahaan yang membuat perangkat keras seperti Qualcomm atau LG. Jika cacat perlu diatasi pada tingkat perangkat keras, ada kemungkinan perusahaan yang memasok beberapa komponen yang digunakan perlu melakukan perubahan terlebih dahulu. Jika ini masalahnya, perubahan tersebut akan diteruskan ke Google sehingga dapat melihat apa yang perlu dilakukan untuk mengakomodasi mereka dalam kode Android.
Perubahan ini membutuhkan waktu, terutama jika vendor perangkat keras terlibat. Ada tambalan dan pengujian dan lebih banyak tambalan dan lebih banyak pengujian untuk masing-masing dan setiap cacat yang ditangani dalam tambalan. Setelah Google yakin bahwa mereka memiliki perbaikan yang valid untuk kelemahan keamanan, setiap perusahaan yang membuat ponsel Android diberi akses awal (setidaknya 30 hari sebelum tambalan dipublikasikan oleh Google) sehingga mereka dapat mulai bekerja.
Fase dua
Di sinilah sebagian besar pekerjaan dilakukan. Google dapat menulis dan memelihara Android itu sendiri, tetapi sebagian besar perangkat yang menggunakannya bukan buatan Google. Yang - telepon Pixel - juga termasuk di sini. Perangkat keras Google adalah pelanggan Android sama seperti Samsung atau Motorola.
Samsung dan LG dari industri seluler, yang membuat banyak perubahan pada Android, memiliki banyak pekerjaan yang terlibat ketika saatnya untuk menggabungkan tambalan.
Semua perusahaan ini dapat mengerjakan beberapa hal segera setelah mereka memiliki kode baru dari Google. Bagian pertama - dan mungkin paling penting - adalah menentukan bagian mana dari tambalan yang tidak diperlukan. Dan ada banyak hal di setiap tambalan yang bisa diabaikan oleh satu perusahaan dengan bebas.
Misalnya, jika NVIDIA harus membuat perubahan yang didorong kembali ke Android, tidak ada ponsel Samsung yang memerlukan bagian dari patch tersebut. Contoh yang lebih ekstrem adalah perubahan yang dilakukan BlackBerry atau Samsung yang telah mengatasi masalah dengan cara yang berbeda. Mencari tahu apa yang dibutuhkan dan apa yang tidak memakan waktu, terutama ketika perusahaan membuat perubahan besar pada bagian-bagian tertentu dari sistem operasi. Google menyelidiki tuduhan bahwa OEM mengirimkan tambalan keamanan yang tidak membahas beberapa hal yang seharusnya mereka miliki, dan inilah yang ditemukannya.
Tidak setiap bagian dari tambalan dibutuhkan di setiap ponsel.
Setelah selesai, sisa tambalan perlu digabungkan ke dalam kode Android khusus vendor, lalu dibuat dan diuji. Bagian "dibangun dan diuji" bisa menjadi sakit kepala besar jika tambalan tidak bisa hanya diterapkan karena menyentuh file yang digunakan atau tergantung pada kode khusus. Kami melihat banyak juga. Setiap kali Bluetooth atau Wi-Fi ditambal, apakah itu perangkat keras atau perangkat lunak di belakangnya, itu akan menyentuh kode yang telah diubah oleh OEM besar yang membuat sistem operasi lebih bagus daripada "stok" Android. Ada banyak bagian Android yang dapat disentuh oleh OEM.
Setelah insinyur di Samsung atau vendor lain mendapatkan sistem operasi yang menjalankan dan menjalankannya, itu perlu diuji. Dan diuji lagi. Pengujian dapat mencakup melibatkan insinyur jaringan dari berbagai operator yang terlibat, serta meminta Google dan / atau produsen komponen apa pun kembali ke dalam campuran. Itu pasti benar. Sebuah tambalan yang dikirimkan ke ribuan dan ribuan ponsel berpotensi melumpuhkan jaringan operator, memakan tutup data setiap pengguna, atau bahkan menyebabkan ponsel itu sendiri berhenti bekerja. Hal semacam itu tidak dapat diterima dan harus ditemukan sebelum meninggalkan gedung.
Peluncuran
Perusahaan yang membuat ponsel Anda, Google, dan mungkin operator Anda bekerja bersama untuk menyiapkan pembaruan massal over-the-air. Jika Anda pernah melihat URL yang digunakan untuk mengunduh tambalan, Anda akan melihat URL "Google" di alamat web. Itu karena mesin di dalam ponsel Anda yang dapat mengambil dan memproses pembaruan OTA mencari di tempat yang sangat spesifik untuk tambalan. Perlu diketahui bahwa tambalan itu 100% benar dan ditandatangani oleh tanda tangan digital yang tepat. Ini akan memeriksa ini lagi setelah tambalan sepenuhnya diunduh.
Jika Anda membeli ponsel dari operator, ia memiliki banyak input selama masa tambalan.
Operator Anda mungkin memiliki beberapa peraturan tentang kapan dan siapa yang dapat mengunduh tambalan setelah tayangan langsung jika nama mereka ada di telepon. Perusahaan seperti Samsung atau LG membuat versi kustom dari model mereka yang paling populer untuk setiap operator, yang memiliki banyak masukan tentang cara melakukan sesuatu. Seharusnya karena namanya ada di kotak. Ini bisa membuat frustrasi, tetapi itu masuk akal. Jika semua orang di Pittsburgh (misalnya) yang memiliki ponsel Samsung Galaxy S8 mencoba mengambil patch 800MB pada saat yang sama, jaringan akan hancur berkeping-keping. Operator Anda akan melakukan apa pun yang perlu dilakukan untuk menjaga agar jaringan tetap hidup.
Google juga menempatkan semacam penahanan pada peluncuran OTA. Sejumlah pengguna tertentu akan menerima tambalan, dan setelah waktu yang ditentukan, Google menentukan apakah pengguna tersebut memiliki pengalaman yang baik atau yang buruk. Jika semuanya berjalan dengan baik, sejumlah besar pengguna akan mendapatkan tambalan dalam gelombang kedua. Ini berulang beberapa kali sebelum pintu air dibuka. Pengguna yang tidak ingin menunggu pengujian akhir ini dapat secara manual mengunduh tambalan melalui pengaturan perangkat mereka.
Ketika giliran Anda dan Anda memberi ponsel Anda lampu hijau untuk mengambil file itu, itu diunduh dan kemudian ponsel Anda mengambil kendali.
Di tanganmu
Sebuah tambalan diunduh ke ponsel Anda dan diverifikasi sebagai hal yang benar. Versi Android yang lebih lama memiliki cache khusus, yang merupakan bagian dari penyimpanan Anda yang telah dibagi untuk hal-hal seperti file pembaruan untuk hidup; hal-hal yang hanya sementara di telepon. Ponsel yang menggunakan fitur pemutakhiran mulus Android (yang seharusnya merupakan ponsel yang menjalankan Android Nougat saat dijual) "memasukkan" file yang diunduh ke dalam apa yang disebut slot. Dalam kedua kasus, Anda perlu memiliki ruang yang cukup untuk file OTA untuk diekstraksi dan dikerjakan.
Ponsel dengan versi Android yang lebih lama mungkin memiliki partisi cache khusus yang digunakan selama pembaruan. Ukurannya 2, 5 kali lebih besar daripada file OTA yang Anda unduh.
Perangkat lunak OTA updater di ponsel Anda adalah bagian dari Android. Sebuah skrip dalam file yang diunduh memberi tahu cara mencari file yang perlu diubah dan menyalin file-file itu baik ke cache perangkat Anda atau ke slot yang ditunjuk. Kemudian membandingkan file asli di ponsel Anda dengan file yang telah diunduh. Beberapa mungkin merupakan swap sederhana - ambil file X dari telepon dan hapus, kemudian ganti dengan file X dari unduhan OTA. Lainnya bukan file lengkap dan hanya berisi perubahan spesifik kecil. Perangkat lunak pembaru dan penginstal di telepon Anda tahu apa yang harus dilakukan di sini.
Banyak file di Android, terutama pustaka aplikasi dan perangkat lunak, benar-benar banyak file yang dikompres menjadi arsip khusus. Anda dapat mengambil file APK dan mengubahnya ke file.zip dan membukanya dengan Windows. Terkadang arsip ini perlu dibuka dan bagian-bagiannya perlu ditukar dengan versi baru yang diunduh untuk tambalan keamanan. Itu sebabnya Anda membutuhkan ruang kerja di partisi cache Anda - di situlah file-file ini diekstraksi.
Banyak file di ponsel Anda benar-benar arsip yang berisi banyak file - termasuk arsip file lainnya. Ini rumit.
Setelah setiap file dalam pembaruan OTA diproses dan perubahan dilakukan pada salinan file sistem, sekarang saatnya untuk menjalankan sistem bersama mereka. Ini terjadi ketika ponsel meminta Anda untuk reboot setelah memproses OTA yang Anda terima karena sering ada file yang perlu ditambal tetapi sedang digunakan saat ponsel sedang berjalan. Anda mungkin melihat layar yang menunjukkan bahwa ada pekerjaan yang terjadi selama reboot atau Anda mungkin hanya melihat logo Android. Dalam kedua kasus, file sedang diperiksa, dipindahkan ke tempatnya, dan diperiksa lagi. File lama disimpan dalam cache untuk berjaga-jaga kalau-kalau ada masalah dan Anda tidak bisa boot dengan file baru.
Yang tersisa adalah Anda memastikan semuanya masih seperti yang Anda suka, dan Anda memiliki tanggal yang lebih baru untuk versi Patch Keamanan dalam pengaturan ponsel Anda. Sekarang Anda siap untuk pembaruan selanjutnya!