تشفير localStorage لخزنة المتصفح
مهم: ما يغطيه هذا المقال
يشرح هذا المقال ميزة خزنة المتصفح الاختيارية - وهي أداة ملائمة لحفظ مفاتيح API في localStorage المتصفح الخاص بك مع تشفير كلمة المرور.
هذا ليس عن كيفية تخزين مفاتيح API على جانب الخادم. عندما تشتري مفتاح API، نقوم بتجزئة السر باستخدام bcrypt (13 جولة) قبل تخزينه في قاعدة البيانات الخاصة بنا. يتم مسح السر النصي بعد عرضك الأول له.
خزنة المتصفح اختيارية تماماً وتعمل بنسبة 100% في متصفحك. لنستكشف كيف تعمل.
تشفير فقط في المتصفح
عندما تحفظ مفتاح API في خزنة المتصفح الخاص بك، يحدث كل شيء من جانب العميل:
1. توليد ملح خاص بالجهاز
-
المرة الأولى فقط: توليد ملح عشوائي بحجم 32 بايت عبر
CryptoJS.lib.WordArray.random(32) -
مخزن في
localStorageباسمunsandbox_device_salt - فريد لجهازك ومتصفحك
2. اشتقاق معرف الخزنة
- تقدم كلمة مرور (8 أحرف كحد أدنى)
-
الدمج:
password + device_salt -
التجزئة:
SHA256(password + device_salt) - النتيجة تصبح معرف الخزنة الخاص بك
3. التشفير والتخزين
- مفاتيح API مشفرة باستخدام AES-256 مع كلمة المرور الخاصة بك
-
البيانات المشفرة مخزنة في
localStorageباسمunsandbox_vaults - معرف الخزنة يستخدم كمفتاح بحث
4. فك التشفير
- إعادة اشتقاق معرف الخزنة من كلمة المرور + ملح الجهاز
- البحث عن البيانات المشفرة باستخدام معرف الخزنة
- فك التشفير باستخدام كلمة المرور الخاصة بك
- المفاتيح توجد فقط غير مشفرة في الذاكرة
عزل الجهاز
نفس كلمة المرور على أجهزة مختلفة تنتج معرفات خزنة مختلفة:
-
الجهاز A:
SHA256("mypassword" + "salt_abc123")→ معرف الخزنة:def456... -
الجهاز B:
SHA256("mypassword" + "salt_xyz789")→ معرف الخزنة:ghi012...
حتى لو سرق شخص ما كلمة المرور الخاصة بك، لا يمكنه الوصول إلى خزنتك بدون localStorage الجهاز الخاص بك.
معمارية بدون معرفة
الخادم لا يستقبل أبداً:
- كلمة مرور الخزنة الخاصة بك
- ملح الجهاز الخاص بك
- معرف الخزنة الخاص بك
- مفاتيحك المشفرة
كل شيء يبقى في localStorage المتصفح الخاص بك. نحن حرفياً لا نستطيع الوصول إلى محتويات خزنتك حتى لو أردنا ذلك.
المقايضة
ما تحصل عليه ✅
- أقصى درجات الخصوصية - لا يمكننا الوصول إلى مفاتيحك
- لا يوجد خطر اختراق الخادم - لا يوجد شيء للاختراق
- أمان خاص بالجهاز
ما تتخلى عنه ❌
- لا يوجد مزامنة عبر الأجهزة
- لا يوجد استرداد لكلمة المرور
- اعتماد على localStorage - مسح بيانات المتصفح = فقدان دائم للبيانات
ماذا يحدث عندما تمسح localStorage؟
هذا حاسم: مسح localStorage هو فقدان دائم وغير قابل للاسترداد للبيانات.
عندما تمسح localStorage المتصفح الخاص بك، تفقد:
- ملح الجهاز - لا يمكن إعادة توليد معرفات الخزنة بعد الآن
- الخزنات المشفرة - جميع مفاتيح API المشفرة محذوفة إلى الأبد
إنه مثل حرق الخزنة وقفل التركيبة معاً. حتى لو تذكرت كلمة مرورك، لا يمكنك إعادة إنشاء نفس معرف الخزنة بدون ملح الجهاز الأصلي.
لماذا هذا في الواقع ميزة
- بداية نظيفة: إعادة ضبط كاملة للمصنع
- لا توجد بيانات معلقة: لا يمكن الوصول إلى الخزنات القديمة أو تسريبها
- تدمير ذاتي: البيانات لا تستمر إذا كنت لا تريد ذلك
- لا توجد أبواب خلفية: حتى أنت لا يمكنك استردادها
تصميم يعطي الأولوية للخصوصية في نهاية المطاف.
خصائص الأمان
حتمي لكل جهاز
- نفس كلمة المرور + نفس الجهاز = نفس معرف الخزنة (دائماً)
- يمكنك دائماً فتح خزنتك باستخدام كلمة المرور الصحيحة
مختلف لكل جهاز
- نفس كلمة المرور + جهاز مختلف = معرف خزنة مختلف
- الخزنات معزولة ولا يمكن نقلها
قوي تشفيرياً
- SHA-256 لاشتقاق معرف الخزنة (تجزئة أحادية الاتجاه)
- AES-256 للتشفير (درجة عسكرية)
- مكتبة CryptoJS (مختبرة جيداً، مستخدمة على نطاق واسع)
أفضل الممارسات
🔐 أمان كلمة المرور
- استخدم كلمة مرور قوية وفريدة (12+ حرف)
- لا يوجد استرداد لكلمة المرور - اختر بحكمة
💾 استراتيجية النسخ الاحتياطي
- قم بتصدير مفاتيحك من الخزنة المفتوحة لحفظها في مكان آخر
- احفظ المفاتيح المصدرة في مدير كلمات المرور أو ملف مشفر
- الخزنة للملاءمة، وليست للتخزين الأساسي
- لا توجد ميزة استيراد - يجب إعادة إدخال المفاتيح يدوياً إذا فقدت الخزنة
- تعامل مع مسح localStorage مثل تهيئة القرص الصلب
🧹 صيانة المتصفح
- كن حذراً عند مسح بيانات المتصفح
- “مسح السجل الحديث” أكثر أماناً من “مسح كل السجل”
- قم بتصدير المفاتيح قبل تبديل المتصفحات
المقارنة: خزنات جانب الخادم مقابل جانب العميل
| الميزة | جانب الخادم | جانب العميل (خاصتنا) |
|---|---|---|
| استرداد كلمة المرور | ✅ نعم | ❌ لا |
| مزامنة عبر الأجهزة | ✅ نعم | ❌ لا |
| تصدير الخزنة | ✅ نعم | ✅ نعم (JSON) |
| استيراد الخزنة | ✅ نعم | ❌ لا (إدخال يدوي) |
| يمكن للخادم الوصول إلى المفاتيح | ⚠️ تقنياً نعم | ✅ مستحيل |
| يبقى بعد مسح localStorage | ✅ نعم | ❌ لا |
| يتطلب حساب | ✅ نعم | ✅ لا |
| خاضع لأمر استدعاء | ⚠️ نعم | ✅ لا |
| بدون معرفة حقيقي | ❌ لا | ✅ نعم |
لقد اخترنا الأمان والخصوصية على الملاءمة. للمزامنة عبر الأجهزة، استخدم مدير كلمات مرور مخصص مثل 1Password أو Bitwarden أو KeePass.
الأسئلة الشائعة
س: هل يمكنني استرداد خزنتي إذا نسيت كلمة المرور؟ ج: لا. ليس لدينا كلمة المرور أو الملح أو المفاتيح الخاصة بك.
س: هل يمكنني استخدام نفس الخزنة على أجهزة متعددة؟ ج: لا. لكل جهاز ملح فريد.
س: ماذا يحدث إذا مسحت ذاكرة التخزين المؤقت للمتصفح؟ ج: ذاكرة التخزين المؤقت عادة آمنة، ولكن مسح localStorage يحذف خزنتك بشكل دائم.
س: هل يمكن لـ unsandbox.com الوصول إلى مفاتيحي المحفوظة؟ ج: لا. كل شيء مشفر في متصفحك.
س: هل هذا أكثر أماناً من مدير كلمات المرور؟ ج: مقايضات مختلفة. مديرو كلمات المرور يقدمون نسخ احتياطي ومزامنة. نحن نقدم خصوصية بدون معرفة. استخدم كليهما!
س: هل يمكنني تصدير خزنتي؟ ج: نعم! يمكنك تصدير جميع المفاتيح من خزنة مفتوحة كـ JSON. ومع ذلك، لا توجد ميزة استيراد - يجب إعادة إدخال المفاتيح يدوياً إذا فقدت خزنتك.
الخلاصة
خزنة المتصفح تعطي الأولوية للخصوصية والأمان على الملاءمة. مثالية للمستخدمين الذين يقدرون:
- أمان بدون معرفة
- تشفير من جانب العميل
- لا يوجد تخزين من جانب الخادم
- أقصى درجات الخصوصية
مفاتيحك، جهازك، كلمة مرورك. لا أحد آخر - حتى نحن - يمكنه الوصول إليها.
هذه هي الطريقة التي يجب أن تكون عليها. 🔐