خطة SingLinkVPN للمصدر المفتوح

Contents
المصدر المفتوح هو بداية الثقة طويلة الأمد.
أطلق SingLinkVPN رسميًا برنامجه للمصدر المفتوح والأبحاث التقنية، وأنشأ على GitHub المستودع الرسمي SingLinkVPN Open Source and Technical Research (المصدر المفتوح والأبحاث التقنية).
هذا ليس نشرًا لمرة واحدة ولا صفحة وثائق مخصصة للتصفح فقط، بل جهد هندسي طويل الأمد سيُحدَّث باستمرار ويتوسع بمرور الوقت.
المواد المتاحة اليوم هي المرحلة الأولى من البرنامج الأوسع.
تشمل المرحلة الأولى وثائق تقنية عامة، ونماذج للأمان والخصوصية، وأساليب قابلة لإعادة الإنتاج لاختبار الأداء، وصيغ بيانات قابلة للقراءة آليًا، وإطارًا لمجموعات البيانات العامة، وأدلة للتقارير، وأدوات بحثية، وإجراءً للإفصاح الأمني، ومعايير لنشر الأدلة.
في المراحل اللاحقة، يخطط SingLinkVPN لإصدار مزيد من المواد التقنية والتقارير البحثية والكود المصدري للمنتج على مراحل، رهنًا بمراجعات الأمان والخصوصية والترخيص واستقرار المنتج. وتشمل المجالات المخطط لها بروتوكول الـ VPN وتطبيقات الـ VPN وغيرها من تقنيات الـ VPN الأساسية التي تصلح للنشر بعد المراجعة.
لذلك فإن الإصدار الحالي ليس نهاية البرنامج، بل الخطوة الأولى في مسار مستمر للمصدر المفتوح.
يضم المستودع الرسمي حاليًا مجلدات docs وdata وreports وtools وtests وأتمتة GitHub، لصيانة الوثائق العامة والبيانات البحثية والمواد الأمنية واختبارات الأداء وأدوات التحقق المفتوحة. ويوصف المستودع صراحةً بأنه مشروع قيد الصيانة النشطة.
المستودع الرسمي: SingLinkLabs / singlink-vpn-open-source الحالة الحالية: المرحلة الأولى منشورة للعموم. وستُصدر المواد التقنية الإضافية والتقارير البحثية والكود المصدري للمنتج على مراحل.
لماذا يطلق SingLinkVPN برنامجًا للمصدر المفتوح?
يرتبط الـ VPN ارتباطًا وثيقًا بنقل الشبكة والأمان والخصوصية ومعالجة البيانات.
يعمل معظم خدمة الـ VPN داخل أنظمة لا يستطيع المستخدمون مراقبتها مباشرة. فقد يرى المستخدمون واجهة التطبيق وقائمة الخوادم وسرعة الاتصال ووصف المنتج، لكنهم لا يستطيعون بسهولة التأكد من:
- كيف قيست نتائج السرعة المنشورة؛
- ما إصدار البرنامج وبيئة الشبكة المستخدمان؛
- هل سُجّلت الاختبارات الفاشلة كاملة؛
- هل التصريح الأمني التزام سياسي أم اختبار داخلي أم تقييم مستقل؛
- هل يتضمن التقرير التواريخ والإصدارات والأساليب وسجل التصحيحات؛
- هل يستطيع باحث آخر إعادة إنتاج النتيجة؛
- هل يمكن تتبع التغييرات التقنية والأمنية عبر الإصدارات.
لا تستطيع تصريحات العلامة التجارية وحدها الإجابة الكاملة عن هذه الأسئلة.
يهدف البرنامج إلى تحويل المعلومات التقنية والأمنية والمتعلقة بالخصوصية والأداء لدى SingLinkVPN من ادعاءات منتج إلى مواد عامة يستطيع الآخرون فحصها والاستشهاد بها والتحقق منها وإعادة إنتاجها ومواصلة التدقيق فيها.
ويتطلب ذلك منظومة نشر مستمرة لا مجرد وضع ملفات على الإنترنت:
- يجب أن يكون للمواد التقنية المهمة إصدار محدد؛
- يجب أن تحدد الادعاءات القابلة للقياس تاريخ الاختبار وبيئته؛
- يجب أن تدعم نتائج الأداء بيانات مقابلة؛
- يجب التمييز بوضوح بين الاختبارات الداخلية وتقييمات الأطراف الثالثة؛
- يجب أن تترك التصحيحات الجوهرية سجلًا عامًا؛
- يجب إصدار الكود المصدري للمنتج على مراحل بعد المراجعة الأمنية؛
- يجب أن يتمكن المجتمع من فحص بنية البيانات واكتمالها بأدوات عامة.
يشترط المستودع أن يتضمن كل ادعاء قابل للقياس تاريخ الاختبار وإصدار البرنامج والبيئة والأسلوب وحجم العينة والبيانات الخام أو المجمّعة والقيود المعروفة. ولا تُعامل صيغ التفضيل غير القابلة للتحقق مثل «الأسرع» أو «الأكثر أمانًا» أو ادعاءات الخصوصية المطلقة على أنها أدلة.
ما المتاح في المرحلة الأولى?
تُرسي المرحلة الأولى ثمانية مسارات عمل عامة:
- بنية تطوير الـ VPN والوثائق التقنية العامة؛
- سجلات منتج SingLinkVPN وإصداراته؛
- نموذج للأمان والخصوصية؛
- أساليب قابلة لإعادة الإنتاج لاختبار الأداء؛
- صيغ بيانات الاختبار وإطار لمجموعات البيانات العامة؛
- أدلة لتقارير الأمان والأداء والشفافية؛
- أدوات مفتوحة للتحقق من البيانات وللبحث؛
- الإبلاغ عن الثغرات والإفصاح المسؤول.
توفر هذه المسارات معًا الأساس اللازم لنشر الكود المصدري لاحقًا وللبيانات العامة والأبحاث المستقلة.
1. بنية عامة لتطوير الـ VPN ووثائق تقنية
تتضمن المرحلة الأولى بنية لتطبيق VPN متعدد المنصات.
وهي ليست مرتبطة بلغة برمجة أو نظام تشغيل واحد، بل تصف الوحدات الرئيسية التي يحتاجها تطبيق VPN متعدد المنصات، بما في ذلك واجهته ودورة حياة الاتصال وإدارة النفق والتوجيه وDNS والإعدادات واختبارات الأمان والتشخيص المحلي.
1. طبقة الواجهة
تعرض طبقة الواجهة حالة الحساب واختيار الخادم وحالة الاتصال والأخطاء ونتائج التشخيص وميزات إمكانية الوصول.
يجب أن تُستمد حالة الاتصال المعروضة في الواجهة من آلة حالات الاتصال الفعلية، لا من مجرد ضغط المستخدم على زر الاتصال.
2. طبقة تنسيق الجلسات
تتولى هذه الطبقة:
- الاتصال؛
- قطع الاتصال؛
- إعادة المحاولة التلقائية؛
- تغيّرات الشبكة؛
- سكون الجهاز واستيقاظه؛
- إعادة تشغيل التطبيق؛
- التعافي بعد انقطاع غير طبيعي.
ويجب أن تمنع نتائج الاتصال القديمة من الكتابة فوق العمل الأحدث، وأن تضمن ألا تُحدث الإجراءات المتكررة تعارضات.
3. طبقة محوّل النفق
تتكامل هذه الطبقة مع واجهات VPN البرمجية الأصلية في أنظمة التشغيل المختلفة، بما في ذلك:
- إدخال الحزم وإخراجها؛
- دورة حياة النفق؛
- ضبط MTU؛
- صلاحيات نظام التشغيل؛
- قيود التشغيل في الخلفية؛
- استدعاءات انقطاع النفق.
4. طبقة التوجيه وDNS
تدير هذه الطبقة:
- المسارات الافتراضية؛
- تقسيم النفق (split tunnelling)؛
- المسارات المستثناة؛
- اختيار DNS؛
- سياسة IPv4 وIPv6؛
- الوصول إلى الشبكة المحلية؛
- الحماية من تسرب DNS والمسارات.
لا يمكن أن يقتصر اختبار التسرب على الاتصال الأول، بل يجب أن يشمل أيضًا إعادة الاتصال وتغيّرات الشبكة والسكون والاستيقاظ والإنهاء غير الطبيعي للتطبيق.
5. طبقة النقل
طبقة النقل مسؤولة عن الجلسات الموثّقة وسلوك النقل والتعامل مع الازدحام وسياسة الإبقاء على الاتصال (keepalive) والانتقال بين الشبكات.
6. طبقة الإعدادات
تعالج طبقة الإعدادات الإعدادات البعيدة ذات الإصدارات والموقّعة والمقلّصة إلى الحد الأدنى، وترفض الإعدادات غير الصالحة أو منتهية الصلاحية أو المخفّضة إلى إصدار أقدم.
7. طبقة قابلية المراقبة
مع مراعاة ضمانات الخصوصية، توفر هذه الطبقة:
- حالة السلامة المحلية؛
- تشخيص الاتصال؛
- تصنيف الأخطاء؛
- مخرجات اختبار قابلة لإعادة الإنتاج؛
- بيانات حالة تقنية لا تتضمن نشاط الشبكة الخاص بأي مستخدم.
يغطي الإصدار الحالي البنية عالية المستوى ومبادئ التطوير الآمن. ولن تُضاف وحدات أكثر تفصيلًا وكود مصدري إلا بعد اكتمال المراجعات المقابلة.
2. سجل منتج عام ذو إصدارات
أنشأ SingLinkVPN أيضًا سجلًا عامًا للمنتج يفصل بين أنواع المعلومات المختلفة.
حقائق المنتج
وتشمل:
- المنصات المدعومة؛
- الإصدارات العامة؛
- تواريخ الإصدار؛
- مصادر التنزيل الرسمية؛
- المجاميع الاختبارية (checksums) المتاحة؛
- التغييرات الجوهرية في الميزات والتوافق.
أوصاف البنية
تقدّم تصاميم عالية المستوى دون كشف الأنظمة الحساسة أو بيانات الاعتماد أو بيئات الإنتاج.
نتائج القياس
يجب أن تتضمن نتائج الأداء والنتائج التقنية تاريخها وأسلوبها وبيئتها وعينتها والبيانات الداعمة لها.
التصريحات السياسية
تغطي عمليات المنتج والتزامات الأمان والخصوصية. ولا يُقدَّم التصريح السياسي على أنه تحقق مستقل.
يساعد هذا الفصل على منع الخلط بين السياسة والاختبار الداخلي وتفاصيل التنفيذ والأبحاث المستقلة. وستتضمن سجلات الإصدار الرسمية تدريجيًا المنصة والإصدار والتاريخ والمصدر والمجاميع الاختبارية المتاحة والتغييرات الجوهرية في الأمان والتوافق والقيود المعروفة ووسوم Git غير القابلة للتغيير أو روابط Release.
3. نموذج عام للأمان والخصوصية
لا يمكن وصف الأمان فقط بكلمات مثل «آمن» أو «مشفّر».
لذلك تنشر المرحلة الأولى نموذجًا للأمان والخصوصية يحدد المخاطر التي ينبغي أن تفحصها الاختبارات والتقارير والتقييمات المستقلة اللاحقة.
يشمل نطاق التهديدات الحالي:
- مراقبة حركة المرور على الشبكة المحلية؛
- تسرب DNS؛
- تسرب IPv6؛
- تسرب WebRTC؛
- انقطاع المسارات أثناء إعادة الاتصال؛
- حماية حركة المرور عند الانتقال بين Wi-Fi وشبكات الهاتف المحمول؛
- التعديلات الخبيثة على الإعدادات البعيدة؛
- خفض الإعدادات إلى إصدار أقدم؛
- كشف بيانات الاعتماد المخزنة على الجهاز؛
- مخاطر الاعتماديات من أطراف ثالثة؛
- مخاطر سلسلة التوريد في البناء والإصدار؛
- إساءة استخدام الحسابات؛
- الجلسات غير المصرّح بها؛
- الجمع المفرط لبيانات التشخيص أو الدعم.
يجب أن يحدد كل اختبار أمني عام:
- إصدار التطبيق المتأثر؛
- نظام التشغيل؛
- تاريخ الاختبار؛
- ظروف الشبكة؛
- الأسلوب؛
- السلوك المتوقع؛
- السلوك الملاحظ؛
- القيود المعروفة.
كما يفصل النموذج بين السياسة ووثائق البنية والاختبار الداخلي وتقييم الأطراف الثالثة.
لا يجوز وصف أي تقرير بأنه تقييم من طرف ثالث إلا إذا صدر عن مقيّم أو باحث مستقل مسمّى ودعمه تقرير قابل للتحقق. وبهذا يُرسى معيار متسق وقابل للتدقيق لتقارير الأمان المستقبلية.
4. أسلوب قابل لإعادة الإنتاج لاختبار أداء الـ VPN
يتأثر أداء الـ VPN بعوامل خارجية كثيرة:
- دولة المختبِر أو منطقته؛
- مزوّد الإنترنت الثابت أو المحمول؛
- جودة الشبكة المحلية؛
- العبور الدولي؛
- وقت اليوم؛
- أداء الجهاز؛
- إصدار التطبيق؛
- البروتوكول؛
- حِمل الخادم؛
- خادم الاختبار؛
- منطقة الوجهة.
لذلك لا تمثّل سرعة قصوى واحدة تجربة الجميع.
يشترط الأسلوب المنشور أن يتضمن كل سجل:
- وقت الاختبار بتوقيت UTC؛
- معرّفًا فريدًا للاختبار؛
- إصدار التطبيق؛
- نظام التشغيل؛
- نوع الجهاز؛
- تسمية البروتوكول؛
- إصدار المنهجية؛
- دولة الاختبار أو منطقته؛
- نوع الشبكة؛
- عدد العينات؛
- مستوى الدليل.
المقاييس الرئيسية هي:
الوسيط لزمن استجابة الاتصال
وسيط زمن الاستجابة بالمللي ثانية عبر عينات متعددة، بدلًا من أفضل نتيجة واحدة.
التذبذب عند المئين 95
المستوى الأعلى من تفاوت زمن الاستجابة الملاحظ عبر معظم العينات.
معدل فقدان الحزم
نسبة الحزم المفقودة أثناء الاختبار.
الوسيط لسرعة التنزيل
وسيط إنتاجية التنزيل بالـ Mbps عبر عينات متعددة.
الوسيط لسرعة الرفع
وسيط إنتاجية الرفع بالـ Mbps عبر عينات متعددة.
معدل نجاح الاتصال
النسبة المئوية للمحاولات الناجحة في اختبارات الاتصال المتكررة.
الوسيط لزمن إعادة الاتصال
الوقت الوسيط اللازم للتعافي بعد تغيّر الشبكة أو انقطاعها.
سير العمل الرسمي هو:
- تسجيل الشبكة الأساسية دون الـ VPN؛
- تثبيت الجهاز والشبكة والوجهة ونافذة أخذ العينات؛
- إجراء تحمية لا تُحتسب؛
- تكرار اختبارات الاتصال والنقل؛
- الاحتفاظ بالعينات الفاشلة بدلًا من حذفها بصمت؛
- نشر النتائج المجمّعة والبيانات القابلة للقراءة آليًا؛
- الإفصاح عن القيود المعروفة والانقطاعات والعينات المستبعدة.
يجب أن تستخدم الاختبارات المتماثلة ظروفًا قابلة للمقارنة. ويجب الإفصاح عن أي تغيير في المزوّد أو المسار أو الجهاز أو خادم الاختبار أو نافذة أخذ العينات. وستُضاف مجموعات بيانات مؤرخة وذات إصدارات وقابلة للتنزيل وفق هذا الأسلوب مع استمرار الاختبارات.
5. صيغة عامة لبيانات الاختبار قابلة للقراءة آليًا
إلى جانب التقارير المقروءة للبشر، ينشر SingLinkVPN صيغة لبيانات الأداء قابلة للقراءة آليًا.
يشترط JSON Schema أن يتضمن كل سجل أداء:
- test_id: معرّف الاختبار؛
- tested_at_utc: وقت الاختبار بتوقيت UTC؛
- client_version: إصدار التطبيق؛
- platform: منصة الاختبار؛
- protocol_label: تسمية البروتوكول؛
- country: دولة الاختبار أو منطقته؛
- network_type: نوع الشبكة؛
- sample_count: عدد العينات؛
- latency_ms_median: الوسيط لزمن الاستجابة؛
- jitter_ms_p95: التذبذب عند المئين 95؛
- packet_loss_pct: معدل فقدان الحزم؛
- download_mbps_median: الوسيط لسرعة التنزيل؛
- upload_mbps_median: الوسيط لسرعة الرفع؛
- connection_success_pct: معدل نجاح الاتصال؛
- reconnect_ms_median: الوسيط لزمن إعادة الاتصال؛
- methodology_version: إصدار الأسلوب؛
- evidence_level: مستوى الدليل.
يمكن حاليًا وسم الأدلة بأنها:
- اختبار داخلي؛
- إعادة إنتاج مستقلة؛
- تقييم من طرف ثالث.
تتيح الصيغة للمطورين والباحثين فحص الحقول المطلوبة ونطاقات القيم مباشرةً، واستخدام البنية نفسها لإعادة الإنتاج والمقارنة، بدلًا من الاعتماد فقط على الرسوم البيانية أو الاستنتاجات السردية.
6. تقارير الأمان والأداء والشفافية
يضم المستودع مجلدًا مخصصًا للتقارير من أجل النشر المستمر لما يلي:
- تقارير الأمان؛
- تقارير الأداء؛
- أبحاث الخصوصية؛
- تقارير الشفافية؛
- تقييمات الأطراف الثالثة؛
- النتائج المعاد إنتاجها بشكل مستقل؛
- نشرات الإصلاحات الأمنية الجوهرية.
قبل النشر، يجب أن يذكر كل تقرير رسمي:
- تاريخ النشر؛
- المؤلف أو المسؤول عن الصيانة؛
- إصدار المنتج المتأثر؛
- الأسلوب؛
- مصدر البيانات؛
- مستوى الدليل؛
- القيود المعروفة؛
- سجل التصحيحات.
تستخدم الاختبارات الداخلية والتقييمات المستقلة تسميات مختلفة. وتُرسي المرحلة الأولى بنية التقارير وقواعد الأدلة وإطار الإصدارات؛ وستُضاف التقارير عندما تصبح بياناتها ومراجعتها جاهزة، بدلًا من نشرها مرة واحدة ثم إهمالها.
7. أدوات مفتوحة للتحقق والبحث
تنشر المرحلة الأولى أيضًا عدة أدوات بحث وتحقق مكتوبة بلغة Python.
publication_guard.py
تفحص هذه الأداة الوثائق والبيانات والأدوات قبل النشر بحثًا عن:
- بيانات الاعتماد؛
- صيغ المفاتيح؛
- المسارات الخاصة؛
- الملفات المضغوطة؛
- الملفات الثنائية؛
- أنواع الكود المصدري غير المعتمدة للنشر؛
- الملفات كبيرة الحجم؛
- الصيغ الشائعة للأسرار الحية؛
- المحتوى الذي قد يصف أنظمة حساسة.
validate_benchmark.py
تتحقق هذه الأداة من ملفات CSV لاختبارات الأداء، بما في ذلك:
- أسماء الأعمدة؛
- الحقول المطلوبة؛
- النطاقات الرقمية؛
- تسميات الأدلة؛
- بنية بيانات الاختبار.
check_relative_links.py
تفحص هذه الأداة الروابط النسبية في ملفات Markdown وتتأكد من وجود الملفات العامة المشار إليها.
check_multilingual_seo.py
تفحص هذه الأداة الوثائق متعددة اللغات والبنية المتعلقة بمحركات البحث للمساعدة على إبقاء المواد الإنجليزية والصينية المبسطة والصينية التقليدية متسقة.
هذه الأدوات ليست نواة اتصال الـ VPN، بل بنية تحتية للنشر تهدف إلى تقليل أخطاء التنسيق والروابط المعطلة والكشف العرضي للمعلومات الحساسة وعدم اتساق الإصدارات. ويمكن للمساهمين الخارجيين استخدام الأدوات نفسها على مساهماتهم.
8. معيار عام للأدلة من خمسة مستويات
المستوى الأول: تصريح سياسي
التزام بشأن المنتج أو الأمان أو التشغيل أو الخصوصية ينشره المسؤول عن الصيانة. وهو التزام علني، وليس دليلًا على التنفيذ ولا تدقيقًا مستقلًا.
المستوى الثاني: وثائق التنفيذ
وصف تقني عالي المستوى ذو إصدار، لا يتضمن عناوين الخوادم أو بيانات الاعتماد أو واجهات API الخاصة أو غيرها من المعلومات الحساسة.
المستوى الثالث: اختبار داخلي
اختبار تجريه SingLinkLabs وفق أسلوب عام مع التاريخ والإصدار والبيئة والبيانات.
المستوى الرابع: نتيجة معاد إنتاجها
نتيجة مستقلة يحصل عليها مطور أو باحث آخر باستخدام الأسلوب نفسه والبيانات العامة.
المستوى الخامس: تقييم من طرف ثالث
تقييم يجريه باحث أو جهة مستقلة مسمّاة مع تقرير رسمي قابل للتحقق.
هذه المستويات غير قابلة للتبادل. فلا يمكن وصف الاختبارات الداخلية بأنها تقييم من طرف ثالث، ولا يمكن معاملة السياسة على أنها تحقق مستقل، ونشر الأسلوب لا يعني أن النتيجة أُعيد إنتاجها بالفعل.
ينبغي أن يجيب كل تقرير عن: من توصّل إلى الاستنتاج، ومتى، وبأي إصدار، وبأي أسلوب؟
تتطلب التصحيحات الجوهرية Git commit جديدًا ومدخلًا في سجل التغييرات. ولا يجوز استبدال البيانات المنشورة بصمت، ويجب أن تبقى البيانات المستبدلة قابلة للتعرف عليها.
9. الإبلاغ عن الثغرات والإفصاح المسؤول
يجب أن يعمل النشر المفتوح والإفصاح الآمن معًا.
لا يجوز نشر الثغرات غير المصححة أو بيانات الاعتماد الحية أو نقاط النهاية الخاصة أو عناوين الخوادم أو بيانات المستخدمين في Issue عام.
يجب إرسال تقارير الثغرات بشكل خاص عبر عنوان البريد الإلكتروني الأمني أو GitHub Security Advisories، مع تحديدها بوضوح على أنها إفصاحات أمنية. وإذا لم يُنشر عنوان بريد أمني، فارجع إلى ملف `SECURITY.md` في المستودع ولا تخمّن عنوانًا.
ينبغي أن يتضمن التقرير:
- الإصدار المتأثر؛
- المنصة المتأثرة؛
- شروط إعادة إنتاج المشكلة؛
- الأثر الأمني؛
- طريقة آمنة للتواصل مع المُبلِّغ؛
- مواد لإعادة الإنتاج لا تحتوي على بيانات حقيقية لأي مستخدم.
تمر تقارير الأمان بالمراحل التالية:
- الفرز والتأكيد؛
- تقييم الأثر؛
- المعالجة؛
- إصدار نسخة مصححة؛
- مهلة معقولة للتحديث؛
- نشر نشرة أمنية.
تميّز النشرات العامة بين الأثر المؤكد والمخاطر الافتراضية، وتحدد الإصدارات المتأثرة والإصدارات المصححة.
10. البيانات العامة لا تعني نشر بيانات المستخدمين
يجب ألا تأتي الشفافية التقنية على حساب خصوصية المستخدمين.
يحظر المستودع أن تحتوي الـ Issues أو طلبات السحب (pull requests) أو مجموعات البيانات أو الوثائق البحثية على:
- البيانات الشخصية؛
- معرّفات الحسابات؛
- بيانات الدفع؛
- محادثات الدعم؛
- عناوين IP الخاصة؛
- رموز الوصول؛
- بيانات اعتماد بيئة الإنتاج؛
- سجلات بيئة الإنتاج؛
- حركة المرور الخام في بيئة الإنتاج؛
- بيانات اختبار يمكنها تحديد هوية شخص بعينه.
يجب أن تكون بيانات الأداء مجمّعة أو منزوعة الهوية. ويجب على المراجعين التأكد قبل النشر من أن مجموعة البيانات لا تحتوي على بيانات على مستوى الأفراد أو بيانات اعتماد أو مواد يمكنها تحديد هوية شخص حقيقي.
يجعل البرنامج التقنيات والأساليب والتقارير والكود المصدري الذي خضع للمراجعة شفافًا. ولا ينشر معلومات المستخدمين أو بيانات الخوادم الحساسة أمنيًا أو بيانات اعتماد بيئة الإنتاج.
11. كيف يمكن للمجتمع المشاركة?
يمكن للمطورين والباحثين الأمنيين وأعضاء المجتمع:
- تحسين الوثائق التقنية؛
- تصحيح أخطاء الوثائق؛
- تحسين الترجمات إلى الصينية التقليدية والصينية المبسطة والإنجليزية؛
- تحسين قابلية إعادة إنتاج أسلوب الاختبار؛
- تحسين جودة البيانات العامة؛
- تحسين إمكانية الوصول؛
- إضافة أدوات بحثية؛
- تحسين التحقق من الصيغ؛
- العثور على الروابط المعطلة؛
- اقتراح أساليب بحث عامة جديدة؛
- اقتراح تحسينات على تصميم الاختبارات؛
- إعادة إنتاج الاختبارات العامة ضمن قواعد الأمان.
يجب ألا تحتوي المساهمات على:
- كود مصدري للمنتج غير معتمد؛
- معلومات عن البنية التحتية الخاصة؛
- بيانات اعتماد أو مفاتيح؛
- بيانات المستخدمين؛
- نقاط نهاية خاصة؛
- سجلات بيئة الإنتاج؛
- تعليمات استغلال كاملة لثغرة غير مصححة.
ويجب أن تحدد كل مساهمة قابلة للقياس مصدرها وأسلوبها وتاريخها وقيودها.
هل يعني هذا أن SingLinkVPN أصبح الآن مفتوح المصدر بالكامل?
لا. هذه هي المرحلة الأولى وليست الأخيرة.
تعطي المرحلة الأولى الأولوية لما يلي:
- الوثائق التقنية؛
- بنية التطوير؛
- نماذج الأمان والخصوصية؛
- أساليب اختبار الأداء؛
- صيغ البيانات القابلة للقراءة آليًا؛
- أدوات التحقق؛
- سياسة الأدلة والنشر؛
- الإفصاح المسؤول؛
- إطار للتقارير وإصدارات الكود المصدري اللاحقة.
لا تتضمن المرحلة الأولى ما يلي:
- الكود المصدري الكامل لتطبيق الـ VPN؛
- الكود المصدري لجانب الخادم؛
- الكود المصدري لنظام الدفع؛
- إعدادات خوادم الإنتاج؛
- واجهات API الخاصة؛
- بيانات اعتماد المصادقة؛
- تفاصيل التنفيذ الحساسة المتعلقة بمقاومة الحجب أو مواجهة الشبكات المعادية؛
- الكود المصدري الكامل للبروتوكول الأساسي.
وهي ليست بالضرورة مستبعدة من البرنامج ككل، إذ تحتاج كل وحدة من وحدات المنتج إلى مراجعة منفصلة للأمان والخصوصية والاعتماديات والترخيص.
بعد اكتمال المراجعة، ستتضمن الإصدارات اللاحقة:
- مجلدًا محدد المعالم للمصدر المفتوح؛
- الترخيص المناسب؛
- سجل الإصدارات؛
- الحدود الأمنية؛
- سجل التغييرات؛
- تاريخ النشر؛
- وسم Git أو Release قابلًا للتحقق.
إن بناء معايير النشر وبنى البيانات وقواعد الأمان والأدوات البحثية أولًا يُرسي أساسًا أكثر أمانًا، ويقلل خطر كشف بيانات الاعتماد أو البنية التحتية أو بيانات المستخدمين أو كود الأطراف الثالثة الذي لا يجوز قانونًا إعادة توزيعه.
ستُحدَّد التراخيص مع إصدار المواد الإضافية
يمكن الاطلاع على المستودع الحالي علنًا، لكن تراخيص إعادة الاستخدام الكاملة للكود والمحتوى لا تزال قيد التنظيم حسب نوع المادة والكود المصدري.
إلى أن يُنشر ترخيص صريح، يجب ألا يفترض المستخدمون أنهم حصلوا على:
- حق النسخ؛
- حق التعديل؛
- حق إعادة التوزيع؛
- حق الاستخدام التجاري؛
- حق إعادة الترخيص.
الترخيص الواضح جزء أساسي من المصدر المفتوح الرسمي. وسيتضمن كل إصدار لاحق من الكود المصدري أو الوثائق أو البيانات أو الأدوات شروطًا تناسب اعتمادياته وتراخيص المصادر الأصلية والاستخدام المقصود.
يتجنب ذلك تطبيق ترخيص وحدة ما خطأً على وحدة أخرى، ويحمي المساهمين والمشاريع الأصلية والمستخدمين اللاحقين.
الاتجاه طويل الأمد للبرنامج
الاتجاه واضح: زيادة حجم المواد التقنية العامة القابلة للتحقق وإعادة الإنتاج باستمرار.
1. مواصلة توسيع الوثائق التقنية العامة
يشمل ذلك دورات حياة الاتصال والتوجيه وDNS وتغيّرات الشبكة والإعدادات الآمنة والاختبار على المنصات المختلفة.
2. مواصلة نشر سجلات المنتج ذات الإصدارات
ستضيف السجلات المنصات والإصدارات والتواريخ والمجاميع الاختبارية والتغييرات الجوهرية والقيود المعروفة وروابط استشهاد ثابتة.
3. مواصلة إضافة مجموعات بيانات أداء حقيقية
ستُنشر بيانات مؤرخة وذات إصدارات ومرتبطة ببيئات محددة وقابلة للقراءة آليًا وفق الأسلوب العام.
4. مواصلة نشر تقارير الأمان والأداء والشفافية
ستميّز التقارير بين السياسة والاختبار الداخلي وإعادة الإنتاج المستقلة وتقييم الأطراف الثالثة.
5. تشجيع إعادة الإنتاج المستقلة
يمكن للباحثين استخدام الأساليب والصيغ نفسها لمقارنة الشبكات والأجهزة والمناطق المختلفة.
6. مواصلة تحسين أدوات النشر والبيانات
ستتوسع الأتمتة لتشمل التنسيق والأمان والوثائق وسير عمل الاختبارات.
7. إصدار الكود المصدري لمنتج الـ VPN على مراحل
بعد مراجعة الأمان والخصوصية والاعتماديات والترخيص، ستُصدر تدريجيًا تقنيات البروتوكول والتطبيقات وغيرها من التقنيات الأساسية المخطط لها.
8. بناء سجل أكمل للإفصاحات والتصحيحات
سيكون للمشكلات الأمنية الجوهرية والإصدارات المتأثرة والإصدارات المصححة والتحديثات اللاحقة سجل واضح.
يحتوي المستودع على بيانات وصفية للاستشهاد. وينبغي للباحثين الاستشهاد بإصدارات Release الموسومة والـ commits غير القابلة للتغيير والتقرير أو مجموعة البيانات المؤرخة المستخدمة فعليًا، بدلًا من المواد الترويجية غير المؤرخة.
من التصريحات العامة إلى التحقق المستدام
لا ينبغي أن يكون المصدر المفتوح مجرد حدث إطلاق.
يتطلب المصدر المفتوح طويل الأمد الصيانة، ومشاركة خارجية، وترخيصًا واضحًا، وإدارة للإصدارات، وإصلاحات أمنية، ومواد تقنية يستطيع الآخرون التحقق منها وإعادة إنتاجها.
البدء بالوثائق وأساليب البحث وصيغ البيانات ومعايير الأدلة وبنى التقارير وأدوات التحقق يُرسي الأساس لنشر أوسع للكود المصدري.
أولًا: إنشاء نقطة دخول عامة
تُجمع المواد التقنية والأمنية والمتعلقة بالخصوصية والأداء التي كانت متفرقة سابقًا في مستودع GitHub قيد الصيانة.
ثانيًا: إرساء معايير النشر
يحدد البرنامج ما يمكن نشره، والحقول التي يجب أن تتضمنها الاختبارات، وكيفية تصنيف الأدلة، وطريقة تسجيل التصحيحات.
ثالثًا: إرساء الأساس للمصدر المفتوح لاحقًا
تُهيأ عمليات الأمان والخصوصية والترخيص وإدارة الإصدارات للتقارير ومجموعات البيانات والبروتوكولات والتطبيقات والوحدات الأخرى.
لذلك لا تقدّم المرحلة الأولى إصدارًا أوليًا محدودًا على أنه النتيجة الكاملة، بل تفتح مسارًا مصممًا للتوسع.
الأسئلة الشائعة (FAQ)
هل أطلق SingLinkVPN برنامجه للمصدر المفتوح رسميًا?
نعم. مستودع المصدر المفتوح والأبحاث التقنية الرسمي متاح، ووثائق المرحلة الأولى وأساليب البحث وصيغ البيانات وأدوات التحقق منشورة للعموم.
هل أصبح كل الكود المصدري للـ VPN عامًا الآن?
لا. سيُصدر الكود المصدري للبروتوكول والتطبيقات وغيرها من مكونات المنتج وحدةً تلو الأخرى بعد مراجعة الأمان والخصوصية والاعتماديات والترخيص.
لماذا لا يُنشر كل شيء دفعة واحدة?
قد يحتوي منتج VPN على معلومات خوادم الإنتاج وبيانات الاعتماد وواجهات API الخاصة وآليات دفاعية حساسة واعتماديات من أطراف ثالثة وكود خاضع لتراخيص مختلفة.
تقلل المراجعة المرحلية خطر كشف بيانات المستخدمين أو تفاصيل البنية التحتية أو بيانات الاعتماد الحية أو كود الأطراف الثالثة الذي لا يجوز إعادة توزيعه.
هل ستُنشر بيانات أداء حقيقية?
نعم. الأسلوب والصيغة القابلة للقراءة آليًا هما الخطوة الأولى. وستليها بيانات وتقارير مؤرخة وذات إصدارات مع البيئة وحجم العينة والقيود.
هل ستكون تقارير الأمان والشفافية عامة?
نعم. يضم المستودع مجلدًا مخصصًا للتقارير وقواعد للنشر. وستُضاف التقارير عندما تكون أدلتها وأساليبها وإصداراتها وقيودها جاهزة.
هل يعني نشر نموذج الأمان أن تدقيقًا من طرف ثالث قد اكتمل?
لا. نموذج الأمان أساس عام للاختبارات والتقييمات اللاحقة.
سيحدد أي تقييم من طرف ثالث الجهة المقيّمة ويرتبط بتقرير قابل للتحقق، ولن يُقدَّم على أنه اختبار داخلي.
بماذا يمكن للمطورين المساهمة?
يمكن للمطورين المساهمة في الوثائق والترجمة وأساليب البحث وجودة البيانات وإمكانية الوصول وأدوات التحقق وإعادة إنتاج الاختبارات.
يجب الإبلاغ عن الثغرات الأمنية بشكل خاص، لا نشرها في Issue عام.
هل ستحتوي البيانات العامة على بيانات المستخدمين?
لا. يجب أن تكون البيانات العامة مجمّعة أو منزوعة الهوية، ولا يجوز أن تحتوي على بيانات الحسابات أو بيانات الدفع أو عناوين IP الخاصة أو رموز الوصول أو سجلات الإنتاج أو حركة المرور الخام في بيئة الإنتاج.
الخلاصة: المصدر المفتوح هو بداية الثقة طويلة الأمد
برنامج SingLinkVPN للمصدر المفتوح انطلق الآن.
تُرسي المرحلة الأولى الوثائق التقنية وأساليب البحث ومعايير الأدلة وصيغ البيانات وقواعد الإفصاح وبنى التقارير وأدوات التحقق.
وستتبعها مزيد من تقارير الأمان والأداء والشفافية. وستُضاف مزيد من البيانات العامة بصيغة متسقة. وستُصدر مزيد من المواد التقنية والكود المصدري للمنتج على مراحل بعد مراجعة الأمان والخصوصية والترخيص.
هذا ليس إعلانًا لمرة واحدة للعلامة التجارية ولا الخطوة الأخيرة، بل جهد هندسي مستمر.
هدفنا تحويل المعلومات التقنية والأمنية والمتعلقة بالخصوصية والأداء لدى SingLinkVPN من مواد لا تصفها إلا العلامة التجارية إلى أدلة عامة يستطيع المجتمع فحصها والاستشهاد بها والتحقق منها وإعادة إنتاجها ومواصلة التدقيق فيها.
نرحب بالمطورين والباحثين الأمنيين ووسائل الإعلام التقنية وأفراد المجتمع الراغبين في تحسين الوثائق وإعادة إنتاج الأبحاث والتحقق من البيانات والمشاركة في النقاش التقني.
المصدر المفتوح هو بداية الثقة طويلة الأمد.
وهذه ليست إلا الخطوة الأولى.


