Hedef Kitle: Uyum sorumluları, gömülü yazılım liderleri ve bir alıcıya 4,20 dolarlık bir okuma kaleminin ilk eşleştirme sırasında neden ECDH P-256 anahtar değişimi gerçekleştirdiğini, bunun COPPA, GDPR-K ve PIPL için ne anlama geldiğini ve belirli bir pazar için Just Works, Numeric Comparison, Passkey Entry ve Out-of-Band arasında nasıl seçim yapılacağını açıklamak zorunda olan OEM ürün yöneticileri.
Bir okuma kalemindeki Bluetooth eşleştirme modeli, düşük maliyetli bir tüketici oyuncağı ile ödeme terminali düzeyinde bir güvenlik temelinin aynı silikonu paylaştığı nadir noktalardan biridir. Q6/Q8 firmware 3.3.1 yığınından F8 firmware 3.1.2 yığınına kadar, 2023'ten bu yana yapılan her ODM sevkiyatı (47.000+ ünite, 47 ülke) ilk bağlantıda ECDH P-256 anahtar değişimi gerçekleştirir. Bunu, alternatif olan — Man-in-the-Middle koruması olmayan Legacy Just Works — Bluetooth SIG'nin SSP ile kaldırmak için özellikle tasarladığı başarısızlık modu olduğu ve COPPA, GDPR-K ile PIPL ifadelerini dikkatle okuyan bir alıcının CISO'suna verilebilecek tek güvenilir yanıt olduğu için yapıyoruz.
Bu makale, okuma kaleminde SSP'nin tam olarak ne yaptığını, LE Legacy'nin bunun yerine ne yaptığını, LE Secure Connections'ın SSP'nin üzerine neler eklediğini ve sınıfta 6 yaşındaki bir çocuğun ya da evde 80 yaşındaki bir kişinin sürtünme olmadan eşleştirebilmesi için kullanıcı deneyimini nasıl ayarladığımızı açıklar.
1. Bir Okuma Kalemindeki Üç Eşleştirme Nesli
| Nesil | Spec | Anahtar Değişimi | Kullanıldığı Yer |
|---|---|---|---|
| Legacy | BT 2.0 (SSP öncesi) | E1/E21 (SAFER+) | Sevk edilmedi |
| SSP | BT 2.1 / 4.0 | E1/E21 (4 haneli PIN veya Just Works) | K7/KF1 firmware 1.9.5 |
| LE Secure Connections | BT 4.2 / 5.x | ECDH P-256 | F8, L5, Q6/Q8, T2, Y6 |
Mevcut on bir SKU'nun tümü, varsayılan eşleştirme modu olarak LE Secure Connections ile gönderilir. K7/KF1 firmware 1.9.5, hâlâ BT 4.0 dongle kullanan eski sınıf hub'ları için SSP yedek modunu korur, ancak müşterilerin yedek yolu devre dışı bırakmak için hub'ları MOQ 1.000 adetle 5.0+ dongle'a geçirmesini öneriyoruz.
2. SSP Aslında Ne Yapar
SSP, eski PIN tabanlı anahtar değişimini dört ilişkilendirme modelinden biriyle değiştirir:
| Model | Kullanıcı Eylemi | Güvenlik Düzeyi | Kullanıldığı Yer |
|---|---|---|---|
| Just Works | "Pair"a Dokunun | MITM koruması yok | Yeniden eşleştirme için varsayılan |
| Sayısal Karşılaştırma | 6 haneli numarayı karşılaştırın, Onayla'ya dokunun | Kullanıcı onayı ile MITM | İlk eşleştirme için varsayılan |
| Passkey Girişi | 6 haneli passkey'i girin | Paylaşılan gizli anahtar ile MITM | Sınıf yönetici modu |
| Out-of-Band | NFC dokunuş | OOB kanalı ile MITM | Gelecek NFC modelleri |
Okuma kalemi, ilk eşleştirmede varsayılan olarak Sayısal Karşılaştırma kullanır. Kalem, opsiyonel OLED ekranında 6 haneli bir numara gösterir (veya ekranı olmayan P2 gibi modellerde numarayı sesli olarak okutur). Ana uygulama aynı numarayı gösterir. Kullanıcı eşitliği onaylar. 6 haneli bir kodun 10^6 = 1.000.000 olası değeri vardır; bir MITM'nin doğru tahmin etme olasılığı 10^-6'dır.
Bunun arkasındaki ECDH P-256 anahtar değişimi, TLS 1.3 ECDHE_ECDSA paketlerinde kullanılan aynı ilkeldir. Kalemin radyosu (Nordic nRF52840 veya Realtek RTL8763E), P-256 skaler çarpımını yaklaşık ~7,2 ms'de yapan bir donanım hızlandırıcısına sahiptir.
3. Eşleştirme Durum Makinesi
Okuma kalemi eşleştirme durum makinesi, Bluetooth Core Specification v5.4, Cilt 3, Bölüm H, Madde 2.3.5'e uygundur:
| Durum | Kalem Rolü | Geçiş Tetiği |
|---|---|---|
| Bekleme | Yayıncı | Eş cihaz bağlanır |
| Yayın Yapma | Yayıncı | Eş cihaz CONNECT gönderir |
| Başlatma | Başlatan (nadir) | Kalem ana cihaz tarafında olduğunda kullanılır |
| Bağlantı Kuruldu | Herhangi biri | Eşleştirme İsteği alındı |
| Eşleştirme Özelliği Değişimi | Yanıtlayan | Eşleştirme Yanıtı gönderildi |
| Anahtar Üretimi | Herhangi biri | Onay değeri doğrulandı |
| Anahtar Dağıtımı | Herhangi biri | LTK + IRK + CSRK teslim edildi |
| Eşleşti | Herhangi biri | Yeni bağlantı NV'ye kaydedildi |
Kalem, "Connection Established" durumunda 240 ms geçirir (BLE 5.0 spesifikasyonunun minimum bağlantı aralığı + slave latency), ardından Feature Exchange aşamasına geçer. Tam Numeric Comparison eşleştirme akışı Q6/Q8 firmware 3.3.1 üzerinde 1,4 s, F8 firmware 3.1.2 üzerinde ise 1,8 s içinde tamamlanır. Just Works 0,9 s içinde tamamlanır.
4. Legacy Just Works ve LE Secure Connections Just Works Karşılaştırması
Yaygın bir hata, "Just Works" modunun her zaman zayıf olduğunu varsaymaktır. Bu doğru değildir. Birbirinden çok farklı iki "Just Works" modu vardır:
| Mod | Spesifikasyon | ECDH? | MITM Koruması |
|---|---|---|---|
| Legacy Just Works | BT 4.0/4.1 SSP | Hayır | Yok — dinleyen kişi trafiği yakalayabilir |
| LE Secure Connections Just Works | BT 4.2+ | Evet (P-256) | Dinleyen kişi trafiği çözemez, ancak aktif MITM yine de enjekte edebilir |
"Just Works" ifadesini duyup panikleyen bir alıcı, legacy modu aklına getiriyordur. Güncel bir okuma kaleminde Just Works hâlâ ECDH kullanır; bu nedenle radyo bağlantısı pasif dinleyicilere karşı şifrelenmiştir. Just Works, aktif MITM'ye (saldırganın radyo hattında olup her iki tarafı da kesebildiği durum) karşı koruma sağlamaz; bu yüzden T2/Y6 modellerinde varsayılan ilk eşleştirme yöntemi olarak Numeric Comparison kullanıyoruz.
5. Kalem Taraflı Uygulama
Q6/Q8 firmware 3.3.1 üzerinde SSP yığını, SoftDevice radyo kütüphanesi (Nordic nRF52840 SDK 17.1.0) üzerine inşa edilmiştir. Kalem şunları saklar:
| Öğe | Boyut | Saklandığı Yer | Saklama Süresi |
|---|---|---|---|
| Long Term Key (LTK) | 16 bayt | Flash sayfa 7, eş başına yuva | Eşleşme kaldırılana kadar |
| Identity Resolving Key (IRK) | 16 bayt | Aynı yuva | Eşleşme kaldırılana kadar |
| Connection Signature Resolving Key (CSRK) | 16 bayt | Aynı yuva | Eşleşme kaldırılana kadar |
| Peer IRK | 16 bayt | Aynı yuva | Eşleşme kaldırılana kadar |
| Peer BD_ADDR | 6 bayt | Aynı yuva | Eşleşme kaldırılana kadar |
Kalem en fazla 8 eşleşmiş cihazı destekler (8 yuva sınırı, 32 KB flash bağlantı tablosundan kaynaklanmaktadır; NV yıpranması pahasına 32 yuvaya genişletilebilir). 8. yuva doluyken 9. bir cihaz eşleşmeye çalışırsa kalem en eski yuvanın üzerine yazar. Bu olayı QA telemetri akışına (TC-077) kaydederiz; böylece bir okul BT yöneticisi "kalemin el değiştirme sıklığının fazla olduğunu" tespit edebilir.
6. Gizlilik Özelliği: LE Privacy 1.2
2023'ten itibaren üretilen tüm okuma kalemlerinde LE Privacy 1.2 varsayılan olarak etkindir. Bu, kalemin varsayılan olarak her 15 dakikada bir dönüşen bir Resolvable Private Address (RPA) ile yayın yaptığı anlamına gelir. Eşleştirme sırasında paylaşılan IRK, RPA'yı kalemin gerçek kimliğine geri çözebilen tek bilgidir.
| Gizlilik Ayarı | Adres Döndürme Aralığı | Pil Maliyeti |
|---|---|---|
| Devre dışı (Genel Adres) | Asla | 0 |
| LE Gizlilik 1.2 | 15 dk | günde +%0,4 |
| LE Gizlilik 1.2 (Agresif) | 1 dk | günde +%5,6 |
15 dakikalık varsayılanı gönderiyoruz çünkü agresif döndürmenin %5,6 pil maliyeti 500 mAh'lik bir P2'de önemliyken, 2500 mAh'lik bir T2'de ihmal edilebilir düzeydedir. Tüm gün çalışan okul dağıtımları için T2 varsayılanı 15 dakikalık döndürmedir; P2 varsayılanı ise döndürme devre dışıdır (çünkü tek kullanıcılı ev kalemi olarak satılır).
7. Ekranı Olmayan Bir Kalemde (P2) Sayısal Karşılaştırma
P2'de ne OLED ne de LED matris var; yalnızca tek bir üç renkli LED bulunur. Sayısal Karşılaştırmayı nasıl yapıyoruz?
Yanıt, ses kullanmamızdır. P2'de 1 W'lık bir hoparlör bulunur. Sayısal Karşılaştırma girişinde P2, 6 haneli kodu İngilizce olarak yavaş ve ölçülü bir biçimde ("three… seven… one… zero… four… two") rakam başına 0,6 sn olacak şekilde seslendirir. Toplam ses süresi 3,6 sn'dir. Ana uygulama aynı kodu ekranda gösterir; kullanıcı eşleşmeyi onaylar.
Erişilebilirlik açısından sesli kod, kullanıcının o anda seçili olan dilinde (ör. Mandarin, İspanyolca, Arapça) çalınır. Sesli kodları 12 dilde sunuyoruz. P2 firmware 2.0.3, 4 KB flash bellek kullanan özel bir sesli kod üreteci içerir.
8. OOB Neden Henüz Bir Okuma Kaleminde Değil
2024 modeli için NFC üzerinden Out-of-Band (OOB) eşleştirmeyi değerlendirdik, ancak BOM maliyet artışı kalem başına 1,40 ABD dolarıydı (NFC denetleyicisi + anten + güvenli öğe); bu durum ODM fiyatını 4,20 ABD dolarından 5,60 ABD dolarına çıkararak K7 eğitim kanalı için tipik kar marjı aralığını aşıyordu. NFC denetleyicisinin fiyatı 0,40 ABD dolarının altına düşene kadar OOB çalışmasını askıya aldık. O zamana kadar Sayısal Karşılaştırma + Just Works önerilen yöntemdir.
9. Sınıf Dağıtımı İçin Passkey Modu
12.000 adetlik bir okul programında okul BT yöneticisi, her kaleme dokunmadan tek seferlik sağlama yapmak ister. Passkey Entry modu bu ihtiyacı karşılar:
- Yönetici okul yönetici uygulamasını açar.
- Uygulama 6 haneli bir passkey üretir, örn. 482917.
- Yönetici passkey'i dokunmatik arayüz üzerinden her kaleme girer.
- Kalem, MITM gizli anahtarı olarak bu passkey'i kullanarak okul uygulamasıyla eşleşir.
Bu yöntem, bir öğrencinin telefonu getirip okul uygulamasıymış gibi davranmasını engeller. Passkey her oturum için benzersizdir. 2024 yılında bir Körfez ülkesi bölgesine gönderdiğimiz 12.000 kalemlik dağıtımda, dönüşümlü tek bir passkey ve 4 yönetici tableti kullanarak Passkey Entry yöntemiyle sağlama işlemini 8 günde tamamladık.
10. Uyumluluk Çıkarımları
Kaliforniya'daki bir alıcı, SSP'nin COPPA'nın "makul güvenlik" maddesini karşılayıp karşılamadığını soracaktır. Yanıt evettir; çünkü SSP, FIPS 186-4 onaylı listesinde bulunan ECDH P-256 kullanır. AB'deki bir alıcı, SSP'nin GDPR-K takma adlaştırma gereksinimini karşılayıp karşılamadığını soracaktır. Yanıt evettir; çünkü dönüşümlü RPA takma adlı bir tanımlayıcıdır. Çin'deki bir alıcı, SSP'nin PIPL Madde 51'i (ÇHC takma adlaştırma) karşılayıp karşılamadığını soracaktır. Yanıt aynıdır; ek olarak IRK işlemlerimizin kişisel bilgi de-identifikasyonuna ilişkin GB/T 35273-2020 standardına uygun olduğunu belirtmek gerekir.
| Düzenleme | Gereksinim | SSP Kapsamı |
|---|---|---|
| COPPA (ABD) | Çocuk verileri için makul güvenlik | Evet (ECDH P-256) |
| GDPR-K (AB) | Takma adlaştırma | Evet (RPA döndürme) |
| PIPL (CN) | Takma adlaştırma | Evet (RPA + GB/T 35273) |
| LGPD (BR) | Güvenlik ve takma adlaştırma | Evet |
| PDPA (SG/MY) | Güvenlik ve takma adlaştırma | Evet |
| APPI (JP) | Anonimleştirme | Kısmi — RPA anahtarı işlemine bağlıdır |
| DPDPA (IN) | Güvenlik önlemleri | Evet (FIPS onaylı temel algoritma) |
Okul dağıtımları için ek bir uyumluluk belgesi sunuyoruz: "Bluetooth Eşleştirme Güvenliği Beyaz Kağıdı", 38 sayfa, son revizyon 2026-04. Nitelikli ODM müşterilerine NDA kapsamında sunulur.
11. Tehdit Modeli ve SSP'nin Kapsamadıkları
| Tehdit | SSP Tarafından Karşılanıyor mu? | Azaltma |
|---|---|---|
| Pasif dinleme | Evet | LTK ile AES-CCM bağlantı şifreleme |
| Active MITM (Just Works) | Hayır | Sayısal Karşılaştırma veya Passkey kullanın |
| Ele geçirilmiş eş cihaz | Hayır | Uygulama katmanı kimlik doğrulaması gerekli |
| Çalınmış kalem | Kısmi | Eşleştirilmiş ana cihazlar temizlenebilir; kalem, 10 saniyelik düğme basılı tutma ile fabrika ayarlarına döndürülebilir |
| Eşleştirmede tekrar saldırısı | Evet | ECDH, her eşleştirme için yeni oturum anahtarları üretir |
| Kullanıcıyı kandırma (phishing) | Hayır | Kullanıcıları kodları karşılaştırmaları için eğitin |
| RF parmak izi çıkarma | Hayır | Tüketici oyuncağı için kabul edilebilir risk |
Bu durumları kullanım kılavuzunda ve distribütörler için marka tarafı eğitim sunumunda açıkça belgeliyoruz.
12. Performans ve Pil
ECDH P-256 anahtar değişimi nRF52840 üzerinde 7,2 ms ve RTL8763E üzerinde 8,4 ms sürer. Sayısal karşılaştırma gösterim süresi 30 saniyelik LED aktivitesidir ve ~3 mA akım çeker. Flash belleğe eşleştirme yazma işlemi 12 ms sürer ve bir NV döngüsü yıpratır. Bir kalemin kullanım ömrü boyunca (5 yıl boyunca yılda 300 eşleştirme = 1.500 eşleştirme), bu, flash dayanıklılık bütçesinin (10.000 döngü) %0,0004'üne denk gelir.
13. Bunun Diğer Makalelerle Bağlantısı
TC-059 bağlantı kümesinde yer alır. TC-057/TC-058 HID katmanını tanımlar. TC-060, eşleştirmeden sonra gelen GATT servislerini belgeler. TC-061, eşleştirme etkin olduktan sonraki bildirim akışını açıklar. TC-062, L5 ve Y6 için BLE ile birlikte çalışan Wi-Fi AP yapılandırma yolunu kapsar. TC-063, Wi-Fi bağlantısı sağlandıktan sonra kalemin LAN üzerinde kendini nasıl duyurduğunu açıklar. TC-064, LAN bağlantısı üzerinde çalışan CoAP protokolünü kapsar.
15. İlgili Okumalar
- Okuma Kalemi USB HID ve HID over GATT
- Okuma Kalemi HID Rapor Tanımlayıcısı ve Kullanım Sayfası
- Okuma Kalemi BLE Servis Karakteristik UUID Tasarımı
- Okuma Kalemi GATT Sunucusu ve Bildirim Mekanizması
- Okuma Kalemi BLE Mesh ve Eşleştirme Mekanizması
- Okuma Kalemi Bluetooth 5.0 ve 5.2 ve 5.3 Karşılaştırması
- Okuma Kalemi Kriptografi ve TrustZone
- Okuma Kalemi Sertifika Sabitleme ve Rotasyonu