- بواسطة x32x01 ||
🔐 الأمان مش في إنك تخبي الداتا… الأمان إن الداتا تبقى بلا قيمة
خلّينا نبدأ بالحقيقة اللي ناس كتير مش حابة تسمعها 😅إنت كدا كدا ممكن تتسرق الشطارة بقى إن اللي يتسرق ما ينفعش في أي حاجة.
هنا بقى بيظهر مفهوم غلط منتشر حتى وسط ناس شغالة Tech 👇
إن: لو الـ hash اتسرق وهو ماشي في الـ network يبقى الحساب راح
وده… مش حقيقي خالص ❌
🧠 ليه سرقة الـ hash مش معناها اختراق؟
علشان ببساطة: الـ hash مش credentialالـ hash:
- مش كلمة سر
- مش مفتاح دخول
- مش حاجة السيستم يقبلها من برّه
⚙️ السيستم بيعمل إيه فعلًا مع الباسورد؟
السيناريو الحقيقي بيبقى كده 👇1️⃣ السيستم يستقبل password كـ string
2️⃣ يعمل له hashing داخليًا
3️⃣ يقارن الناتج باللي متخزن في الـ database
مثال بسيط:
Code:
Rawan123! → X7s9#@!Qp بالتالي:
- مفيش API
- مفيش endpoint
- مفيش سيناريو
🤔 طيب ولو الهاش اتسرق فعلًا؟
سؤال في مكانه 👌 وهنا بقى يظهر السلاح السري الحقيقي 🧂
🧂 الـ Salt: اللي بيقفّل اللعبة على الآخر
Salt من أذكى وأهم القرارات في تصميم أي Backend آمن. الفكرة ببساطة:- السيستم بيضيف قيمة عشوائية سرية
- القيمة دي:
- موجودة جوه السيرفر
- مش باينة في الـ network
الخطوات:
- الباسورد يوصل للسيرفر
- يتضاف له salt
- يتعمله hashing
- الناتج يتخزن في الداتابيز
😎 طب الهاكر استفاد إيه لو شاف الهاش؟
ولا أي حاجة 🤷♂️ حتى لو:- لقّط request
- أو شاف hash في network
- نسخة من غير salt
- ومن غير إعدادات الخوارزمية
- ومن غير السياق الكامل
الهاكر ناقصه:
- ⚪ الباسورد الأصلي
- ⚪ الـ salt
- ⚪ الخوارزمية
- ⚪ إعدادات الخوارزمية
🐢 ليه بنستخدم خوارزميات بطيئة؟
إحنا مش بنستخدم أي hashing وخلاص.الخوارزميات الصح:
- bcrypt
- argon2
- scrypt
💣 يعني إيه Brute Force ببساطة؟
Brute Force يعني: “هجرب كل الاحتمالات الممكنة واحدة واحدة لحد ما واحدة تظبط”الخوارزميات دي مصممة إن:
- كل محاولة تكلف: وقت - فلوس - طاقة
🧩 مثال Backend بسيط (Node.js + bcrypt)
JavaScript:
const bcrypt = require('bcrypt');
const password = 'Rawan123!';
const saltRounds = 12;
const hash = await bcrypt.hash(password, saltRounds);
// وقت التحقق
const isValid = await bcrypt.compare(password, hash);
✅ الخلاصة
- الباسورد الحقيقي مش بيتخزن raw
- سرقة الهاش ≠ اختراق الحساب
- الأمان مش في الداتا
- الأمان في design السيستم
- مش أحدث تكنولوجيا
- لكن قرارات تصميم ذكية من الأول