v1.3
يحدّد مواصفات ملحق شبكة "مركز العثور" (FHN) طريقة مشفّرة تمامًا لتتبُّع أجهزة البلوتوث المنخفض الطاقة (BLE) التي ترسل إشارات. توضّح هذه الصفحة أنّ ميزة "العثور على الأجهزة القريبة" هي إضافة إلى مواصفات Fast Pair. على مقدّمي الخدمات تفعيل هذا الامتداد إذا كانت لديهم أجهزة متوافقة مع FHN ويريدون تفعيل ميزة تتبُّع الموقع الجغرافي لهذه الأجهزة.
مواصفات GATT
يجب إضافة سمة عامة إضافية (GATT) إلى خدمة Fast Pair مع الدلالات التالية:
| سمة خدمة "الإقران السريع" | مشفّر | الأذونات | معرِّف فريد عالمي (UUID) |
|---|---|---|---|
| إجراءات Beacon | لا | القراءة والكتابة وإرسال الإشعارات | FE2C1238-8366-4814-8EB0-01DE32100BEA |
الجدول 1: خصائص خدمة "الإقران السريع" لشبكة FHN
المصادقة
يتم تنفيذ العمليات التي يتطلبها هذا الامتداد كعملية كتابة، ويتم تأمينها من خلال آلية طلب واستجابة. قبل إجراء أي عملية، من المتوقّع أن يجري الباحث عملية قراءة من السمة الواردة في الجدول 1، ما يؤدي إلى إنشاء مخزن مؤقت بالتنسيق التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | رقم الإصدار الرئيسي للبروتوكول | 0x01 |
| 1 - 8 | مصفوفة البايت | رقم عشوائي صالح لمرة واحدة | يختلف |
يجب أن تؤدي كل عملية قراءة إلى قيمة عشوائية مختلفة، ويجب أن تكون القيمة العشوائية الواحدة صالحة لعملية واحدة فقط. يجب إبطال الرقم العشوائي حتى إذا تعذّرت العملية.
بعد ذلك، يحسب الباحث مفتاح مصادقة صالحًا لمرة واحدة لاستخدامه في طلب كتابة لاحق. يتم احتساب مفتاح المصادقة كما هو موضّح في الجداول من 2 إلى 5. استنادًا إلى العملية المطلوبة، يثبت "الباحث" معرفته بمفتاح واحد أو أكثر من المفاتيح التالية:
مفتاح الحساب: مفتاح حساب "الإقران السريع" الذي يبلغ حجمه 16 بايت، كما هو محدّد في مواصفات "الإقران السريع".
مفتاح حساب المالك: يختار مقدّم الخدمة أحد مفاتيح الحساب الحالية كمفتاح حساب المالك في المرة الأولى التي يصل فيها طالب الخدمة إلى سمة "إجراءات Beacon". لا يمكن تغيير مفتاح حساب المالك الذي تم اختياره إلا بعد إعادة ضبط إعدادات "مقدّم الخدمة" على الإعدادات الأصلية. يجب ألا يزيل مقدّم الخدمة مفتاح حساب المالك عندما تنتهي خانات مفاتيح الحساب المجانية.
تختار الأجهزة التي توفّر ميزة "العثور على الأجهزة غير المتصلة بالإنترنت" عند إقرانها للمرة الأولى (أو توفّرها عند إقرانها بعد إعادة ضبط المصنع) مفتاح الحساب الأول، لأنّ هذا هو مفتاح الحساب الوحيد المتوفّر عندما يقرأ جهاز التتبّع حالة الإعداد أثناء عملية الإقران.
يمكن لمقدّمي الخدمات الذين يتيحون استخدام ميزة "الشبكة المنزلية الذكية" بعد إقرانهم (على سبيل المثال، من خلال تحديث البرامج الثابتة) اختيار أي مفتاح حساب حالي. من المنطقي اختيار مفتاح الحساب الأول الذي يُستخدم لقراءة حالة التوفير من سمة إجراءات جهاز الإرسال بعد تحديث البرنامج الثابت، على افتراض أنّ المستخدم الذي أجرى التحديث هو المالك الحالي للموفّر.
مفتاح الهوية المؤقتة (EIK): هو مفتاح يبلغ حجمه 32 بايت يختاره "الباحث" عشوائيًا عند تنفيذ عملية توفير المتطلبات اللازمة في FHN. يُستخدَم هذا المفتاح لاشتقاق مفاتيح تشفيرية تُستخدَم في التشفير التام بين الأطراف لتقارير المواقع الجغرافية. ولا يكشف Seeker عن هذه المعلومات للخادم الخلفي.
مفتاح الاسترداد: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x01)، يتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الواجهة الخلفية، ويمكن لجهاز التتبّع استخدامه لاسترداد مفتاح التشفير، شرط أن يوافق المستخدم على ذلك من خلال الضغط على زر على الجهاز.مفتاح الرنين: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x02)، ويتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الخلفية ويمكن لجهاز التتبُّع استخدامه لإصدار رنين على الجهاز فقط.مفتاح الحماية من التتبّع غير المرغوب فيه: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x03)، ويتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الخلفية، ولا يمكن لمستخدم Seeker استخدامه إلا لتفعيل وضع الحماية من التتبُّع غير المرغوب فيه.
العمليات
يتم عرض تنسيق البيانات المكتوبة في السمة في الجداول من 2 إلى 5. سيتم تناول كل عملية من العمليات بالتفصيل لاحقًا في هذا القسم.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | حجم البيانات | يختلف |
| من 2 إلى 9 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(account key, protocol major version number || the last nonce
read from the characteristic || data ID || data length || additional data) |
| 10 - var | مصفوفة البايت | البيانات الإضافية |
|
الجدول 2: طلب توفير إشارات Beacon
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x04: قراءة مفتاح الهوية المؤقتة بموافقة المستخدم |
| 1 | uint8 | حجم البيانات | 0x08 |
| من 2 إلى 9 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(recovery key, protocol major version number || the last nonce
read from the characteristic || data ID || data length) |
الجدول 3: طلب استرداد مفتاح توفير إشارة البلوتوث
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | حجم البيانات | يختلف |
| من 2 إلى 9 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(ring key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data) |
| 10 - var | مصفوفة البايت | البيانات الإضافية |
|
الجدول 4: طلب الرنين
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | حجم البيانات | يختلف |
| من 2 إلى 9 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(unwanted tracking protection key, protocol major version number
|| the last nonce read from the characteristic || data ID || data length ||
additional data) |
| 10 - var | مصفوفة البايت | البيانات الإضافية |
|
الجدول 5: طلب الحماية من التتبّع غير المرغوب فيه
تؤدي عمليات الكتابة الناجحة إلى إطلاق الإشعارات المدرَجة في الجدول 6.
يجب إرسال الإشعارات التي تتضمّن رقم تعريف بيانات غير 0x05: تغيير حالة الرنين قبل إكمال عملية الكتابة التي تؤدي إلى إرسال الإشعار، أي قبل إرسال وحدة بيانات البروتوكول (PDU) الخاصة بالرد على طلب الكتابة.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | حجم البيانات | يختلف |
| من 2 إلى 9 | مصفوفة البايت | المصادقة | تفاصيل كل عملية |
| 10 - var | مصفوفة البايت | البيانات الإضافية |
|
الجدول 6: استجابة خدمة Beacon
يسرد الجدول 7 رموز أخطاء GATT المحتملة التي تعرضها العمليات.
| الرمز | الوصف | ملاحظات |
|---|---|---|
| 0x80 | عدم الحصول على المصادقة | يتم عرض هذا الرمز استجابةً لطلب كتابة عند تعذُّر المصادقة (بما في ذلك الحالة التي تم فيها استخدام رقم عشوائي قديم). |
| 0x81 | قيمة غير صالحة | يتم عرض هذا الخطأ عند تقديم أي قيمة غير صالحة أو إذا كان عدد البايتات التي تم تلقّيها غير متوقّع. |
| 0x82 | عدم توفّر موافقة المستخدم | يتم عرض هذا الرمز استجابةً لطلب كتابة يتضمّن معرّف البيانات 0x04: قراءة مفتاح الهوية المؤقتة بموافقة المستخدم عندما لا يكون الجهاز في وضع الاقتران. |
الجدول 7: رموز خطأ GATT
قراءة مَعلمة الإشارة
يمكن لجهاز Seeker أن يطلب من جهاز Provider معلَمات إشارة Beacon من خلال تنفيذ عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 2 مع معرّف البيانات 0x00. يتأكّد الموفّر من أنّ مفتاح المصادقة لمرة واحدة المقدَّم يتطابق مع أي من مفاتيح الحسابات المخزّنة على الجهاز.
إذا فشلت عملية التحقّق، يعرض الموفّر خطأً غير مصادق عليه.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x00. ينشئ الموفِّر مقطع البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | الطاقة المعايرة | تمثّل هذه السمة مستوى الطاقة المضبوط الذي تم تلقّيه على مسافة 0 متر (قيمة ضمن النطاق [-100, 20]). يتم تمثيله كعدد صحيح يحمل علامة، بدقة 1 ديسيبل ميلي واط. |
| 1 - 4 | uint32 | قيمة الساعة | قيمة الساعة الحالية بالثواني (big endian). |
| 5 | uint8 | اختيار المنحنى | المنحنى الإهليلجي المستخدَم للتشفير:
|
| 6 | uint8 | المكونات | عدد المكوّنات التي يمكنها إصدار رنين:
|
| 7 | uint8 | إمكانات الرنين | الخيارات المتاحة هي:
|
| 8-15 | مصفوفة البايت | مساحة متروكة | تعبئة الأصفار لتشفير AES |
يجب تشفير البيانات باستخدام معيار AES-ECB-128 ومفتاح الحساب المستخدَم في مصادقة الطلب.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data after
encryption || 0x01).
قراءة حالة توفير المنارة
يمكن لجهاز Seeker أن يطلب من جهاز Provider معلومات عن حالة توفير إشارة Beacon من خلال تنفيذ عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 2 مع معرّف البيانات 0x01. يتأكّد مقدّم الخدمة من أنّ مفتاح المصادقة لمرة واحدة المقدَّم يتطابق مع أي من مفاتيح الحساب المخزّنة على الجهاز.
في حال تعذُّر إثبات الملكية، يعرض موفّر الخدمة خطأً بشأن عدم المصادقة.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x01. ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حالة توفير المتطلبات اللازمة | قناع بت يحتوي على القيم التالية:
|
| 1 - 20 أو 32 | مصفوفة البايت | المعرّف المؤقت الحالي | تمثّل هذه السمة 20 أو 32 بايت (حسب طريقة التشفير المستخدَمة) وتشير إلى المعرّف المؤقت الحالي الذي يبثّه جهاز الإرسال، إذا تم ضبط معرّف للجهاز. |
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data || 0x01).
ضبط مفتاح هوية مؤقت
لتوفير موفّر لم يتم توفيره كإشارة FHN، أو لتغيير مفتاح هوية مؤقتة لموفّر تم توفيره من قبل، ينفّذ الباحث عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 2 مع معرّف البيانات 0x02. يتحقّق موفّر الخدمة مما يلي:
- يتطابق مفتاح المصادقة الصالح لمرة واحدة المقدَّم مع مفتاح حساب المالك.
- إذا تم تقديم تجزئة لمفتاح هوية مؤقت، يجب أن تتطابق تجزئة مفتاح الهوية المؤقت مع مفتاح الهوية المؤقت الحالي.
- إذا لم يتم تقديم تجزئة لمفتاح هوية مؤقت، تحقَّق من أنّه لم يتم توفير "الموفّر" مسبقًا كإشارة FHN.
في حال تعذُّر إثبات الملكية، يعرض موفّر الخدمة خطأً بشأن عدم المصادقة.
في حال النجاح، يتم استرداد مفتاح الهوية المؤقتة من خلال فك تشفيره باستخدام AES-ECB-128 باستخدام مفتاح الحساب المطابق. يجب أن يتم تخزين المفتاح على الجهاز، ومن تلك النقطة فصاعدًا، يجب أن يبدأ "مزوّد الخدمة" في عرض إطارات FHN. يبدأ استخدام مفتاح الهوية المؤقت الجديد فورًا بعد قطع اتصال البلوتوث المنخفض الطاقة (BLE). يُرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x02.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || 0x01).
محو مفتاح الهوية المؤقتة
لإلغاء توفير جزء الإشارة من مقدّم الخدمة، ينفّذ الباحث عملية كتابة إلى السمة، تتألف من طلب من الجدول 2 مع معرّف البيانات 0x03. يتحقّق موفّر الخدمة مما يلي:
- يتطابق مفتاح المصادقة الصالح لمرة واحدة المقدَّم مع مفتاح حساب المالك.
- يتطابق مفتاح الهوية المؤقتة المجزّأ مع مفتاح الهوية المؤقتة الحالي.
إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو تعذّر إثبات الملكية، سيتم عرض خطأ غير مصادق عليه.
عند النجاح، ينسى موفّر الخدمة المفتاح ويتوقّف عن عرض إطارات FHN.
يُرسل "موفّر الخدمة" إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x03.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || 0x01).
قراءة مفتاح الهوية المؤقتة بموافقة المستخدم
لا يتوفّر هذا الخيار إلا لاسترداد مفتاح مفقود، لأنّ المفتاح يتم تخزينه محليًا فقط من خلال جهاز الباحث عن المفاتيح. وبالتالي، لا تتوفّر هذه الإمكانية إلا عندما يكون الجهاز في وضع الاقتران أو لفترة زمنية محدودة بعد الضغط على زر فعلي على الجهاز (ما يشكّل موافقة المستخدم).
على Seeker تخزين مفتاح الاسترداد في الخلفية ليتمكّن من استرداد المفتاح بنص عادي، ولكنّه لا يخزّن EIK نفسه.
لقراءة مفتاح التشفير، ينفّذ جهاز التتبّع عملية كتابة للخاصية، تتألف من طلب من الجدول 3 مع رقم تعريف البيانات 0x04. يتحقّق مقدّم الخدمة مما يلي:
- يتطابق مفتاح الاسترداد المجزّأ مع مفتاح الاسترداد المتوقّع.
- الجهاز في وضع استرداد مفتاح EIK.
في حال تعذُّر إثبات الملكية، يعرض موفّر الخدمة خطأً بشأن عدم المصادقة.
إذا لم يكن الجهاز في وضع الاقتران، سيعرض موفّر الخدمة الخطأ No User Consent.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x04.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(recovery key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data || 0x01).
عملية الرنين
يمكن لجهاز الباحث أن يطلب من جهاز مقدّم الخدمة تشغيل صوت من خلال تنفيذ عملية كتابة إلى السمة، تتألف من طلب من الجدول 4 مع معرّف البيانات 0x05. ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | عملية الرنين | قناع بت يحتوي على القيم التالية:
|
| 1 - 2 | uint16 | عملية استبعاد للقناة لمهلة معيّنة | المهلة بالديسي ثانية يجب ألا تكون القيمة صفرًا وألا تكون أكبر من 10 دقائق. يستخدم الموفّر هذه القيمة لتحديد المدة التي يجب أن يرنّ خلالها الجهاز قبل أن يتم إسكاته. يحلّ المهلة محلّ المهلة السارية إذا كان أي جزء من الجهاز يرنّ. في حال ضبط عملية الرنين على 0x00، يتم تجاهل المهلة. |
| 3 | uint8 | مستوى الصوت |
|
عند تلقّي الطلب، يتحقّق مقدّم الخدمة مما يلي:
- يتطابق مفتاح المصادقة لمرة واحدة المقدَّم مع مفتاح الخاتم.
- تتطابق الحالة المطلوبة مع المكوّنات التي يمكنها الرنين.
إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو تعذّر إثبات الملكية، سيتم عرض خطأ غير مصادق عليه. ومع ذلك، إذا كان موفّر الخدمة قد فعّل ميزة الحماية من التتبُّع غير المرغوب فيه، وكان طلب تفعيل ميزة الحماية من التتبُّع غير المرغوب فيه يتضمّن علامة مصادقة "تخطّي الرنين" مفعّلة، على موفّر الخدمة تخطّي هذا التحقّق. سيظل من المتوقّع أن يقدّم طالب البحث بيانات المصادقة، ولكن يمكن ضبطها على قيمة عشوائية.
عندما يبدأ الرنين أو ينتهي، يتم إرسال إشعار كما هو موضّح في الجدول 6 مع معرّف البيانات 0x05. يتم تحديد محتوى الإشعار على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حالة الرنين |
|
| 1 | uint8 | مكوّنات الرنين | قناع بتي للمكوّنات التي تصدر رنينًا بشكل نشط، كما هو محدّد في الطلب |
| 2 - 3 | uint16 | عملية استبعاد للقناة لمهلة معيّنة | الوقت المتبقي للرنين بالثواني العشرية إذا توقّف الجهاز عن إصدار رنين، يجب عرض القيمة 0x0000. |
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(ring key, protocol major version number || the nonce used to
initiate the ringing command || data ID || data length || additional data ||
0x01).
إذا كان الجهاز في حالة الرنين المطلوبة عند تلقّي طلب إصدار رنين أو إيقافه، على مقدّم الخدمة إرسال إشعار يتضمّن حالة الرنين أو إما 0x00: بدأ أو 0x04: توقّف (طلب GATT)، على التوالي. يلغي هذا الطلب مَعلمات الحالة الحالية، ما يتيح تمديد مدة الرنين.
إذا كان لدى مقدّم الخدمة زر فعلي (أو تم تفعيل ميزة الاستشعار باللمس)، يجب أن يؤدي الضغط على هذا الزر إلى إيقاف وظيفة الرنين إذا تم الضغط عليه أثناء تفعيل الرنين.
الحصول على حالة رنين جهاز التتبُّع
للحصول على حالة الرنين الخاصة بجهاز الإرسال، ينفّذ جهاز الاستقبال عملية كتابة للخاصية، تتألف من طلب من الجدول 4 مع معرّف البيانات 0x06. يتأكّد مقدّم الخدمة من أنّ مفتاح المصادقة لمرة واحدة الذي تم تقديمه يتطابق مع مفتاح الخاتم.
إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو إذا تعذّر إثبات صحة بياناته، سيعرض "مقدّم الخدمة" رسالة خطأ تفيد بأنّ المصادقة غير ناجحة.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x06. ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | مكوّنات الرنين | تمثّل هذه السمة المكوّنات التي تصدر رنينًا بشكل نشط، كما هو محدّد في طلب الرنين. |
| 1 - 2 | uint16 | عملية استبعاد للقناة لمهلة معيّنة | الوقت المتبقي للرنين بالثواني العشرية يُرجى العِلم أنّه في حال عدم رنين الجهاز، يجب عرض القيمة 0x0000. |
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256 (ring key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data || 0x01).
وضع الحماية من التتبُّع غير المرغوب فيه
يهدف وضع "الحماية من التتبّع غير المرغوب فيه" إلى السماح لأي جهاز عميل بتحديد الأجهزة المسيئة بدون الحاجة إلى التواصل مع الخادم. يجب أن يغيّر الموفّر تلقائيًا جميع المعرّفات على النحو الموضّح في تغيير المعرّفات. يمكن لخدمة "مركز العثور" نقل طلب تفعيل وضع الحماية من التتبُّع غير المرغوب فيه من خلال شبكة "مركز العثور". وبذلك، تجعل الخدمة "مقدّم الخدمة" يستخدم عنوان MAC ثابتًا بشكل مؤقت، ما يتيح للعملاء رصد الجهاز وتحذير المستخدم من إمكانية تتبُّعه بدون موافقته.
لتفعيل وضع الحماية من التتبّع غير المرغوب فيه أو إيقافه في جهاز الإرسال، ينفّذ جهاز التتبّع عملية كتابة للخاصية، تتألف من طلب من الجدول 5 مع معرّف البيانات 0x07 أو 0x08 على التوالي.
عند تفعيل وضع الحماية من التتبّع غير المرغوب فيه
ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | علامات التحكّم |
لا تكون العلامات سارية المفعول إلا إلى أن يتم إيقاف وضع الحماية من التتبُّع غير المرغوب فيه. |
يتأكّد مقدّم الخدمة من أنّ مفتاح المصادقة لمرة واحدة الذي تم تقديمه يتطابق مع مفتاح ميزة "الحماية من التتبّع غير المرغوب فيه". إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو تعذّر إثبات صحة بياناته، سيتم عرض رسالة خطأ تفيد بأنّ المصدر غير مصادق عليه.
عند تفعيل وضع "الحماية من التتبّع غير المرغوب فيه"، يجب أن يخفّض المنارة معدّل تكرار تغيير عنوان MAC الخاص إلى مرة واحدة كل 24 ساعة. يجب أن يستمر المعرّف المؤقت المعلَن عنه في التغيير كالمعتاد. يجب ضبط نوع الإطار على 0x41. تظهر الحالة أيضًا في قسم العلامات المجزأة.
عند إيقاف وضع الحماية من التتبّع غير المرغوب فيه
يتحقّق موفّر الخدمة مما يلي:
- يتطابق مفتاح المصادقة لمرة واحدة المقدَّم مع مفتاح الحماية من التتبّع غير المرغوب فيه.
- يتطابق مفتاح الهوية المؤقتة المجزّأ مع مفتاح الهوية المؤقتة الحالي.
إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو تعذّر إثبات الملكية، سيعرض "مقدّم الخدمة" رسالة خطأ تفيد بأنّ عملية المصادقة لم تتم.
عند إيقاف وضع "الحماية من التتبّع غير المرغوب فيه"، من المفترض أن يبدأ جهاز الإرسال الدوّار في تدوير عنوان MAC بمعدّل عادي مرة أخرى، مع مزامنته مع تدوير المعرّف المؤقت. يجب إعادة ضبط نوع الإطار على 0x40. تظهر الحالة أيضًا في قسم العلامات المجزّأة.
عند النجاح، يرسل "مقدّم الخدمة" إشعارًا يتضمّن استجابة من الجدول 6 مع رقم تعريف البيانات 0x07 أو 0x08.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(unwanted tracking protection key, protocol major version number ||
the last nonce read from the characteristic || data ID || data length ||
0x01).
العثور الدقيق
يوضّح هذا القسم مسار العمليات والعمليات الإضافية اللازمة لتحديد الموقع الجغرافي بدقة. تنطبق هنا القواعد نفسها المتعلّقة بخصائص GATT والمصادقة كما هو محدّد في قسم مواصفات GATT. ميزة "العثور بدقة" اختيارية.
يعتمد نوع البحث الدقيق على نوع تقنيات تحديد المدى المتوافقة مع الأجهزة التي تستخدم هذه الميزة. يمكن العثور على تكنولوجيات تحديد المدى المتوافقة في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق. تستكشف الأقسام اللاحقة نوع تجربة العثور بدقة التي يمكن توقّعها استنادًا إلى تكنولوجيا تحديد المدى المستخدَمة.
مسار ميزة "العثور بدقة"
يستكشف هذا القسم مسار رسائل FHNA في ميزة "العثور بدقة". يوضّح الشكل 1 تسلسل الرسائل، وتشرح الفقرات كل رسالة بمزيد من التفصيل.

