Keamanan komunikasi HomeKit
HomeKit menyediakan infrastruktur automasi rumah yang menggunakan keamanan iCloud dan fitur keamanan perangkat 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 pengguna, yang menjadi identitas HomeKit mereka. Pasangan kunci digunakan sebagai bagian dari Protokol Aksesori HomeKit (HAP) untuk mengesahkan komunikasi langsung antara perangkat Apple pengguna dan aksesori HomeKit mereka.
Untuk rumah yang memiliki hub rumah, anggota rumah bersama dapat mengirimkan perintah ke aksesori melalui hub rumah ini. Perintah ini dikirimkan, dienkripsi ujung ke ujung, dan disahkan dari perangkat pengguna ke hub rumah menggunakan Layanan Identitas Apple (IDS), tempat mereka diteruskan ke aksesori relevan menggunakan Protokol Aksesori HomeKit (HAP) atau Matter, standar konektivitas rumah pintar.
Kunci—yang disimpan di rantai kunci dan disertakan hanya di cadangan rantai kunci yang dienkripsi—terus diperbarui antarperangkat menggunakan Rantai Kunci iCloud.
Komunikasi antara aksesori HomeKit
Aksesori HomeKit membuat pasangan kunci Ed25519-nya sendiri untuk digunakan saat berkomunikasi dengan perangkat Apple. Jika aksesori dipulihkan ke pengaturan pabrik, pasangan kunci baru akan dibuat.
Untuk membangun hubungan antara perangkat Apple dan aksesori HomeKit, kunci ditukar menggunakan protokol Kata Sandi Jarak Jauh Aman (3072 bit) dengan kode delapan digit yang disediakan oleh produsen aksesori, dimasukkan di perangkat 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 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 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 dan diperbarui secara berkala di perangkat lainnya yang menggunakan iCloud sebagaimana dijelaskan di Keamanan data HomeKit.
Komunikasi dengan aksesori Matter
Identitas dan keamanan dengan aksesori Matter didasarkan pada sertifikat. Untuk rumah Apple, akar kepercayaan Otoritas Kepercayaan (CA) dibuat di perangkat pengguna awal (“pemilik”), dan kunci pribadi untuk CA disimpan di Rantai Kunci iCloud mereka. Setiap perangkat Apple di rumah membuat Permintaan Penandatanganan Sertifikat (CSR) yang menggunakan NIST P256. CSR ini dicerna oleh perangkat pemilik, yang membuat sertifikat identitas Matter untuk perangkat menggunakan kunci pribadi CA mereka. Sertifikat kemudian digunakan untuk mengesahkan komunikasi antara perangkat pengguna dan aksesorinya.
Aksesori Matter membuat pasangan kunci NIST P256 dan CSR-nya sendiri dan menerima sertifikat dari CA selama pemasangan aksesori. Sebelum pasangan kunci dibuat, aksesori Matter dan perangkat pemilik rumah bertukar kunci—menggunakan protokol SPAKE2+ dengan PIN yang disediakan oleh produsen aksesori—dan proses Pengesahan Perangkat dijalankan. CSR dan sertifikat kemudian ditukar melalui saluran ini yang dienkripsi menggunakan AES-CCM dengan kunci turunan HKDF-SHA256. Jika aksesori disimpan ke pengaturan pabrik, pasangan kunci baru dan CSR dibuat dan sertifikat baru diterbitkan untuk aksesori selama pemasangan.
Saat perangkat Apple dan aksesori Matter berkomunikasi selama penggunaan, masing-masing mengesahkan satu sama lain menggunakan sertifikatnya sendiri. Setiap sesi dibuat menggunakan protokol tiga fase (sigma) dan dienkripsi dengan kunci turunan HKDF-SHA256 berdasarkan kunci P256 per sesi.
Untuk informasi lainnya mengenai bagaimana perangkat Apple dengan aman berinteraksi dengan aksesori Matter, lihat Dukungan Matter di iOS 16 di situs web Pengembang Apple.
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.