الإنترنت مكانٌ خطيرٌ لترك البيانات الشخصية والمستندات دون حماية؛ فلا أحد يعلم متى سيسرقها.
لهذا السبب، نحتاج إلى طبقة حماية إضافية.
مع هذا التطبيق، يمكنك تشفير أي نوع من الملفات باستخدام تشفير AES-256، الأقوى!
• تشفير الملفات والصور والفيديوهات والموسيقى وأي نوع آخر من الملفات!
• يمكنك أيضًا تشفير مجلدات كاملة، وإنشاء حزمة واحدة تحتوي على عناصر مشفرة متعددة! (اضغط المجلد، ثم شفّر ملف zip).
• التشفير وفك التشفير (تُحفظ الملفات المُولّدة في نفس مجلد الملف الأصلي).
تشفير كلمة المرور
لزيادة أمان الملفات، يقوم هذا التطبيق أيضًا بتشفير كلمة المرور، مما يزيد من صعوبة اختراقها.
لهذا السبب، تأكد من تذكر كلمات مرورك، أو ربما يمكنك تدوينها لاستخدامها لاحقًا.
ملاحظة: إذا نسيت أو فقدت كلمة مرورك، فلن تتمكن من استعادة الوصول إلى ملفاتك، وقد تفقدها نهائيًا!
لهذا السبب، احرص على حماية كلمات مرورك جيدًا.
بروتوكول التشفير AES-256 ذو مستوى عسكري، مما يجعل اختراقه شبه مستحيل.
للمزيد من المعلومات، تفضل بزيارة:
https://cryptoid.com.br/criptografia/aes-padrao-de-criptografia-avancado-o-que-e-e-como-funciona/
البيانات التقنية:
1. خوارزميات وآليات التشفير
- اشتقاق المفتاح: PBKDF2 مع HmacSHA256، 100,000 تكرار، 16 بايت ملح.
مناسب لاشتقاق المفتاح بشكل آمن من كلمة المرور.
- التشفير: AES-256 في وضع CBC مع PKCS5Padding ومُدخل تهيئة (IV) بطول 16 بايتًا مُولّد بواسطة SecureRandom.
يُعد AES-CBC آمنًا عند دمجه مع المصادقة (MAC). يستخدم الكود التشفير ثم MAC بشكل صحيح.
- السلامة والموثوقية: HMAC-SHA256 عبر salt + IV + ciphertext.
يضمن الحماية من التعديلات والتلاعب.
2. معالجة كلمة المرور والمفتاح
- تُقرأ كلمة المرور من الواجهة، وتُنسخ إلى char[]، وتُستخدم، وتُمسح فورًا بعد الاستخدام.
- يُفصل المفتاح المشتق إلى جزأين AES وHMAC، ويُمسح بعد الاستخدام.
- المسح الزائد في قسم finally يحمي من تسريبات الذاكرة.
- ملاحظة: قد لا يكون مسح حقل Editable في سلسلة العمليات الخلفية مثاليًا.
3. التشفير وتدفق التخزين
- يكتب إلى الملف: salt، IV، البيانات المشفرة، متبوعة بـ HMAC.
- تعديل أذونات الملفات لتقييد الوصول.
- الاستخدام الصحيح للتدفقات لتحديث HMAC أثناء الكتابة.
4. تدفق فك التشفير والتحقق
- قراءة القيم الملحية (salt) والمتغيرات (IV)، واستخلاص المفاتيح، وحساب HMAC للتحقق من السلامة قبل فك التشفير.
- استخدام LimitedInputStream لتحديد طول النص المشفر الصحيح.
- فك التشفير باستخدام CipherInputStream، والكتابة إلى ملف مؤقت.
- حذف الملف المؤقت بأمان في حال حدوث خطأ.
- التحقق من السلامة قبل الكتابة فوق الملف النهائي.
5. معالجة الاستثناءات وتنظيفها
- معالجة الاستثناءات المحددة برسائل واضحة.
- تنظيف المتغيرات الحساسة وإغلاق التدفقات في قسم "final".
تاريخ التحديث
28/07/2025