الشكل 1: مسار الرسائل النموذجية في ميزة "العثور الدقيق"
جهاز "المُطلق" هو الجهاز الذي يتضمّن تطبيق "مركز العثور" والذي تم تفعيل ميزة "العثور الدقيق" منه. الجهاز المصدِر هو الجهاز الذي يحاول العثور على الجهاز الآخر.
جهاز Responder هو الجهاز الذي يحاول جهاز Initiator العثور عليه.
يرسل جهاز "المُرسِل" رسالة "طلب إمكانية تحديد المدى" إلى جهاز "المستجيب"، حيث سيتم إدراج تقنيات تحديد المدى التي يريد معرفتها من جهاز "المستجيب". سيردّ الجهاز المستجيب بإشعار "استجابة إمكانية تحديد المدى" الذي يتضمّن معلومات حول تقنيات تحديد المدى المتوافقة وإمكاناتها. سيقدّم المجيب المعلومات التي طلبها البادئ فقط. سيتم ترتيب قائمة الإمكانات استنادًا إلى أولوية تكنولوجيا تحديد المدى التي يفضّلها جهاز Responder، وستكون الأولوية الأعلى للعنصر الأول في القائمة.
سيرسل جهاز Initiator بعد ذلك رسالة Ranging Configuration، سيحدّد فيها إعدادات كل تقنية تحديد مدى يريد استخدامها. عند تلقّي هذه الرسالة، يجب أن يبدأ جهاز Responder في تحديد المدى للتكنولوجيات السارية باستخدام الإعدادات المقدَّمة. سيرسل الجهاز المستجيب إشعارًا بالرد على طلب إعدادات تحديد المدى، ويتضمّن هذا الإشعار نتائج ما إذا كانت كل تقنية فردية لتحديد المدى قد بدأت بنجاح. يجب بدء بعض تقنيات تحديد المدى على كل من جهاز "المُرسِل" وجهاز "المستقبِل" لإجراء جلسة تحديد مدى ناجحة، بينما لا يكون ذلك ضروريًا لبعض التقنيات الأخرى، ولكن يجب أن يرد جهاز "المستقبِل" بنتيجة ناجحة لهذه التقنيات. يمكنك الاطّلاع على مزيد من المعلومات حول سلوك تكنولوجيا تحديد المدى المحدّدة في الأقسام اللاحقة.
عندما يكون جهاز "المُطلق" جاهزًا لإيقاف جلسة "العثور الدقيق"، سيرسل رسالة "إيقاف تحديد المدى" إلى جهاز "المستجيب"، مع توضيح تكنولوجيات تحديد المدى التي يجب إيقافها. سيردّ جهاز Responder بإشعار Stop Ranging Response، ما يشير إلى أنّه أوقف بنجاح عملية تحديد المدى باستخدام تقنيات تحديد المدى المطلوبة.
في حال انقطاع قناة الاتصال FHNA BLE GATT في منتصف جلسة البحث الدقيق، ولكن مع استمرار بعض تقنيات تحديد المدى في تحديد المدى، سيطبّق الجهاز المستجيب آلية مهلة زمنية لضمان عدم تحديد المدى إلى أجل غير مسمى. ستعتمد التفاصيل على كل حالة استخدام.
يُرجى العِلم أنّه يجب ألا يفترض الجهاز المستجيب أنّ ترتيب العمليات سيكون هو نفسه دائمًا. على سبيل المثال، يجب أن يكون جهاز الردّ قادرًا على التعامل مع عمليات طلبات متعددة بشأن إمكانية تحديد المدى على التوالي، أو حتى عملية مباشرة بشأن إعدادات تحديد المدى بدون طلب الإمكانية السابق.
عمليات "العثور بدقة"
يعرض الجدول 8 عمليات FHNA المحدّدة في هذا المستند والمطلوبة لتفعيل ميزة "العثور الدقيق". يحدّد كل قسم فرعي رسالة FHNA لكل عملية من العمليات، بينما تشير محتويات حقل البيانات الإضافية إلى مواصفات تحديد المدى: تسلسل الرسائل خارج النطاق والحِمل.
| العملية | معرّف البيانات | الوصف |
|---|---|---|
| طلب إمكانية تحديد المدى | 0x0A | عملية طلب الإذن التي سيرسلها جهاز "المُرسِل" إلى جهاز "المستلِم". ستعرض محتويات البيانات الخاصة بهذه العملية جميع تقنيات تحديد المدى التي يريد الجهاز البادئ معرفتها من جهاز المستجيب. |
| Ranging Capability Response | 0x0A | هذا هو رد الإشعار على عملية طلب إذن استخدام ميزة تحديد المدى. يحتوي على معلومات حول إمكانات كل تكنولوجيا تحديد مدى متوافقة طلبها الجهاز البادئ. |
| إعدادات تحديد المدى | 0x0B | تحتوي عملية "إعداد تحديد المدى" على إعدادات تقنيات تحديد المدى التي يريد جهاز "المُرسِل" بدء تحديد المدى بها مع جهاز "المستقبِل". |
| استجابة إعدادات تحديد المدى | 0x0B | هذا هو الردّ على الإشعار بشأن عملية "ضبط النطاق". يحتوي على بيانات حول ما إذا كان جهاز Responder قد بدأ بنجاح في تحديد المدى باستخدام تقنيات تحديد المدى المطلوبة استنادًا إلى الإعدادات المقدَّمة. |
| RFU | 0x0C | لا يتم استخدام العملية التي تتضمّن معرّف البيانات هذا، وهي محجوزة للاستخدام في المستقبل. |
| إيقاف تحديد المدى | 0x0D | تحتوي عملية "إيقاف تحديد المدى" التي يرسلها جهاز "المُرسِل" على معلومات حول تكنولوجيات تحديد المدى التي يجب أن يتوقف جهاز "المستجيب" عن تحديد المدى باستخدامها. |
| إيقاف الردود المتعلقة بتحديد المدى | 0x0D | هذا هو الردّ على الإشعار بشأن عملية "إيقاف تحديد المدى". يحتوي على بيانات حول ما إذا كانت عملية الإيقاف لتكنولوجيا تحديد المدى المحدّدة ناجحة أم لا. |
الجدول 8: عمليات "العثور بدقة"
عملية طلب إمكانية تحديد المدى
يحدّد الجدول 9 رسالة طلب إمكانية تحديد المدى.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0A - عملية طلب إمكانية تحديد المدى |
| 1 | uint8 | حجم البيانات | يختلف |
| 2 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمت قراءته من السمة || رقم تعريف البيانات || طول البيانات || بيانات إضافية). |
| 10 | مصفوفة البايت | البيانات الإضافية | رسالة طلب تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحمولة خارج النطاق (كل من العنوان والحمولة) |
الجدول 9: طلب إمكانية تحديد المدى
عملية استجابة إمكانية تحديد المدى
يحدّد الجدول 10 رسالة "الاستجابة لإمكانية تحديد المدى".
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0A: استجابة إمكانية تحديد المدى |
| 1 | uint8 | حجم البيانات | يختلف |
| 2 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمّت قراءته من السمة || معرّف البيانات || طول البيانات || بيانات إضافية || 0x01). |
| 10 | مصفوفة البايت | البيانات الإضافية | رسالة استجابة إمكانية تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 10: استجابة نطاق الإمكانات
عملية ضبط النطاق
يحدد الجدول 11 رسالة إعداد تحديد المدى.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0B - ضبط إعدادات تحديد المدى |
| 1 | uint8 | حجم البيانات | يختلف |
| 2 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمت قراءته من السمة || رقم تعريف البيانات || طول البيانات || بيانات إضافية). |
| 10 | مصفوفة البايت | البيانات الإضافية | رسالة إعداد تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 11: إعدادات تحديد المدى
عملية الردّ على إعدادات تحديد المدى
يحدّد الجدول 12 رسالة "ردّ إعداد تحديد المدى".
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0B - الردّ على طلب ضبط إعدادات تحديد المسافة |
| 1 | uint8 | حجم البيانات | يختلف |
| 2 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمّت قراءته من السمة || معرّف البيانات || طول البيانات || بيانات إضافية || 0x01). |
| 10 | مصفوفة البايت | البيانات الإضافية | رسالة Ranging Configuration Response على النحو المحدّد في مواصفات القياس: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 12: استجابة إعدادات تحديد المدى
إيقاف عملية تحديد المدى
يحدّد الجدول 13 رسالة Stop Ranging.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0D - إيقاف تحديد المدى |
| 1 | uint8 | حجم البيانات | يختلف |
| 2 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر قيمة عشوائية تمّت قراءتها من السمة || معرّف البيانات || طول البيانات). |
| 10 | مصفوفة البايت | البيانات الإضافية | رسالة Stop Ranging على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 13: إيقاف تحديد المدى
إيقاف عملية الرد على تحديد المدى
يحدّد الجدول 14 رسالة Stop Ranging Response.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0D - استجابة إيقاف تحديد المدى |
| 1 | uint8 | حجم البيانات | يختلف |
| 2 | مصفوفة البايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمّت قراءته من السمة || معرّف البيانات || طول البيانات || بيانات إضافية || 0x01). |
| 10 | مصفوفة البايت | البيانات الإضافية | رسالة إيقاف تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 14: إيقاف عرض المنتجات ضمن نطاق سعر محدد.
الحماية من التتبُّع غير المرغوب فيه باستخدام ميزة "البحث الدقيق"
عند تفعيل وضع "الحماية من التتبّع غير المرغوب فيه"، كما هو موضّح في قسم "الحماية من التتبّع غير المرغوب فيه"، يسري الإجراء نفسه المتّبع لتخطّي عمليات التحقّق من المصادقة للرسائل التي تصدر رنينًا على جميع رسائل "العثور الدقيق" المحدّدة في هذا المستند للأجهزة التي تريد إتاحة هذه الميزة.
تفاصيل تكنولوجيا تحديد المدى في ميزة "العثور بدقة"
يحتوي هذا القسم على تفاصيل خاصة بتكنولوجيا تحديد المدى.
تفاصيل النطاق الفائق العرض (UWB)
تفاصيل محدّدة حول تقنية النطاق الفائق العرض (UWB)
مستوى ميزة "العثور بدقة"
يمكن أن تتضمّن جلسات "تحديد الموقع بدقة" التي تستخدم تكنولوجيا النطاق الفائق العرض (UWB) لتحديد المسافة معلومات عن المسافة والاتجاه. يجب أن تكون الفترة الفاصلة بين عمليات تحديد المدى 240 ملي ثانية على الأقل، ويُفضّل أن تكون 96 ملي ثانية للحصول على أفضل توجيه.
معرّفات الإعدادات
لا تحتوي بيانات الإعدادات التي يتم تبادلها خارج النطاق الترددي لتقنية UWB على مجموعة كاملة من المَعلمات القابلة للإعداد التي تتطلّبها تقنية UWB لبدء جلسة تحديد المدى باستخدام تقنية UWB. يتم اختيار بعض المَعلمات ضمنيًا من خلال رقم تعريف الإعداد الذي تم اختياره.
كل معرّف إعداد هو مجموعة من مَعلمات إعدادات النطاق الفائق العرض (UWB) المحدّدة مسبقًا والتي تم توثيقها بشكل علني. بالنسبة إلى حالة استخدام "العثور الدقيق"، يجب أن يتيح جهاز المستجيب معرّف الإعداد 6، ويمكنه اختياريًا إتاحة معرّف الإعداد 3.
بادئ التشغيل والمستجيب في النطاق الفائق العرض (UWB)
في ما يتعلق بحالة استخدام ميزة "العثور بدقة"، سيكون الجهاز الذي تم تصنيفه على أنّه جهاز "المُرسِل" في هذا المستند هو جهاز الاستجابة بتقنية النطاق الفائق العرض (UWB)، وسيكون الجهاز الذي تم تصنيفه على أنّه جهاز "المستقبِل" في هذا المستند هو جهاز الإرسال بتقنية النطاق الفائق العرض (UWB). ويرجع ذلك إلى أنّ الجهاز الذي يبدأ عملية الاتصال عبر تكنولوجيا النطاق الفائق العرض (UWB) يستهلك طاقة أقل من الجهاز الذي يستجيب لعملية الاتصال، وفي معظم الحالات، يكون الجهاز المستجيب عبارة عن جهاز طرفي مزوّد ببطارية محدودة.
وهذا يعني أنّ جهاز Responder يجب أن يشير إلى أنّه يتيح دور جهاز بدء عملية تحديد المدى باستخدام تكنولوجيا UWB في رسالة "استجابة إمكانية تحديد المدى".
مَعلمات أخرى ذات صلة بالنطاق الفائق العرض
- يجب أن تكون القناة 9 متاحة
- للحصول على إرشادات مثالية، يُنصح باستخدام فاصل زمني يتراوح بين 96 مللي ثانية، وإلا يجب توفير 240 مللي ثانية.
- يُنصح باستخدام مدة فتحة تبلغ 1 ملي ثانية لتوفير شحن البطارية، ولكن يمكن أيضًا استخدام مدة تبلغ 2 ملي ثانية.
- يجب أن تكون شريحة النطاق الفائق العرض متوافقة مع الإصدار 1.2 من معيار FIRA ومعيار P-STS على الأقل.
- يجب استخدام BPRF، بينما يُنصح باستخدام HPRF ولكنّه اختياري. يتم تحديد الوضع المتوافق أو المحدّد من خلال فهرس الديباجة المتوافق أو المحدّد.
- نوع أمان الجلسة: P-STS
تفاصيل حول ميزة "استكشاف القنوات" عبر البلوتوث المنخفض الطاقة (BLE)
تفاصيل خاصة بخدمة BLE CS
مستوى ميزة "العثور بدقة"
ستؤدي جلسات "البحث الدقيق" التي تستخدم CS كتكنولوجيا تحديد المدى إلى قياسات المسافة فقط، ولن يتم توفير معلومات الاتجاه في الوقت الحالي.
الربط المطلوب بين الأجهزة
لن تعمل جلسات "العثور الدقيق" التي تستخدم ميزة Channel Sounding إذا لم يتم ربط الأجهزة. يجب أن يكون هناك ربط حالي بين الجهاز المبدئي والجهاز المستجيب. لا يوفّر هذا المواصفات طريقة لإنشاء ربط بين الأجهزة. بدلاً من ذلك، يعود إلى مطوّر حالة الاستخدام تحديد هذا الربط بين الأجهزة.
الإجراء المطلوب من جانب المستجيب في "خدمة العملاء"
على عكس تقنية UWB التي تتطلّب أن يطلب كلا الجهازَين بشكل صريح بدء عملية تحديد المدى وإيقافها باستخدام واجهة برمجة التطبيقات، لا تتطلّب تقنية CS سوى أن يطلب الجهاز المبدئي بدء عملية تحديد المدى باستخدام حزمة برامج البلوتوث، ويتم تنفيذ بقية عملية الإعداد على جهاز الاستجابة بشكل مباشر باستخدام البلوتوث. يعني ذلك أنّه عند تلقّي رسالة "إعدادات تحديد المدى" أو رسالة "إيقاف تحديد المدى" الخاصة بخدمة CS، لا يحتاج الجهاز المستجيب إلى اتّخاذ أي إجراء إذا كان البلوتوث مفعّلاً، باستثناء الردّ بإشعار رسالة "الردّ على إعدادات تحديد المدى". قد يستخدم جهاز الرد هذه الرسائل كإشارة لتعديل واجهة المستخدم حيثما توجد شاشة، أو قد يستخدمها لتقديم ملاحظات مرئية عن حالة الجهاز، مثلاً، من خلال وميض مصابيح LED في الجهاز، وذلك بغض النظر عمّا إذا كانت هناك شاشة أم لا.
Wi-Fi NAN RTT
تفاصيل محدّدة حول تقنية Wi-Fi NAN RTT
مستوى ميزة "العثور بدقة"
ستؤدي جلسات "العثور الدقيق" التي تستخدم تقنية تحديد المدى المستندة إلى Wi-Fi NAN RTT إلى قياس المسافة فقط، ولن يتم توفير معلومات الاتجاه في الوقت الحالي.
BLE RSSI
تفاصيل محدّدة حول قوة إشارة استلام البلوتوث المنخفض الطاقة (BLE)
مستوى ميزة "العثور بدقة"
لن تتمكّن جلسات "العثور الدقيق" التي تستخدم BLE RSSI فقط كتكنولوجيا تحديد المدى من الحصول على معلومات المسافة أو الاتجاه، لأنّ BLE RSSI ليست تكنولوجيا دقيقة لتحديد المدى. بدلاً من ذلك، سيظهر للمستخدم إرشادات تشير إلى أنّ الجهاز قريب أو بعيد.
اللقطات التي يتم عرض إعلانات فيها
بعد توفير الإطار، من المتوقّع أن يعلن مقدّم الخدمة عن إطارات FHN مرة واحدة على الأقل كل ثانيتَين. في حال الإعلان عن إطارات Fast Pair، على مقدّم الخدمة أن يدرج إطارات FHN ضمن إعلانات Fast Pair العادية. على سبيل المثال، يجب أن يعرض مقدّم الخدمة سبعة إعلانات Fast Pair وإعلان FHN واحدًا كل ثانيتَين.
يجب ضبط طاقة الإرسال عبر البلوتوث التي يتم إجراؤها لإعلانات FHN على 0 ديسيبل ميلي واط على الأقل.
يحمل إطار FHN مفتاحًا عامًا يُستخدَم لتشفير تقارير الموقع الجغرافي من خلال أي جهاز عميل متوافق يساهم في شبكة التعهيد الجماعي. يتوفّر نوعان من مفاتيح المنحنى البيضاوي: مفتاح 160 بت يتوافق مع إطارات BLE 4 القديمة، أو مفتاح 256 بت يتطلّب BLE 5 مع إمكانات إعلانية موسّعة. يحدّد التنفيذ الذي يجريه مقدّم الخدمة المنحنى الذي سيتم استخدامه.
يتم تنظيم إطار FHN على النحو التالي.
| Octet | القيمة | الوصف |
|---|---|---|
| 0 | 0x02 | الطول |
| 1 | 0x01 | قيمة نوع بيانات العلامات |
| 2 | 0x06 | بيانات العلامات |
| 3 | 0x18 أو 0x19 | الطول |
| 4 | 0x16 | قيمة نوع بيانات بيانات الخدمة |
| 5 | 0xAA | المعرّف الفريد العالمي (UUID) للخدمة المكوّن من 16 بت |
| 6 | 0xFE | ... |
| 7 | 0x40 أو 0x41 | نوع إطار FHN مع إشارة إلى وضع الحماية من التتبّع غير المرغوب فيه |
| 8..27 | معرّف مؤقت مكوّن من 20 بايت | |
| 28 | العلامات المجزّأة |
الجدول 15: إطار FHN يتوافق مع منحنى 160 بت.
يعرض الجدول 16 إزاحات البايت وقيمها لمنحنى 256 بت.
| Octet | القيمة | الوصف |
|---|---|---|
| 0 | 0x02 | الطول |
| 1 | 0x01 | قيمة نوع بيانات العلامات |
| 2 | 0x06 | بيانات العلامات |
| 3 | 0x24 أو 0x25 | الطول |
| 4 | 0x16 | قيمة نوع بيانات بيانات الخدمة |
| 5 | 0xAA | المعرّف الفريد العالمي (UUID) للخدمة المكوّن من 16 بت |
| 6 | 0xFE | ... |
| 7 | 0x40 أو 0x41 | نوع إطار FHN مع إشارة إلى وضع الحماية من التتبّع غير المرغوب فيه |
| 8..39 | معرّف مؤقت بحجم 32 بايت | |
| 40 | العلامات المجزّأة |
الجدول 16: إطار FHN يتوافق مع منحنى 256 بت.
احتساب المعرّف المؤقت (EID)
يتم إنشاء رقم عشوائي من خلال تشفير بنية البيانات التالية باستخدام AES-ECB-256 باستخدام مفتاح التعريف المؤقت:
| Octet | الحقل | الوصف |
|---|---|---|
| 0 - 10 | مساحة متروكة | القيمة = 0xFF |
| 11 | K | أُس فترة التكرار |
| 12 - 15 | TS[0]...TS[3] | عداد وقت الإشارة، بتنسيق 32 بت الكبير النهاية يتم محو K أدنى بتات. |
| 16 - 26 | مساحة متروكة | القيمة = 0x00 |
| 27 | K | أُس فترة التكرار |
| بين 28 و31 عامًا | TS[0]...TS[3] | عداد وقت الإشارة، بتنسيق 32 بت الكبير النهاية يتم محو K أدنى بتات. |
الجدول 17: إنشاء رقم عشوائي زائف
نتيجة هذه العملية الحسابية هي رقم مكوّن من 256 بت، ويُشار إليه بالرمز r'.
بالنسبة إلى بقية العمليات الحسابية، يتم استخدام SECP160R1 أو SECP256R1
لعمليات التشفير باستخدام المنحنى البيضاوي. يمكنك الاطّلاع على تعريفات المنحنى في
SEC 2: Recommended Elliptic Curve Domain Parameters، الذي يحدّد Fp وn وG
المشار إليها لاحقًا.
يتم الآن إسقاط r' على الحقل المحدود Fp من خلال حساب r = r' mod n.
أخيرًا، احسب R = r * G، وهو نقطة على المنحنى تمثّل المفتاح العام المستخدَم. يبث الجهاز إشارة تتضمّن Rx، وهي إحداثيات x الخاصة بـ R، باعتبارها المعرّف المؤقت.
العلامات المجزّأة
يتم احتساب حقل العلامات المجزّأة على النحو التالي (يتم الرجوع إلى البتات من الأكثر أهمية إلى الأقل أهمية):
- وحدات البت من 0 إلى 4: محجوزة (يجب ضبطها على أصفار).
- تشير البتات من 5 إلى 6 إلى مستوى البطارية بالجهاز على النحو التالي:
- 00: لا تتوفّر إشارة لمستوى البطارية
- 01: مستوى البطارية العادي
- 10: مستوى شحن البطارية منخفض
- 11: مستوى شحن البطارية منخفض للغاية (يجب استبدال البطارية قريبًا)
- يتم ضبط البت 7 على 1 إذا كان جهاز التتبُّع في وضع الحماية من التتبُّع غير المرغوب فيه، وعلى 0 في الحالات الأخرى.
لإنتاج القيمة النهائية لهذا البايت، يتم إجراء عملية XOR مع البايت الأقل أهمية في SHA256(r).
يُرجى العِلم أنّه يجب محاذاة r مع حجم المنحنى. أضِف أصفارًا كبتات أكثر أهمية إذا كان التمثيل أقصر من 160 أو 256 بتًا، أو يجب اقتطاع البتات الأكثر أهمية إذا كان التمثيل أكبر من 160 أو 256 بتًا.
إذا كان جهاز الإرسال لا يتيح عرض مستوى البطارية، ولم يكن في وضع الحماية من التتبُّع غير المرغوب فيه، يمكن حذف هذا البايت بالكامل من الإعلان.
التشفير باستخدام EID
لتشفير رسالة m، على الشخص الذي رصد الجهاز (بعد قراءة Rx من جهاز الإرسال) اتّباع الخطوات التالية:
- اختَر رقمًا عشوائيًا
sفيFp، كما هو محدّد في قسم احتساب المعرّف EID. - الحساب
S = s * G - احسب
R = (Rx, Ry)بالتعويض في معادلة المنحنى واختيار قيمةRyعشوائية من النتائج المحتملة. - احسب مفتاح AES ذو 256 بت
k = HKDF-SHA256((s * R)x)حيث(s * R)xهو إحداثيxلنتيجة ضرب المنحنى. لم يتم تحديد قيمة Salt. - لنفترض أنّ
URxوLRxهما 80 بتًا العلوية والسفلية منRxعلى التوالي، بتنسيق big-endian. وبطريقة مماثلة، حدِّدUSxوLSxلـS. - الحساب
nonce = LRx || LSx - الحساب
(m’, tag) = AES-EAX-256-ENC(k, nonce, m) - إرسال
(URx, Sx, m’, tag)إلى المالك، ربما من خلال خدمة بعيدة غير موثوق بها
فك تشفير القيم المشفّرة باستخدام EID
يفك تشفير الرسالة عميل المالك الذي يملك مفتاح التشفير EIK وأس فترة التدوير على النحو التالي:
- بالنظر إلى
URx، احصل على قيمة عدّاد وقت إشارة التتبّع التي يستند إليهاURx. ويمكن إجراء ذلك من خلال حساب قيمRxالخاصة بعدّاد وقت الإشارة لدى جهاز العميل الخاص بالمالك، وذلك بالنسبة إلى الماضي القريب والمستقبل القريب. - بافتراض قيمة عدّاد وقت الإشارة التي تستند إليها
URx، احسب القيمة المتوقّعة لـrكما هو محدّد في قسم عملية حساب معرّف EID. - احتسِب قيمة
R = r * G، وتأكَّد من تطابقها مع قيمةURxالتي قدّمها المراقب. - احسب
S = (Sx, Sy)بالتعويض في معادلة المنحنى واختيار قيمةSyعشوائية من النتائج المحتملة. - احسب
k = HKDF-SHA256((r * S)x)حيث(r * S)xهو إحداثيxلنتيجة ضرب المنحنى. - الحساب
nonce = LRx || LSx - الحساب
m = AES-EAX-256-DEC(k, nonce, m’, tag)
تغيير المعرّف بشكل دوري
يجب استخدام عنوان Bluetooth منخفض الطاقة (BLE) قابل للحل (RPA) أو غير قابل للحل (NRPA) للإعلان عن إطارات FHN. يجب توفّر ميزة RPA في أجهزة LE Audio (LEA)، ويُنصح باستخدامها في الأجهزة الأخرى، باستثناء أجهزة التتبُّع التي لا تستخدم ميزة الإقران.
يجب أن يتم تدوير إعلان Fast Pair وإعلان FHN وعناوين BLE المقابلة في الوقت نفسه. يجب أن يتم التبديل كل 1024 ثانية في المتوسط. يجب أن يتم تحديد النقطة الدقيقة التي يبدأ فيها جهاز الإرسال بعرض المعرّف الجديد بشكل عشوائي ضمن النافذة.
الطريقة المقترَحة لتحديد وقت التدوير بشكل عشوائي هي ضبطه على وقت التدوير المتوقّع التالي (في حال عدم تطبيق أي عشوائية) بالإضافة إلى عامل وقت عشوائي موجب في النطاق من ثانية واحدة إلى 204 ثانية.
عندما يكون الجهاز في وضع الحماية من التتبّع غير المرغوب فيه، يجب أن يكون عنوان Bluetooth Low Energy (BLE) لإعلان FHN ثابتًا، ولكن يجب أن يستمر تغيير عنوان RPA لإعلان FP غير القابل للاكتشاف (مثل Fast Pair). يمكن استخدام عناوين مختلفة للبروتوكولات المختلفة.
الاسترداد بعد انقطاع الكهرباء
يرتبط حلّ المعرّف المؤقت ارتباطًا وثيقًا بقيمة الساعة في وقت الإعلان، لذا من المهم أن يتمكّن مقدّم الخدمة من استرداد قيمة الساعة في حال انقطاع الطاقة. يُنصح بأن يكتب مقدّم الخدمة قيمة الساعة الحالية في الذاكرة غير المتطايرة مرة واحدة على الأقل يوميًا، وأن يتحقّق مقدّم الخدمة من الذاكرة غير المتطايرة عند بدء التشغيل لمعرفة ما إذا كانت هناك قيمة يمكن استخدامها لعملية التهيئة. يجب أن تنفّذ أدوات حلّ المعرّف المؤقت عملية الحلّ خلال فترة زمنية كافية للسماح بكل من الانحراف المعقول في الساعة واستعادة البيانات بعد انقطاع الطاقة.
ومع ذلك، يجب أن يبذل مقدّمو الخدمات قصارى جهدهم للحدّ من الانحرافات في التوقيت، لأنّ نافذة وقت الحلّ محدودة. يجب تنفيذ طريقة واحدة على الأقل لمزامنة الساعة (إطارات Fast Pair غير القابلة للاكتشاف أو تنفيذ دفق الرسائل).
إرشادات تنفيذ ميزة "الإقران السريع"
يصف هذا القسم الجوانب الخاصة بتنفيذ ميزة "الإقران السريع" على مقدّمي الخدمات الذين يتيحون استخدام FHN.
الإرشادات الخاصة بأجهزة تتبُّع الموقع الجغرافي
- إذا تم إقران مقدّم الخدمة، ولكن لم يتم توفير ميزة "العثور على هاتفي" خلال 5 دقائق (أو إذا تم تطبيق تحديث عبر الأثير أثناء إقران الجهاز ولكن لم يتم توفير ميزة "العثور على هاتفي")، يجب أن يعود مقدّم الخدمة إلى إعدادات المصنع وأن يمحو مفاتيح الحساب المخزّنة.
- بعد إقران مقدّم الخدمة، يجب ألا يغيّر عنوان MAC الخاص به إلى أن يتم توفير FHN أو إلى أن تمر 5 دقائق.
- إذا تم محو مفتاح الهوية المؤقتة من الجهاز، يجب أن يعيد الجهاز ضبطه على الإعدادات الأصلية وأن يمحو مفاتيح الحساب المخزّنة أيضًا.
- على مقدّم الخدمة رفض محاولات الإقران العادية عبر البلوتوث وقبول الإقران عبر Fast Pair فقط.
- يجب أن يوفّر مقدّم الخدمة آلية تتيح للمستخدمين إيقاف الإعلانات مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
- بعد انقطاع التيار الكهربائي، يجب أن يعلن الجهاز عن إطارات "الإقران السريع" غير القابلة للاكتشاف إلى أن يتم استدعاء قراءة مَعلمات الإشارة في المرة التالية. يتيح ذلك لجهاز الباحث رصد الجهاز ومزامنة الساعة حتى إذا حدث انحراف كبير في الساعة.
- عند الإعلان عن إطارات "الإقران السريع" غير القابلة للاكتشاف، يجب عدم تفعيل مؤشرات واجهة المستخدم.
- يجب عدم الإعلان عن إطارات "الإقران السريع" القابلة للاكتشاف أثناء توفير "مزوّد" لشبكة FHN.
- يجب ألا يعرض الموفّر أي معلومات تحدِّد الهوية بطريقة غير مصادَق عليها (مثل الأسماء أو المعرّفات).
الإرشادات الخاصة بالأجهزة التي تتضمّن بلوتوث كلاسيكي
يوضّح هذا القسم الجوانب الخاصة بأجهزة البلوتوث الكلاسيكية التي تتوافق مع FHN.
توفير المتطلبات اللازمة للأجهزة المقترنة مسبقًا في شبكة FHN
لا يتم توفير ميزة "العثور على هاتفي" دائمًا عند إقران هاتف "الموفّر" بهاتف "الباحث"، ولكن بعد فترة. في هذه الحالة، قد لا يكون لدى "المزوّد" عنوان MAC حديث لبروتوكول البلوتوث المنخفض الطاقة (BLE) المطلوب لإنشاء اتصال GATT. يجب أن يتيح مقدّم الخدمة طريقة واحدة على الأقل من الطرق التالية للمستخدم للحصول على عنوان BLE الخاص بالجهاز عندما يكون مقترنًا:
- يمكن للموفّر الإعلان بشكل دوري عن بيانات حساب Fast Pair
التي تتيح لجهاز الباحث العثور على عنوان البلوتوث المنخفض الطاقة (BLE) من خلال عملية بحث عن أجهزة البلوتوث المنخفض الطاقة.
هذا الأسلوب مناسب لمقدّمي الخدمة الذين لا ينفّذون بث الرسائل. - يمكن للموفّر تقديم هذه البيانات من خلال دفق رسائل ميزة "الإقران السريع" عبر البلوتوث الكلاسيكي.
هذه الطريقة مناسبة لمقدّمي الخدمات الذين لا يعلنون عن إطارات Fast Pair أثناء الاتصال بجهاز الباحث عبر البلوتوث.
يؤدي توفير كلا الطريقتين إلى زيادة فرص إمكانية المستخدم توفير الجهاز لاستخدام ميزة "البحث عن الأجهزة القريبة".
سلسلة رسائل ميزة "الإقران السريع"
يمكن للموفّر تنفيذ دفق رسائل "الإقران السريع" واستخدامه لإعلام الباحث بمعلومات الجهاز. يتيح تنفيذ ساحة مشاركات الرسائل استخدام ميزات معيّنة كما هو موضّح في هذا القسم.
على الموفّر إرسال رسائل معلومات الجهاز مرة واحدة في كل مرة يتم فيها إنشاء قناة RFCOMM لتدفق الرسائل.
إصدار البرنامج الثابت (رمز معلومات الجهاز 0x09) وإمكانية التتبُّع
عندما يضيف تحديث البرنامج الثابت ميزة "العثور على الأجهزة المفقودة" إلى "موفّر الخدمة"، يمكن لجهاز "الباحث" المتصل إعلام المستخدم بذلك واقتراح توفيرها. وبخلاف ذلك، على المستخدم الانتقال إلى قائمة أجهزة Bluetooth يدويًا لبدء عملية إعداد ميزة "العثور على هاتفي".
للسماح بذلك، على مقدّم الخدمة استخدام السمة "إصدار البرامج الثابتة" (الرمز 0x09) للإبلاغ عن قيمة سلسلة تمثّل إصدار البرامج الثابتة. بالإضافة إلى ذلك، يجب أن يتيح مقدّم الخدمة البروتوكول الذي يتيح للمستخدم معرفة التغييرات في الإمكانات الناتجة عن تحديثات البرامج الثابتة.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حدث معلومات الجهاز | 0x03 |
| 1 | uint8 | إصدار البرامج الثابتة | 0x09 |
| 2 - 3 | uint16 | حجم البيانات الإضافية | يختلف |
| var | مصفوفة البايت | سلسلة الإصدار | يختلف |
الجدول 18: حدث معلومات الجهاز: إصدار البرامج الثابتة المعدَّل.
عند تلقّي طلب تعديل إمكانية (0x0601)، إذا كان مقدّم الخدمة قد فعّل إمكانية تتبُّع FHN، عليه الردّ كما هو موضّح في الجدول 12.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حدث مزامنة إمكانات الجهاز | 0x06 |
| 1 | uint8 | تتبُّع FHN | 0x03 |
| 2 - 3 | uint16 | حجم البيانات الإضافية | 0x0007 |
| 4 | uint8 | حالة توفير المتطلبات اللازمة لميزة "شبكة المنزل الذكي" | 0x00 إذا لم يتم توفيرها، و0x01 إذا تم توفيرها من خلال أي حساب |
| 5 - 10 | مصفوفة البايت | عنوان MAC الحالي للجهاز على شبكة BLE | يختلف |
الجدول 19: حدث مزامنة إمكانات الجهاز: تمت إضافة إمكانية التتبُّع.
المعرّف المؤقت الحالي (رمز معلومات الجهاز 0x0B)
يمكن لموفّر الخدمة استخدام المعرّف المؤقت الحالي (الرمز 0x0B) لإرسال قيمة EID والساعة الحالية عند إعداد موفّر الخدمة لاستخدام FHN، وذلك لمزامنة جهاز الباحث في حال حدوث اختلاف في التوقيت (على سبيل المثال، بسبب استنزاف البطارية). بخلاف ذلك، يبدأ جهاز البحث اتصالاً أكثر تكلفة وأقل موثوقية لهذا الغرض.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حدث معلومات الجهاز | 0x03 |
| 1 | uint8 | المعرّف المؤقت الحالي | 0x0B |
| 2 - 3 | uint16 | حجم البيانات الإضافية | 0x0018 أو 0x0024 |
| 4 - 7 | مصفوفة البايت | قيمة الساعة | مثال: 0x13F9EA80 |
| 8 - 19 أو 31 | مصفوفة البايت | معرّف شريحة SIM المضمّنة الحالي | مثال: 0x1122334455667788990011223344556677889900 |
الجدول 20: حدث معلومات الجهاز: مزامنة الساعة
إعادة الضبط على الإعدادات الأصلية
بالنسبة إلى الأجهزة التي تتيح إعادة الضبط على الإعدادات الأصلية، في حال إجراء عملية إعادة ضبط على الإعدادات الأصلية، على "موفّر الخدمة" التوقّف عن إرسال إشارات البلوتوث ومحو مفتاح الهوية المؤقت وجميع مفاتيح الحسابات المخزّنة، بما في ذلك مفتاح حساب المالك.
بعد إعادة الضبط على الإعدادات الأصلية (إما يدويًا أو آليًا)، يجب ألا يبدأ مقدّم الخدمة في عرض إعلانات Fast Pair على الفور، وذلك لمنع بدء عملية الإقران مباشرةً بعد أن يحذف المستخدم الجهاز.
منع التتبُّع غير المرغوب فيه
يجب أن تستوفي أجهزة FHN المعتمَدة أيضًا المتطلبات الواردة في الإصدار التنفيذي من المواصفات المتوافقة مع عدة منصات بشأن اكتشاف أجهزة التتبُّع غير المرغوب فيها (DULT).
الإرشادات ذات الصلة الخاصة بـ FHN التي يجب اتّباعها للالتزام بمواصفات DULT:
- يجب تسجيل أي جهاز متوافق مع ميزة "العثور على الأجهزة القريبة" في "وحدة تحكّم الأجهزة المجاورة"، وتفعيل إمكانية "العثور على الجهاز".
- يجب أن يوفّر الجهاز خدمة وسمة "ملحق غير مملوك" محدّدتين في إصدار التنفيذ من مواصفات DULT، بما في ذلك عمليات معلومات الملحق وعناصر التحكّم غير المملوكة.
- خلال فترة التوافق مع الإصدارات القديمة، كما هو محدّد في مواصفات DULT، لن تطرأ أي تغييرات على الإطار المُعلن عنه كما هو محدّد في هذا المستند.
- يتوافق "وضع الحماية من التتبّع غير المرغوب فيه" المحدّد في هذا المستند مع "الحالة المنفصلة" المحدّدة في مواصفات DULT.
- إرشادات تنفيذ رموز العمليات معلومات الملحقات:
- يجب أن تعرض الدالة Get_Product_Data معرّف الطراز الذي توفّره وحدة التحكّم، مع إضافة أصفار إلى اليسار ليصبح المعرّف مؤلفًا من 8 بايت. على سبيل المثال، يتم عرض المعرّف 0xFFFFFF للطراز على النحو التالي: 0x0000000000FFFFFF.
- يجب أن تتطابق Get_Manufacturer_Name وGet_Model_Name مع القيم المقدَّمة في وحدة التحكّم.
- يمكن أن تعرض Get_Accessory_Category القيمة العامة "جهاز تتبُّع الموقع الجغرافي" إذا لم تتطابق أي فئة أخرى مع نوع الجهاز.
- يجب أن تشير Get_Accessory_Capabilities إلى إمكانية الرنين بالإضافة إلى البحث عن معرّف BLE.
- يجب أن تعرض الدالة Get_Network_ID معرّف Google (0x02).
- إرشادات تنفيذ رمز العملية Get_Identifier:
- يجب أن تعرض العملية ردًا صالحًا لمدة 5 دقائق فقط بعد أن يفعّل المستخدم وضع "التعرّف" الذي يتطلّب الضغط على مجموعة من الأزرار. يجب أن يشير تنبيه مرئي أو صوتي إلى أنّ مقدّم الخدمة قد دخل في هذا الوضع. يجب تقديم التعليمات الخاصة بطراز الجهاز لتفعيل هذا الوضع إلى Google كشرط للحصول على شهادة الاعتماد، وذلك قبل 10 أيام على الأقل من أي تحديث أو تعديل على التعليمات.
- يتم إنشاء الرد على النحو التالي: أول 10 بايت من المعرّف المؤقت الحالي، يليه أول 8 بايت من
HMAC-SHA256(recovery key, the truncated current ephemeral identifier).
- إرشادات تنفيذ المعرّف عبر تقنية NFC:
- استخدِم
find-my.googleapis.com/lookupكعنوان URL. - استخدِم الردّ نفسه الذي تم إنشاؤه من أجل Get_Identifier، مع ترميزه بنظام الستة عشر، وذلك كقيمة للمَعلمة
e. - استخدِم الردّ نفسه الذي تم إنشاؤه لطلب Get_Product_Data، مع ترميزه بنظام الستة عشرية، وذلك كقيمة للمَعلمة
pid.
- استخدِم
- ويجب أن يتضمّن الجهاز أداة إصدار صوت وأن يتيح استخدام وظيفة الرنين. وفقًا لمواصفات DULT، يجب أن يصدر صانع الصوت صوتًا بمستوى صوت يبلغ 60 Phon كحد أدنى وفقًا لمعيار ISO 532-1:2017.
- إرشادات تنفيذ رمز العملية Sound_Start:
- يجب أن يؤدي الأمر إلى إصدار رنين في جميع المكوّنات المتاحة.
- يجب استخدام الحد الأقصى لمستوى الصوت المتاح.
- المدة المقترَحة للرنين هي 12 ثانية.
- يجب أن تتضمّن أجهزة التتبّع آلية تتيح للمستخدمين إيقاف الإعلانات مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
- يجب توثيق تعليمات الإيقاف في عنوان URL متاح للجميع وتقديمها إلى Google كشرط للحصول على شهادة الاعتماد، وذلك قبل 10 أيام على الأقل من أي تعديل أو تغيير في التعليمات.
- يجب أن يتيح عنوان URL إمكانية الأقلمة. استنادًا إلى العميل، سيتم توفير اللغة إما كمعلَمة طلب بحث ("hl=en") أو باستخدام عنوان HTTP "accept-language".
إرشادات البروتوكولات القابلة للتبديل
- يجب استخدام بروتوكول واحد فقط في كل مرة. تأكَّد من عدم إمكانية تشغيل أكثر من شبكة واحدة على الجهاز في الوقت نفسه. هذا الشرط ضروري لضمان عدم الخلط بين بيانات المستخدمين الحسّاسة وبروتوكولات مختلفة.
- يُقترح تضمين عملية إعادة ضبط الجهاز على الإعدادات الأصلية في الجهاز، ما يتيح للمستخدم إعادة إعداد الجهاز باستخدام شبكة مختلفة.
- يجب أن تكون عملية تحديث الجهاز إلى شبكة ما سهلة الاستخدام وعادلة بين الشبكات. يجب أن يتمكّن المستخدم من اختيار الشبكة التي يريد استخدامها بدون تفضيل إحدى الشبكات على الأخرى. يجب أن يوافق فريق Google على هذا المسار.
تحديثات البرامج الثابتة
يجب أن يدير الشريك عملية توزيع التحديثات عبر الأثير باستخدام سير عمل التطبيق المتوافق مع الأجهزة الجوّالة أو تطبيق الويب الخاص به.
تتيح ميزة "الإقران السريع" إرسال إشعارات إلى المستخدم لإعلامه بتوفّر تحديثات عبر الأثير. لاستخدام هذه الآلية، يجب اتّباع الخطوات التالية:
- يجب تعديل أحدث إصدار من البرامج الثابتة في "وحدة تحكّم الأجهزة المجاورة".
- يجب ضبط تطبيق مصاحب في "وحدة تحكّم الأجهزة المجاورة". يجب أن يتوافق مع غرض تحديث البرامج الثابتة.
- على مقدّم الخدمة تنفيذ سمة GATT مراجعة البرامج الثابتة.
لمنع التتبُّع، يجب حظر الوصول إلى سمة مراجعة البرامج الثابتة. سيقرأ تطبيق Seeker أولاً حالة التوفير ويقدّم مفتاح مصادقة، كما هو محدّد في هذه المواصفات، ولن يقرأ مراجعة البرامج الثابتة إلا بعد ذلك. وسيتم ذلك عبر الاتصال نفسه. إذا تمت محاولة قراءة مراجعة البرامج الثابتة، ولم يتم ربط مقدّم الخدمة أو لم يتم إكمال عملية مصادقة بنجاح عبر الاتصال نفسه، يجب أن يعرض مقدّم الخدمة خطأ غير مصادق عليه.
التوافق
تتطلّب شبكة "مركز العثور" تفعيل خدمات الموقع الجغرافي والبلوتوث. ويجب توفُّر اتصال شبكة جوّال أو اتصال إنترنت. الميزة متاحة لأجهزة Android 9 والإصدارات الأحدث وفي بُلدان محدَّدة وللمستخدمين المؤهَّلين حسب الفئة العمرية.
سجلّ التغييرات
| إصدار FHN | التاريخ | تعليق |
|---|---|---|
| v1 | الإصدار الأولي من مواصفات FHN لاستخدامها قبل إطلاقها | |
| v1.1 | Feb 2023 |
|
| v1.2 | أبريل 2023 |
|
| v1.3 | ديسمبر 2023 |
|