
Keamanan Periksa
Periksa memungkinkan pengguna untuk memilih kontak yang diberi tahu jika perangkat yang didukung milik pengguna tidak tiba pada tujuan yang telah ditentukan sebelumnya. Saat pengguna memilih kontak untuk memulai Periksa, iMessage dikirim ke kontak tersebut dengan detail mengenai sesi termasuk tujuannya. Perangkat pengguna yang memulai juga membuat token akses dan kunci enkripsi Periksa. Kunci enkripsi Periksa dikirim di iMessage kedua; namun, pesan ini ditahan oleh server iMessage alih-alih langsung dikirim. Karena pesan ini dienkripsi ujung ke ujung antara pengguna dan kontak tujuan, kontennya tidak tersedia bagi Apple.
Selagi perangkat pengguna yang memulai membuat kemajuan ke tujuannya, perangkat secara berkala mengirimkan pesan detak ke server iMessage, yang memperpanjang waktu kedaluwarsa sebelum pesan kunci enkripsi Periksa dikirim. Jika perangkat dimatikan atau kehilangan konektivitas, server iMessage secara otomatis melepas iMessage yang berisi kunci enkripsi ke kontak saat waktu kedaluwarsa tercapai. Pesan kunci enkripsi Periksa juga dapat dilepas jika perangkat tidak membuat kemajuan ke tujuannya. Saat dilepas dengan cara ini, token akses disertakan.
Selama sesi Periksa, perangkat pengguna yang memulai secara berkala mengumpulkan data Periksa yang relevan (misalnya, lokasi dan level baterai), dan mengunggahnya ke iCloud. Apple tidak memiliki akses ke kunci Periksa dan tidak dapat mengakses data yang diunggah.
Pengesahan pengguna diperlukan untuk mengakhiri sesi Periksa. Jika pengguna membatalkan sesi, data yang dienkripsi dan iMessage yang berisi kunci enkripsi Periksa dihapus dari server dengan aman.
Jika perangkat Periksa belum tiba pada tujuannya sesuai harapan, atau timer yang dikonfigurasi habis, kontak yang dipilih akan menerima iMessage yang berisi kunci enkripsi Periksa. Ada dua skenario yang memungkinkan:
Setelah hilangnya koneksi: Pada kasus ini, kontak tujuan tidak memiliki token akses dan perangkat kontak melakukan pemeriksaan kedua untuk menentukan apakah terdapat cukup waktu yang telah berlalu sejak detak terakhir. Perangkat kontak meminta data Perisa yang dienkripsi dari server, dan server melakukan pemeriksaan ketiga untuk mengonfirmasi lebih lanjut jika telah cukup waktu terlewat sejak detak terakhir. Jika ya, server menyediakan kontak dengan data Periksa yang dienkripsi, dan kontak dapat mendekripsinya dengan kunci Periksa mereka.
Setelah perangkat pengguna menentukan bahwa pengguna tidak membuat kemajuan pada tujuannya: Pada kasus ini, kecuali jika pengguna membatalkan atau memperpanjang Periksa saat diminta, kontak tujuan diberikan token akses dan kunci enkripsi Periksa. Perangkat kontak menyediakan token akses ke server, yang memungkinkannya untuk mengunduh data Periksa yang dienkripsi. Lalu, data dapat didekripsi dengan kunci Periksa.