PrivateSphare
PrivateSphare هي منصة آمنة ومجهولة الهوية وذات معرفة صفرية لتخزين الملفات ومشاركتها. تتيح للمستخدمين رفع الملفات والحصول على عبارة سرية مكونة من 24 كلمة لاسترجاعها. لا حسابات، ولا تتبع، ولا تلمس أي بيانات غير مشفرة التخزين الدائم للخادم.
🛡️ المميزات الرئيسية
- الأمن ما بعد الكم: يتم تشفير الملفات باستخدام مخطط هجين آمن كموميًا (Kyber1024 + AES-256-GCM) يحمي من تهديدات الحواسيب الكمومية المستقبلية.
- التشفير عديم المعرفة: يتم تشفير الملفات في سياق المتصفح (قصد العميل) باستخدام مفتاح مشتق من عبارة سرية مكونة من 24 كلمة وفق معيار BIP-39.
- خصوصية البيانات الوصفية: يتم تشفير أسماء الملفات وأنواع MIME قبل تخزينها في قاعدة البيانات.
- تخزين معتم: تُخزَّن الملفات في S3/MinIO تحت مفاتيح UUID عشوائية. حتى المسؤول لا يمكنه تحديد الملفات المخزنة.
- التدمير التلقائي:
- الانتهاء التلقائي: تُحذف الملفات تلقائيًا بعد 24 ساعة من الرفع عبر سياسات دورة حياة S3.
- المسح عند الاسترجاع: تُدمر الملفات والبيانات الوصفية فورًا بمجرد استرجاعها بنجاح.
- حدود مزدوجة: حد رفع قياسي 100 ميجابايت، قابل للرفع إلى 1 جيجابايت عبر رمز مميز.
- واجهة مستخدم حديثة: تصميم متجاوب بالكامل مع دعم تلقائي للوضع الداكن وتدفق أمان 'تم' لحماية العبارات السرية في سجل المتصفح.
🛠️ التقنيات المستخدمة
- الخلفية: Rust (Axum, Tokio, Tower-HTTP)
- قاعدة البيانات: SurrealDB (v2.1.4)
- التخزين: MinIO (متوافق مع S3)
- الواجهة الأمامية: قوالب Handlebars، Tailwind CSS
- الأمان: Argon2id KDF، Kyber1024 (PQC)، تشفير AES-256-GCM، تجزئة SHA-256، JWT (للجلسات المميزة)
🚀 البدء
المتطلبات الأساسية
- Docker و Docker Compose (أو Podman و Podman Compose)
1. الإعدادات
انسخ ملف البيئة النموذجي وقم بتحديث أسرارك:
قم بتحرير .env لتعيين SURREAL_PASS و S3_SECRET_KEY و PRIVATE_SPHARE_PREMIUM_CODE و PRIVATE_SPHARE_JWT_SECRET.
2. النشر
شغل الحزمة الكاملة:
docker-compose up -d --build
(أو podman-compose up -d --build)
سيكون التطبيق متاحًا على http://localhost:3000.
🔒 بنية الأمان
- اشتقاق المفتاح: يتم تجزئة العبارة السرية المكونة من 24 كلمة بـ SHA-256 ثم تمريرها عبر Argon2id مع ملح فريد بطول 16 بايت لاشتقاق بذرة بطول 64 بايت.
- الطبقة اللاحقة للكم: تُستخدم البذرة لتوليد زوج مفاتيح Kyber1024 بشكل حتمي. يتم تغليف سر مشترك باستخدام المفتاح العام، مما ينتج نصًا مشفرًا Kyber.
- التشفير المتماثل: يُستخدم السر المشترك لتشفير البيانات بـ AES-256-GCM.
- تخطيط التخزين: تحتوي الكتلة النهائية على الملح، العداد (nonce)، النص المشفر Kyber، والنص المشفر AES. يضمن هذا النهج الهجين أنه حتى إذا تم اختراق AES التقليدي، تظل طبقة PQC آمنة.
📜 الترخيص
أنشأه Daniel Shamany. مصمم للخصوصية.