تخطَّ إلى المحتوى

ما وراء الابتكار. ما وراء الحدود. نحو الأثر.

اللغة
المظهر

كيف يعمل تطبيق Corona-Warn-App

يستطيع تنبيهك إلى أنك كنت قرب شخص ثبتت إصابته لاحقًا، دون أن يعرف أي خادم أنك كنت قرب أحد أصلًا. هذه هي البنية التي تتيح الأمرين معًا، وسبب كون الشفرة مفتوحة.

الكاتب
تاريخ النشر
زمن القراءة
٤دقيقة
السلسلة
برمجيات الجائحة الجزء ٢ من ٥

في ١٦ يونيو ٢٠٢٠ أطلقت ألمانيا تطبيق Corona-Warn-App، تطبيقها الرسمي لتتبّع المخالطة لكوفيد-١٩. وخلال أربع وعشرين ساعة نُزّل ملايين المرات، ليصير من أسرع تطبيقات الحكومات انتشارًا في التاريخ الأوروبي.

وبوصفنا شركة برمجيات لها قدم في السوق الألمانية، تابعنا تطويره عن قرب — فضولًا مهنيًا من ناحية، ولأنه دراسة حالة في كيفية شحن تطبيق حساس للخصوصية تحت تدقيق عام هائل من ناحية أخرى. وهنا ماذا يفعل التطبيق، وكيف يعمل في الداخل، ولماذا تهم قرارات بنيته.

ماذا يفعل التطبيق

الغرض بسيط: إن أمضيت وقتًا معتبرًا قرب شخص ثبتت إصابته لاحقًا بفيروس SARS-CoV-2، ينبّهك التطبيق لتفحص نفسك وتعزل قبل أن تنقل العدوى دون أن تدري.

والجزء الصعب هو فعل ذلك دون بناء قاعدة بيانات مركزية بمن قابل من.

البنية: لامركزية بالتصميم

نظرت ألمانيا في البداية في نموذج مركزي تُرفع فيه بيانات المخالطة إلى خادم حكومي. وبعد نقاش عام شارك فيه باحثو الخصوصية، تحوّلت الحكومة الاتحادية في أبريل ٢٠٢٠ إلى نهج لامركزي قائم على إطار Exposure Notification من Apple و Google. وهذا القرار هو أهم ما في التطبيق على الإطلاق.

وإليك المسار بعبارات بسيطة:

  1. هاتفك يبثّ معرّفات عشوائية. يرسل التطبيق عبر البلوتوث منخفض الطاقة معرّفات عشوائية قصيرة العمر تتغير كل بضع دقائق، ولا تحمل أي بيانات شخصية.
  2. هاتفك يسجّل ما يسمعه من معرّفات. تخزّن الهواتف القريبة التي تشغّل التطبيق معرّفات بعضها محليًا، مع قوة الإشارة والمدة، لأربعة عشر يومًا.
  3. نتيجة الإصابة تُوثَّق. إن ثبتت إصابتك أمكنك مشاركة نتيجتك في التطبيق. وخطوة توثيق — رمز QR من المختبر أو رمز TAN من خط ساخن — تضمن ألا تُرفع إلا النتائج الحقيقية.
  4. لا يغادر هاتفك سوى مفاتيحك. يرفع التطبيق المفاتيح التي اشتُقّت منها معرّفاتك العشوائية الأخيرة. لا موقع، ولا قائمة جهات اتصال، ولا اسم.
  5. كل هاتف يتحقق محليًا. ينزّل كل تطبيق بانتظام قائمة المفاتيح المنشورة ويطابقها مع المعرّفات التي سجّلها. وتجري المطابقة على جهازك لا على خادم.
  6. الخطر يُحسب على جهازك. يقدّر التطبيق خطر تعرّضك اعتمادًا على القرب والمدة، ويعرض تحذيرًا إن تجاوز عتبة معينة.

الخادم لا يعرف أبدًا من قابل من. وهذا هو المقصد.

لماذا تهم الشفرة المفتوحة

بنت SAP و Deutsche Telekom التطبيق لصالح الحكومة الاتحادية، ونُشرت الشفرة كاملة — تطبيقات الهاتف والخادم وخادم التوثيق — على GitHub قبل الإطلاق.

وهذا أمر لافت لأي مطوّر. فآلاف الأشخاص راجعوا الشفرة وفتحوا ملاحظات وقدّموا إصلاحات قبل أن يثبّته الجمهور أصلًا. أما بالنسبة للناس فقد عنى ذلك أن دعاوى الخصوصية قابلة للتحقق المستقل بدل أن تُؤخذ على الثقة. وانتشار تطبيق اختياري يعتمد على الثقة، والشفرة المفتوحة أوثق طريقة لكسبها.

حدود ينبغي معرفتها

التطبيق ليس حلًا سحريًا.

  • البلوتوث تقدير لا قياس. فقوة الإشارة عبر جدار أو داخل حقيبة غير دقيقة، ولذا تقع نتائج إيجابية خاطئة وأخرى سلبية خاطئة.
  • يحتاج إلى انتشار. فالفائدة تنمو مع مربع عدد المستخدمين؛ ولا يصدر تحذير إلا إذا كان الطرفان يشغّلان التطبيق.
  • يجب توصيل نتائج الفحوص. فالنتيجة الإيجابية لا تفيد إلا إذا استطاع المختبر أو مركز الفحص إيصالها إلى التطبيق برمز QR موثّق — وهذا يتطلب عمل تكامل من جهة المختبر. ونتوقع أن يصير هذا موضوعًا مهمًا مع اتساع الفحص.

ما يمكن لفرق البرمجيات تعلّمه

ثلاثة دروس نأخذها إلى مشاريعنا:

  1. الخصوصية قرار بنيوي لا وثيقة سياسات. فالنموذج اللامركزي يجعل إساءة الاستخدام مستحيلة تقنيًا لا ممنوعة فحسب.
  2. الشفافية تغلب التسويق. فنشر الشفرة فعل للانتشار ما لم تفعله أي حملة.
  3. التكامل هو ما تحيا به برمجيات الصحة العامة أو تموت. فالتطبيق لا يفيد إلا بقدر خطوط البيانات التي تغذّيه.

وسنعود إلى هذه النقطة الأخيرة. فنحن في داليندا ننظر بالفعل فيما يتطلبه انضمام مرافق الفحص إلى هذه المنظومة — والجواب أن الأدوات اللازمة لا تكاد توجد بعد.

كل المقالات

في هذه الصفحة

وأين يقف نظامك من هذا؟

تشرح المقالة كيف يعمل شيء ما، لكنها لا تقول ما يعنيه ذلك للنظام الذي تُشغّله بالفعل. ثلاثون دقيقة مع مهندس لا مع مندوب مبيعات، وبلا سلسلة متابعات.