Bagikan melalui


Pra-pemasangan LE Bluetooth

Windows 10 mendukung periferal Bluetooth LE secara otomatis dipasangkan ke satu PC, setelah semua perangkat disediakan dan diaktifkan selama proses manufaktur. Pengguna tidak perlu menjaga perangkat LE tetap dipasangkan dan terhubung setelah PC host dan perangkat yang dibundel disediakan untuk pertama kalinya. Periferal ini masih dapat digunakan sebagai perangkat Bluetooth reguler, dan mempertahankan fungsionalitas penuh ketika di luar jangkauan PC host. Namun, jika periferal tidak berpasangan dan dalam rentang PC host, periferal tersebut akan secara otomatis memasangkan ulang dan menyambungkan.

Ketika periferal LE yang mendukung fitur ini disediakan daya untuk pertama kalinya, periferal tersebut mengirimkan data eksklusif yang ditentukan Microsoft dalam iklan yang dapat dihubungkan yang tidak diarahkan. Iklan itu kemudian diambil oleh PC host. Jika perangkat dalam rentang dan iklannya cocok dengan pola yang telah disediakan sebelumnya di PC host selama manufaktur, maka perangkat dipasangkan. Ini melalui Pemasangan Out-Of-Band yang menggunakan kunci OOB rahasia terpisah yang juga telah disediakan sebelumnya. Jarak dari PC host tempat periferal dapat dipasangkan ditentukan oleh nilai RSSI minimum lain yang telah disediakan sebelumnya, yang diwakili dalam dB, sehingga rentang dapat bervariasi. Semua data yang telah disediakan sebelumnya harus disimpan di UEFI untuk mempertahankan fungsionalitas ini pada penginstalan bersih dan pemulihan sistem.

Ketika perangkat yang dibundel tidak dipasang dalam rentang yang ditentukan oleh nilai RSSI, perangkat Bluetooth secara otomatis memasangkan ulang ke Windows. Pengguna harus meninggalkan rentang PC host, untuk dapat memasangkan perangkat mereka ke PC berkemampuan Bluetooth lainnya.

OEM harus menentukan sendiri cara memproduksi perangkat ini. Mereka juga harus menjamin keamanan dan bahwa mereka semua akan berada dalam kotak yang sama ketika dikirim ke pelanggan.

Persyaratan fitur

PC

Peripheral

  • Bluetooth LE
  • Simpan untuk ID Perangkat (di-hash dari Alamat Bluetooth) & nilai TK
  • Iklan Kustom (didefinisikan di bawah)

Pre-pairing flow

UEFI pada PC host

Fitur ini tergantung pada penyimpanan informasi untuk membantu proses pemasangan di UEFI. Fitur ini memungkinkan fungsionalitas ini bertahan pada pemulihan sistem dan instalasi bersih. Setelah variabel UEFI didefinisikan, variabel harus dikunci agar baca-saja.

Untuk setiap perangkat yang mendukung pemasangan otomatis, PC host harus memprogram informasi OOB berikut ke dalam NVRAM-nya:

  • Ambang RSSI: Menentukan ambang jarak dalam dB ketika periferal "di luar rentang PC host"
    • Atur sebagai kekuatan sinyal minimum sebelum pemasangan berlangsung
    • OEM harus menentukan ambang yang sesuai
  • DeviceID: mengidentifikasi perangkat pendukung secara unik dan panjangnya harus 8 byte untuk menghindari konflik perangkat.
    • Harus unik seperti Alamat Mac Bluetooth
    • Tidak terkait dengan profil ID Perangkat. Hanya digunakan untuk mewakili periferal unik.
    • Kunci OOB: Nilai 16 byte SMP TK dibagikan antara PC host dan perangkat BTH LE.

      Catatan

      Jika ID perangkat tidak unik per perangkat, atau setidaknya per bundel, akan ada konflik jika beberapa perangkat berada dalam rentang satu sama lain. Pasangan periferal dengan PC yang tidak terduga.

Representasi pseudocode info OOB

const unsigned long BTH_LE_DEVICE_ID_SIZE = 8;
#pragma pack(push,1)
typedef struct
{
    CHAR  RssiThreshold;
    UCHAR DeviceId[BTHLE_PREPAIRING_DEVICE_ID_SIZE];
    UCHAR SmpTK[16]; // TK Max Size
} BTHLE_PREPAIRING_ENTRY;
#pragma pack(pop)

Definisi antarmuka NVRAM UEFI Publik

static const LPWSTR BTH_LE_PREPAIRING_NVRAM_VAR_NAME = L"BluetoothPairingInfo";
static const LPWSTR BTH_LE_PREPAIRING_NVRAM_VAR_GUID = L"{3C901928-0243-4778-8ADC-BC2D3C6E6B0E}";
Tipe Bagian [1 Byte] Produsen [2 byte] MsftSectionType [4 byte] Pengidentifikasi Perangkat [8 byte]
0xff (khusus vendor) 0x0006 (MSFT) 0x00000004 (Pra-persiapan) pengidentifikasi perangkat

Masalah keamanan

Selama Manufaktur

Ada potensi serangan Man in The Middle jika data provisi diperoleh. Menjaga keamanan data terserah OEM.

Setelah pelanggan membeli perangkat

Dimungkinkan bagi nilai yang disimpan di UEFI untuk dibaca, dan kemudian di-spoofed pada perangkat lain. Ini dapat memberikan akses ke sistem oleh pengguna berbahaya. Untuk mengurangi hal ini, kami juga telah membuat kebijakan MDM Bluetooth/AllowPrepairing. Kebijakan ini akan memungkinkan penyebaran perusahaan dan pro menonaktifkan fitur ini.