
مكتبة Voron للتشفير/البروتوكول للمراسلة (X3DH-lite + Double Ratchet, group sender-keys, onion transport) — طلب مراجعة خارجية
هذا هو جوهر التشفير وبروتوكول التراسل لمشروع مراسلة صغير بتشفير E2EE، عُزل وحده للمراجعة الخارجية. وهو ليس المنتج كاملاً — تم استبعاد عميل Android وإعدادات النشر عمداً؛ هذا فقط الجزء الذي يحتاج إلى تدقيق.
common/ — المكتبة نفسها:
e2ee/ — X3DH-lite (اتفاق مفاتيح غير متزامن) مع Double Ratchet في الأعلى، مبني على Curve25519/ChaCha20-Poly1305/Ed25519/HKDF (بدائيات مقدمة من JDK، لا شيء مكتوب يدوياً في تلك الطبقة).crypto/ — أغلفة رقيقة فوق بدائيات JDK تلك.group/ — تراسل جماعي عبر مخطط sender-keys (النهج السابق لـ MLS الذي استخدمته مجموعات WhatsApp/Signal المبكرة)، بالإضافة إلى سجل أحداث بتسلسل تجزئة موقّع من جهة العميل للعضوية والأدوار، نظراً لأن المرحّل لا يملك أي مفهوم للمجموعات إطلاقاً.onion/ — ناقل تشفير طبقي اختياري (عدد قفزات ثابت، حشو بحاويات ذات حجم ثابت) لمنع المرحّل من الربط المباشر بين عنوان IP الخاص بالاتصال ومفتاح هويته.client/ وtransport/ وbackup/ — بروتوكول الاتصال (wire protocol)، ومصافحة ناقل Noise_IK، وتنسيق نسخ احتياطي مشفّر.server/ — تنفيذ مرحّل مرجعي: توجيه بالتخزين ثم الإرسال (store-and-forward)، ودليل مفاتيح prekey، وصندوق بريد دون اتصال، ودور قفزة البصل. مصمم عمداً على الحد الأدنى من الثقة: المرحّل لا يرى النص الصريح أبداً، ولا يحتفظ برسالة أطول من وقت تسليمها، و(بالتصميم) ليس لديه أي إدراك لعضوية المجموعات.client/ — أداة اختبار بسيطة على وحدة تحكم JVM (ليست تطبيقاً حقيقياً) تُستخدم لدفع common وserver ضد بعضهما في اختبارات التكامل، بالإضافة إلى عدد قليل من PoCs مستقلة للاستغلال (انظر أدناه).security-audit/ — تقارير من جولات المراجعة الداخلية السابقة، والأخطاء التي عثرت عليها، وتلك التي تم إصلاحها بالفعل. اقرأ هذا قبل الإبلاغ عن شيء — فهناك احتمال حقيقي أن يكون موجوداً هنا بالفعل. REPORT.md هو التقرير الرئيسي؛ وADVERSARIAL_REVIEW_PAVEL.md هو جولة لاحقة وأضيق نطاقاً؛ ويحتوي fuzz/ وclient/.../exploit/ على PoCs قابلة للتشغيل، وليست مجرد أوصاف.security-audit/ هي بالضبط "ماذا يمكن أن يفعل مرحّل عدائي؟".group/GroupCryptoSession.kt).security-audit/REPORT.md وADVERSARIAL_REVIEW_PAVEL.md، وليس شيئاً يتم إخفاؤه.common/src/main/kotlin/messenger/common/e2ee/) — هذا هو البناء التشفيري الوحيد المصمم خصيصاً هنا، وكل ما تحته مكوّنات جاهزة (off-the-shelf). تمت مراجعته داخلياً عدة مرات (انظر security-audit/) لكن لم تتم مراجعته من قبل أي شخص خارج هذا المشروع.common/src/main/kotlin/messenger/common/group/GroupControlLog.kt) — وهو تسلسل تجزئة موقّع من جهة العميل دون أي تطبيق من الخادم إطلاقاً../gradlew test
مشروع Gradle/Kotlin قياسي، يتطلب JDK 17+. لا حاجة لوصول إلى الشبكة أو خدمات قيد التشغيل لمجموعة اختبارات مستوى الوحدة. يحتوي security-audit/README.md على تعليمات لـ PoCs الخاصة بالفحص الحي للمرحّل (relay-fuzzing) وارتباط البصل، والتي تتطلب تشغيل عمليات محلية (لا توجّه أي جزء منها أبداً نحو مضيف إنتاج).
لم يتم إجراء أي تدقيق تشفيري مستقل على هذا. كل ما في security-audit/ هو مراجعة هندسية داخلية — دقيقة، لكنها مراجعة ذاتية، دون سند من براهين رسمية ودون سجل مهني/مؤسسي خلفها. تعامل معها كنقطة انطلاق للمراجعة، وليس كشهادة اعتماد.