
Keamanan komunikasi HomeKit
HomeKit menyediakan infrastruktur automasi rumah yang menggunakan keamanan iCloud dan iOS, iPadOS, dan macOS untuk melindungi dan menyelaraskan data pribadi tanpa memaparkannya ke Apple.
Identitas dan keamanan HomeKit didasarkan pada pasangan kunci pribadi-publik Ed25519. Pasangan kunci Ed25519 dibuat di perangkat iOS, iPadOS, dan macOS bagi tiap pengguna untuk HomeKit, yang kemudian menjadi identitas HomeKit-nya. Pasangan kunci ini digunakan untuk mengesahkan komunikasi antarperangkat iOS, iPadOS, dan macOS, serta antara perangkat iOS, iPadOS, dan macOS serta aksesori.
Kunci—yang disimpan di rantai kunci dan disertakan hanya di cadangan Rantai Kunci yang dienkripsi—terus diperbarui antarperangkat menggunakan Rantai Kunci iCloud, jika tersedia. HomePod dan Apple TV menerima kunci melalui ketuk-atur atau mode pengaturan yang dijelaskan di bawah. Kunci dibagikan dari iPhone ke Apple Watch yang dipasangkan menggunakan Layanan Identitas (IDS) Apple.
Komunikasi antara aksesori HomeKit
Aksesori HomeKit membuat pasangan kunci Ed25519-nya sendiri untuk digunakan saat berkomunikasi dengan perangkat iOS, iPadOS, dan macOS. Jika aksesori dipulihkan ke pengaturan pabrik, pasangan kunci baru akan dibuat.
Untuk membangun hubungan antara perangkat iOS, iPadOS, dan macOS dan aksesori HomeKit, kunci ditukar menggunakan protokol Kata Sandi Jarak Jauh Aman (3072 bit), menggunakan kode delapan digit yang disediakan oleh produsen aksesori, dimasukkan di perangkat iOS dan iPadOS oleh pengguna, lalu dienkripsi menggunakan ChaCha20-Poly1305 AEAD dengan kunci turunan dari HKDF-SHA512. Sertifikasi MFi aksesori juga diverifikasi selama pengaturan. Aksesori tanpa keping MFi dapat membangun dukungan untuk pengesahan perangkat lunak di iOS 11.3 atau lebih baru.
Saat berkomunikasi selama penggunaan, perangkat iOS, iPadOS, macOS, dan aksesori HomeKit saling mengesahkan penggunaan kunci yang ditukar pada proses di atas. Setiap sesi dibuat menggunakan protokol Stasiun ke Stasiun dan dienkripsi dengan kunci turunan dari HKDF-SHA512 berdasarkan kunci Curve25519 per sesi. Ini berlaku bagi aksesori berbasis IP dan aksesori Bluetooth Rendah Energi (BLE).
Untuk perangkat BLE yang mendukung pemberitahuan siaran, aksesorinya akan dilengkapi dengan kunci enkripsi siaran melalui sesi aman oleh perangkat iOS, iPadOS, dan macOS yang dipasangkan. Kunci ini digunakan untuk mengenkripsi data mengenai perubahan status aksesori, yang diberi tahu menggunakan pengiklanan BLE. Kunci enkripsi siaran merupakan kunci turunan HKDF-SHA512, dan datanya dienkripsi menggunakan algoritme AEAD ChaCha20-Poly1305. Kunci enkripsi siaran diubah secara berkala oleh perangkat iOS, iPadOS, dan macOS dan diperbarui ke perangkat lainnya yang menggunakan iCloud sebagaimana dijelaskan di Keamanan data HomeKit.
HomeKit dan Siri
Siri dapat digunakan untuk meminta dan mengontrol aksesori, dan untuk mengaktifkan tampilan. Informasi minimal mengenai konfigurasi rumah diberikan secara anonim ke Siri, untuk menyediakan nama ruangan, aksesori, dan skenario yang penting bagi pengenalan perintah. Audio yang dikirimkan oleh Siri dapat menyebutkan aksesori atau perintah tertentu, tapi data Siri tersebut tidak dikaitkan dengan fitur Apple lainnya seperti HomeKit.
Aksesori HomeKit berkemampuan Siri
Pengguna dapat mengaktifkan fitur baru seperti Siri, dan fitur HomePod lainnya seperti timer, alarm, interkom, dan bel pintu, di aksesori berkemampuan Siri menggunakan app Rumah. Saat fitur ini diaktifkan, aksesori berkoordinasi dengan HomePod yang dipasangkan di jaringan lokal yang menjadi host fitur Apple ini. Audio bertukar antarperangkat melalui saluran yang dienkripsi menggunakan protokol HomeKit dan AirPlay.
Saat Dengarkan Hey Siri dinyalakan, aksesori mendengarkan frasa “Hey Siri” menggunakan mesin deteksi yang dipicu frasa yang dijalankan di perangkat. Jika frasa terdeteksi, mesin ini mengirimkan bingkai audio secara langsung ke HomePod yang dipasangkan menggunakan HomeKit. HomePod melakukan pemeriksaan audio kedua dan dapat membatalkan sesi audio jika frasa tidak tampak berisi frasa pemicu.
Saat Sentuh untuk Siri dinyalakan, pengguna dapat menekan tombol terdedikasi di aksesori untuk memulai percakapan dengan Siri. Bingkai audio dikirim secara langsung ke HomePod yang dipasangkan.
Setelah pengaktifan Siri yang berhasil terdeteksi, HomePod mengirimkan audio ke server Siri dan memenuhi tujuan pengguna menggunakan keamanan, privasi, dan perlindungan enkripsi yang HomePod terapkan ke pengaktifan pengguna yang dilakukan oleh HomePod. Jika Siri memiliki balasan audio, respons Siri dikirim melalui saluran audio AirPlay ke aksesori. Beberapa permintaan Siri memerlukan informasi tambahan dari pengguna (misalnya, bertanya apakah pengguna ingin mendengarkan pilihan lainnya). Dalam kasus tersebut, aksesori menerima indikasi bahwa pengguna harus diminta, dan audio tambahan di-stream ke HomePod.
Aksesori diperlukan untuk memiliki indikator visual untuk memberi tahu pengguna saat mendengarkan secara aktif (misalnya, indikator LED). Aksesori tidak mengetahui tujuan permintaan Siri, kecuali untuk akses ke stream audio, dan tidak ada data pengguna yang disimpan di aksesori.