Bluetooth Düşük Enerji (BDE) Cihazı
BDE cihazları için Google Hızlı Eşleme Hizmeti (GFPS) uygulaması: Bluetooth Core Specification v4.2 veya sonraki sürümlerle uyumlu.
Hızlı Eşleme spesifikasyonuna yapılan aşağıdaki ek, yalnızca Düşük Enerjili (LE) ve GFPS'deki Düşük Enerjili Ses (LEA) cihazları için geçerlidir.
Uygunluk Düzeyleri
Spesifikasyonda bahsedilen "yapılacak", "mutlaka", "yapılacak", "gerekir", "yapabilir" ve "yapılabilir" anahtar kelimeleri aşağıda açıklanmıştır:
Terim | Açıklama |
---|---|
CANNOT TRANSLATE | gerekir: Gereksinimleri tanımlamak için kullanılır. |
zorunluluk | Şu ifadeleri ifade etmek için kullanılır: Önceden beyan edilmiş zorunlu şartın doğal bir sonucu VEYA itiraz edilemez bir gerçeği (koşullar ne olursa olsun her zaman doğru olan bir beyan) ifade etmek için kullanılır. |
şunu içerecek: | şudur: Yalnızca gerçeği beyan etmek için kullanılır. |
gerekmeli | önerilir - birkaç olasılık arasından bir tanesinin özellikle uygun olarak önerildiğini belirtmek için kullanılır, ancak zorunlu değildir. |
mayıs | şuna izin verilir: Seçeneklere izin vermek için kullanılır. |
can | is have to - İfadeyi nedensel bir şekilde ilişkilendirmek için kullanılır. |
Anahtara Dayalı Eşleme Özelliği
Arayanın Sağlayıcıya Gönderdiği Mesaj
Anahtar Tabanlı Eşleme özelliğinin Ham İstek type 0x00
değeri, Bit 4'ü kullanır
arayanın BDE Cihaz Spesifikasyonu'nu destekleyip desteklemediğini ve
Arayan'ın LE Audio'yu destekleyip desteklemediğini belirtmek için bit 5.
Sekiz | Veri türü | Açıklama | Değer | Zorunlu mu? |
---|---|---|---|---|
0 | uint8 |
Mesaj türü | 0x00 = Anahtara Dayalı Eşleme İsteği |
Zorunlu |
1 | uint8 |
İşaretler
|
değişiklik gösterir | Zorunlu |
2 - 7 | uint48 |
Şu ikisinden birini yapın:
|
değişiklik gösterir | Zorunlu |
8 - 13 | uint48 |
Arayanın BR/EDR Adresi | değişiklik gösterir | Yalnızca İşaretler Bit 1 veya 3 ayarlanmışsa gösterilir |
n - 15 | Rastgele değer (salt) | değişiklik gösterir | Zorunlu |
Sağlayıcıdan Arayana Mesaj
İsteğin Bit 4'ü ayarlandığında, yeni yanıt mesajı type 0x02
Anahtara dayalı eşleme özelliği, ek bağlama sağlamak için kullanılabilir
seçenekleri sunar.
Sekiz | Veri türü | Açıklama | Değer |
---|---|---|---|
0 | uint8 |
Mesaj türü | 0x02 = Anahtara Dayalı Eşleme için Genişletilmiş Yanıt |
1 | uint8 |
İşaretler
|
değişiklik gösterir |
2 | uint8 |
Sağlayıcının adreslerinin sayısı (sayı >= 3 ise blok şifreleme modunu AES-TO olarak değiştirmemiz gerektiğinden, mevcut sürümde sayı 1 veya 2'dir.) |
değişiklik gösterir |
3 - 8 veya 3 - 14 |
|
değişiklik gösterir | |
9 - 15 veya 15 | Rastgele değer (salt) | değişiklik gösterir |
BDE Cihaz Spesifikasyonu'nu destekleyen bir Sağlayıcı Bit 4 ve Bit 5'i okumalıdır yeteneklerini anlamanızı sağlayacak
- Bit 4 0 olduğunda, Sağlayıcı Bit 5'i yoksayar ve
type 0x01
biçimiyle yanıt verir. - Bit 4 1 olduğunda,
- Yalnızca LE Sağlayıcısı için, LE'yi belirtmek üzere
type 0x02
bağ tercihi. - Çift mod Sağlayıcısı için şunlardan birini belirtmek üzere
type 0x02
ile yanıt verebilir: BR/EDR veya LE bağ tercihi.
- Yalnızca LE Sağlayıcısı için, LE'yi belirtmek üzere
- LE Audio (LEA) çift mod sağlayıcı destek kayıtları için bkz. Örnek: Referans için LEA çift mod sağlayıcı ile eşleme
İleti Akışı PSM (Protokol Hizmeti Multiplexor) Özelliği
Hızlı Eşleme, BDE cihazlarda Mesaj akışını desteklemek amacıyla Mesaj göndermek ve almak için bir BLE L2CAP kanalı olmalıdır. Hızlı Eşleme L2CAP sunucusu LE kredisine dayalı akış kontrolü uygulayacaktır.
Bu özellik, Arayanın PSM değerini okumasını ve daha sonra PSM değerine göre güvenli L2CAP bağlantısı.
Hızlı Eşleme Hizmeti özelliği | Şifrelenmiş | İzinler | UUID |
---|---|---|---|
Mesaj Akışı PSM'si | Evet | Okuma | FE2C1239-8366-4814-8EB0-01DE32100BEA |
Sekiz | Veri türü | Açıklama | Değer |
---|---|---|---|
0 | uint8 |
Durum
|
değişiklik gösterir |
1 - 2 | uint16 |
PSM değeri, 0x80 ile 0xFF arasında olmalıdır | değişiklik gösterir |
Not: TWS için iki boyut vardır:
bileşenler: birincil ve ikincil. Bu bileşenlerin rolü
ve belirli koşullarda birbiriyle değiştirilebilir. A'nın birincil bileşen, B'nin ise
ikincil bileşen, A bileşeninde pilin hızlı tükenmesi nedeniyle , bileşen B'nin ihtiyacı
birincil bileşen rolünü üstlenmesi gerekir. Bu senaryonun adı role switch
şeklindedir.
role switch
tarihinden sonra, sağlayıcı
Hızlı Eşleme mesaj akışını işleyemediğinde,
mevcut L2CAP bağlantısı. Hızlı Eşleme arayan, daha sonra L2CAP'yi yeniden kurabilir
yeni birincil bileşenle olan mesaj akışı bağlantısını sağlar.
Ek Geçiş Anahtarı Özellikleri
Bu özellik, ek bileşenlerine ayıralım.
CSIS Sahte Üye MITM Koruması
Hızlı Eşleme için eşleme prosedürü kapsamında MITM koruması gerekir. CSIS olarak MITM koruması sağlamaz, birden fazla ek girişlerde MITM koruması sağlamak için bileşenlerin genişletilmesi bileşenlerine ayıralım.
Karakteristik Tanım
Hızlı Eşleme Hizmet Özelliği | Şifrelenmiş | İzin | UUID |
---|---|---|---|
Ek Geçiş Anahtarı | Evet | Oku,yaz,bildirim gönder | FE2C123A-8366-4814-8EB0-01DE32100BEA |
Mesajlar
Mesaj biçimi; okuma, yazma ve bilgilendirme işlemlerine uygulanır.
Şifrelenmiş Veri Biçimi
Şifrelenmiş veriler, Hızlı Eşleme GATT bağlantısı kullanılarak gönderilir.
Sekiz | Veri türü | Açıklama | Değer |
---|---|---|---|
0-15 | uint128 | Şifrelenmiş ek geçiş anahtarı engellemesi | değişiklik gösterir |
Ham Veri Biçimi
Paylaşılan gizli anahtar kullanılarak şifrelenmiş verilerin şifresi çözüldükten sonra biçim aşağıdaki gibidir
Sekiz | Veri türü | Açıklama | Değer |
---|---|---|---|
0 | uint8 | Mesaj türü | şunlardan biri:
|
1-3 | uint24 | 6 basamaklı geçiş anahtarı | değişiklik gösterir |
4-9 | uint48 | Hedef bağlama bileşeni adresi | değişiklik gösterir |
10 | uint8 | Durum kodu, bu yalnızca okuma işlemi tarafından kullanılır | Şunlardan biri:
|
11-15 | Rastgele değer (salt) | değişiklik gösterir |
Birincil (ilk bağlı bileşen) Hızlı Eşleme arasındaki köprüdür Arayan ve ek bağlama bileşenleri. Bu özellik, izleyin:
- Hızlı Eşleme Arayan'dan yazma isteği alındığında, Sağlayıcı,
- Bağlanılan bileşenin adresini ayarlayın
- Geçiş anahtarını bağlı bileşene gönderin
- Durum kodunu Beklemede, 0x01 olarak ayarlayın
- Bileşenden geçiş anahtarı almadan önce herhangi bir okuma isteği alındığında
bir bağlantı söz konusuysa Sağlayıcı,
- Geçiş anahtarı, herhangi bir değer
- Bağlanılan bileşenin adresi
- Beklemede durum kodu, 0x01
- Sağlayıcı, Hızlı Eşleme Arayan'a bildirim göndermeden önce sonucu ayarlar
okuma isteği için
- Bağlanılan bileşenden geçiş anahtarı
- Bağlanılan bileşenin adresi
- Başarılı durum kodu, 0x00
- Sağlayıcı tarafında düzeltilemeyen bir hata varsa sonucu ayarlayın
- Geçiş anahtarı, herhangi bir değer
- Bağlanılan bileşenin adresi
- Hata durum kodu, 0x02
Bkz. MITM diyagramı 1 ve Daha ayrıntılı bilgi için MITM şema 2'yi inceleyin.
LE Cihaz Gereksinimleri
LE Advertising
Bulunabilir mod veya bulunabilir olmayan mod için Sağlayıcı, RPA'yı şu amaçlarla kullanacaktır: buna örnek olarak verilebilir.
Bağ Oluşturma Yeteneği
LE özellikli cihazlarda, arayan kişinin mevcut cihaz ile bağ kurması gerekir. LE bağlantısı. Hızlı Eşleme Anahtara Dayalı Eşleme doğrulamasını geçtikten sonra Sağlayıcı, RPA ile bağ kurmaya izin vermeli ve KS özelliğini DisplayYesNo olarak ayarlamalıdır doğrulama adımına geçin.
LEA Cihaz Gereksinimleri
LEA Reklamcılığı
Çift modlu cihazlar için: Bulunabilir mod için Sağlayıcı, Kimlik ile Hızlı Eşleme verilerinin reklamını yapacaktır girin. Bulunabilir olmayan mod için İçerik Sağlayıcı, RPA ile Hızlı Eşleme verilerini tanıtacaktır. Eski reklamları desteklemek için eski reklamı (BT 4.2) kullanmanız önemle tavsiye edilir. geri uyumluluk için özel olarak tasarlanmış yeni cihazlar kullanın. Cihaz fabrika ayarlarına her sıfırlandığında IRK'nın değiştirilmesi gerekir.
Çift mod olmayan cihazlar için: Bulunabilir mod veya bulunabilir olmayan mod için Sağlayıcı, (BT 5.0) ile RPA üzerinden reklam yayınlama (hızlı eşleme verilerinin reklamını yapma)
FP hizmet verilerini içeren LE bağlanabilir reklamı, Politikalara uygun olarak CAS UUID Bluetooth Adaptör Profili (BAP 1.0.1) ve Ortak Ses Profili gerekir. Yeterli alan yoksa bulunabilir olmayan reklamlar için eski reklamda pil ve SASS verilerinin eklenmesi nedeniyle, böyle bir durumda tarama yanıtına CAS UUID'sinin eklenmesi zorunludur.
LEA Bağ Oluşturma Yeteneği
Arayan, mevcut LE bağlantısıyla bağ oluşturmalıdır. Geçtikten sonra Anahtara dayalı Hızlı Eşleme ile eşleştirme doğrulaması; ikili mod sağlayıcı, ve RPA ile bağlanmayı mümkün kılarken, çift olmayan modda Sağlayıcı'nın RPA ile bağ kurma ve Hızlı Eşleme için KS özelliğini DisplayYesNo olarak ayarlama Geçiş anahtarı doğrulaması.
Bileşenler arasındaki dahili iletişim kanalı
Mevcut GATT bağlantısı, ek bileşenler. Birincil bağlı bileşen, mesajı arasındaki teslimatları tanımlamayı öğreteceğim.
Initial Pair
ve Subsequent Pair
için dahili iletişim kullanılır
- Anahtara dayalı eşleme prosedürü, birincil bileşenden geçtiğinde bileşeninin KS özelliğini değiştirmek için bir mesaj göndereceği bileşenler
- Hızlı Eşleme tamamlandığında birincil bileşen, cihazın sıfırlanması için Kalan bileşenlerinin KS özelliği
- Ek geçiş anahtarı prosedürü çalıştırılırken birincil bileşen, Hızlı Eşleme Arayan ile kalan bileşenleri arasındaki geçiş anahtarı teslimatları
KS özelliğini değiştirme zamanı
- Anahtar Tabanlı Eşleme yordamı başarılı olduğunda KS özelliğini DisplayYesNo olarak değiştir
- Cihazın birden fazla bileşeni varsa tüm bileşenler otomatik olarak DisplayYesNo
- Sağlayıcının,
IO özelliğini DisplayYesNo olarak değiştirmemek,
Retroactive Pair
bitidir; Bit 3'tür Anahtar Tabanlı Eşleme İsteği 1 olarak ayarlandığında 1, bkz. Arayan'ın Sağlayıcıya İletisi
- G/Ç özelliğini varsayılan ayara değiştir
- İlk eşleme
- LE bağlantısı kesildiyse Hızlı Eşleme oturumunu sonlandırın
- Birincil kart bağlandıktan sonra, başka geçiş anahtarı yoksa 15 saniye içinde isteği gönder, Hızlı Eşleme oturumunu sonlandır
- Ek geçiş anahtarı yazma isteği alındıktan sonra, bileşen 15 saniye içinde bağlanmadıysa Hızlı Eşleme oturumunu sonlandırın.
- Tüm bileşenler bağlandıktan sonra, hesap anahtarı yazma işlemi yoksa isteğini 15 saniye içinde yapmak için Hızlı Eşleme oturumunu sonlandırın
- Hesap anahtarı yazma isteği alındıktan sonra, zaman aşımını 15 saniye olarak ayarlayın: Hızlı Eşleme oturumunu sonlandır
- Sonraki eşleme
- LE bağlantısı kesildiyse Hızlı Eşleme oturumunu sonlandırın
- Birincil kart bağlandıktan sonra, başka geçiş anahtarı yoksa isteğini 15 saniye içinde yapmak için Hızlı Eşleme oturumunu sonlandırın
- Ek geçiş anahtarı yazma isteği alındıktan sonra, bileşen 15 saniye içinde bağlanmadıysa Hızlı Eşleme oturumunu sonlandırın.
- Tüm bileşenler bağlandığında Hızlı Eşleme oturumunu sonlandırın
- İlk eşleme
Kullanıcı Arayüzü Göstergesini Gizle
Mikrofonlu kulaklık eşleme için hazır olmadığında Sağlayıcı, type 0b0010
cihazını kullanır.
Arayan'a göstermemesini bildirmek için Hesap Anahtar Verileri'nin kullanıcı arayüzü göstergesini gizleyin
(Reklam yükü: Hızlı Eşleme Hesap Verileri bölümünü inceleyin).
LE Audio Cihaz Gereksinimleri
Bluetooth Gereksinimleri
Android, LE Audio mikrofonlu kulaklık önerilerine bakın.
CTKD Desteği
Çift modlu cihazlar için LE'den BR/EDR'ye CTKD uygulanması zorunludur ve BAP gereksinimleri.
Hedef Duyuru
Bir çevre birimi cihazı, bağlantı istemek için Hedefli Duyuruyu kullanmalıdır eşlenmiş bir merkezi cihazdan Hedeflenen Duyurular, BAP ve CAP'de tanımlanır CAP 1.0 Tablo 8.4'e (s. 48/58) göre ayarlar.
GATT EATT Sunucu Desteği
EATT, merkezi cihazın paralel olarak birden çok GATT işlemi göndermesine olanak tanır. veya bağlı olduğunda kullanın. CSIP'yi destekleyen cihazlarda ise profil bağlantısının performansını iyileştirir ve kısa süre içinde CSIP ile bağlanmaya başlar başka bir yöntem de var.
GATT Güçlü Önbelleğe Alma (Kesinlikle Önerilir)
Sağlayıcı tek bir cihaz değilse ancak CSIP uygulaması ile koordine edilmiş bir grupsa ve bağlantıyı hızlandırıyorsa, Sağlayıcı, Bluetooth 5.1'de tanımlanan GATT önbelleğe alma işlemini uygulayın.
Hızlı Eşleme Gereksinimleri
LE Advertising
Cihazda birden fazla varlık varsa bulunabilir veya bulunabilir olmayan mod için bileşenleri varsa Hızlı Eşleme verilerinin reklamı birincil bileşen tarafından yapılmalıdır. Öğe sonraki eşleme için hazır değilse ikincil bileşen Genişletilmiş özellikler için Hızlı Eşleme verilerinin reklamını yapan. bkz. Kullanıcı Arayüzü Göstergesini Gizle
GATT Hizmet Görünürlüğü
GATT veritabanı, tüm LE taşıma GATT bağlantıları için aynı olacaktır. LE Audio hizmetinin (0x184E), Hızlı Eşleme bağlantısının GATT veritabanına dahil edilmesi gerekir.
Örnek: LEA çift mod sağlayıcı ile eşleme
1. Senaryo - Arayan kişi LEA'yı desteklemediğinde
Sağlayıcı, LEA'yı destekleyin.
Bileşenler
- Sağlayıcı: A2DP/HFP/LEA
- Arayan: A2DP/HFP
İlk Çift / Sonraki Çift İçin Beklenen Davranış
- Sağlayıcı, Hızlı Eşleme hizmetinin reklamını yapar
Kimlik adresi (ilk) veya RPA (sonraki) içeren verileri (0xFE2C).
- Eski reklamları kullan
- Arayan, Sağlayıcı'nın ilk eşleme için Kimlik adresi veya sonraki eşleme için RPA içeren reklam
- Arayan, Anahtar Tabanlı Eşleme isteği gönderir
- Anahtar Tabanlı Eşleme isteğinin 5. işareti biti 0 olarak ayarlanır
- Sağlayıcı,
şu:
- 0x01 mesaj türü kullanılırsa adres herkese açık adres olmalıdır
- 0x02 mesaj türü kullanılıyorsa
- Bit-0, 0 olur
- Bit-1, 0 olacaktır
- Adres, herkese açık adres olmalıdır
- The Seeker, BR/EDR ulaşımıyla bağ kuruyor
- KS özelliği BR/EDR için DisplayYesNo olarak ayarlandı
- Arayan ve sağlayıcı, Hızlı Eşleme geçiş anahtarı doğrulama prosedürünü uygular
2. Senaryo - Arayan kişi LEA'yı desteklediğinde
Bileşenler
- Sağlayıcı
- A2DP/HFP/LEA desteği
- Tek bileşenli
- Arayan
- DestekA2DP/HFP/LEA
İlk Çift / Sonraki Çift İçin Beklenen Davranış
- Sağlayıcı, Hızlı Eşleme hizmetinin reklamını yapar
Kimlik adresi (ilk) veya RPA (sonraki) içeren verileri (0xFE2C).
- Eski reklamları kullan
- Arayan, Anahtar Tabanlı Eşleme isteği gönderir
- Anahtar Tabanlı Eşleme isteğinin 5. işareti biti 1 olarak ayarlanmıştır
- Sağlayıcı, 0x02 mesaj türüyle Anahtar Tabanlı Eşleme yanıtı gönderir
- Bit-0, 0 olur
- Bit-1, 1 olacaktır
- Adres, Identity adresidir
- Arayış, mevcut markalarla bağ kurar
LE toplu taşımada LE bağlantısı
- CTKD yönü LE ile BR/EDR arasında
- IO özelliği LE için DisplayYesNo olarak ayarlandı
- Arayan ve sağlayıcı, Hızlı Eşleme geçiş anahtarı doğrulama prosedürünü uygular
3. Senaryo: Arayan kişi LEA ve CSIP'yi desteklediğinde
Bileşenler
- Sağlayıcı
- A2DP/HFP/LEA desteği
- Birden fazla bileşen
- Birincil bileşen BR/EDR/LE'dir
- İkincil bileşen yalnızca LE'dir
- Arayan
- A2DP/HFP/LEA desteği
İlk Çift / Sonraki Çift İçin Beklenen Davranış
- Birincil bileşen, Hızlı Eşleme'yi tanıtır.
Kimlik adresi (başlangıç) veya RPA (sonraki) ile hizmet verileri (0xFE2C).
- Eski reklamları kullan
- Arayan, Anahtar Tabanlı Eşleme isteğini birincil bileşene gönderir.
- Anahtar Tabanlı Eşleme isteğinin 5. işareti biti 1 olarak ayarlanmıştır
- Birincil bileşen, 0x02 mesaj türüyle Anahtar Tabanlı Eşleme yanıtı gönderir
- Bit-0, 0 olur
- Bit-1, 1 olacaktır
- Adres aşağıdaki gibidir :
- İlk adres, birincil bileşenin kimlik adresidir
- İkinci adres, ikincil bileşen için bağlanabilir adrestir. ikinci bileşen de CSIP reklamını yapmak için bu adresi kullanır
- Arayan, birincil müşteriyle bağ kurar
bileşenine sahip olan
- CTKD yönü LE ile BR/EDR arasında
- IO özelliği LE için DisplayYesNo olarak ayarlandı
- Arayış, ikinci el ile bağ kurar
adresi Anahtar Tabanlı Eşleme Genişletilmiş Yanıtından gelen bileşen
- IO özelliği DisplayYesNo olmalıdır, aksi takdirde eşleştirme isteğini reddedin
- Arayan ve Sağlayıcı, ikincil bileşen olarak, Sağlayıcı her iki senaryoda da
- Arayan, ikincil bileşene bağlanana kadar bekler
MITM için Sıralı Diyagram
Bu oturumda, MITM koruma prosedürünün sırası açıklanmaktadır.
Bildirimle bağlanan bileşenden geçiş anahtarı al
Okuma üzerinden bağlanan bileşenden geçiş anahtarı al
Bilinen Sorun
LEA için FP, Android V ile çalışacak şekilde optimize edildi.
Buna karşılık LEA'yı destekleyen kulaklıklarda çok sayıda sorunla karşılaştık. ancak LEA üzerinden doğru Hızlı Eşleme uygulaması (ör. yalnızca Klasik) seçin. Örneğin, sağlayıcının RPA'sı oluşturulmadığında tarafından düzeltilirse adres çözümlenemez. Her ne kadar mikrofonlu kulaklıkların kapsamlı bir listesini yapılandırmalarına göre, sınırlı testlerimiz sonucunda kulaklık pil bildirimlerini görüntüleme, Ses Değiştirme (SASS) özelliğinin olmaması işlevsellik, geniş çaplı ilk ve sonraki eşleme hataları vb.
Bu nedenle, iş ortaklarımızın Hızlı Eşleme LEA'sını uygulamalarını önemle tavsiye ediyoruz. hem yeni cihazlar hem de alandaki mevcut cihazlar için spesifikasyon kablosuz güncellemeler aracılığıyla)