ليه سرقة الهاش مش معناها اختراق الحساب؟

x32x01
  • بواسطة x32x01 ||

🔐 الأمان مش في إنك تخبي الداتا… الأمان إن الداتا تبقى بلا قيمة​

خلّينا نبدأ بالحقيقة اللي ناس كتير مش حابة تسمعها 😅
إنت كدا كدا ممكن تتسرق الشطارة بقى إن اللي يتسرق ما ينفعش في أي حاجة.
هنا بقى بيظهر مفهوم غلط منتشر حتى وسط ناس شغالة Tech 👇
إن: لو الـ hash اتسرق وهو ماشي في الـ network يبقى الحساب راح
وده… مش حقيقي خالص


🧠 ليه سرقة الـ hash مش معناها اختراق؟​

علشان ببساطة: الـ hash مش credential
الـ hash:
  • مش كلمة سر
  • مش مفتاح دخول
  • مش حاجة السيستم يقبلها من برّه
ولا سيستم في الدنيا بيقول: "ابعتلي الهاش وأنا هدخّلك" 😂


⚙️ السيستم بيعمل إيه فعلًا مع الباسورد؟​

السيناريو الحقيقي بيبقى كده 👇
1️⃣ السيستم يستقبل password كـ string
2️⃣ يعمل له hashing داخليًا
3️⃣ يقارن الناتج باللي متخزن في الـ database
مثال بسيط:
Code:
Rawan123! → X7s9#@!Qp
📌 hashing = تحويل في اتجاه واحد يعني مستحيل عمليًا ترجّع الباسورد الأصلي من الهاش.
بالتالي:
  • مفيش API
  • مفيش endpoint
  • مفيش سيناريو
السيستم فيه بيقبل hash جاي من برّه مباشرة.


🤔 طيب ولو الهاش اتسرق فعلًا؟​

سؤال في مكانه 👌 وهنا بقى يظهر السلاح السري الحقيقي 🧂

🧂 الـ Salt: اللي بيقفّل اللعبة على الآخر​

Salt من أذكى وأهم القرارات في تصميم أي Backend آمن. الفكرة ببساطة:
  • السيستم بيضيف قيمة عشوائية سرية
  • القيمة دي:
    • موجودة جوه السيرفر
    • مش باينة في الـ network
اللي بيحصل فعليًا: hash(password + salt)
الخطوات:
  • الباسورد يوصل للسيرفر
  • يتضاف له 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 السيستم
📌 الفرق بين سيستم آمن وسيستم تعبان:
  • مش أحدث تكنولوجيا
  • لكن قرارات تصميم ذكية من الأول
لو سمعت misconception غريب قبل كده شاركنا 👇 خلّينا نتعلم كلنا ✨
 
المواضيع ذات الصلة
x32x01
الردود
0
المشاهدات
636
x32x01
x32x01
x32x01
الردود
0
المشاهدات
30
x32x01
x32x01
x32x01
الردود
0
المشاهدات
608
x32x01
x32x01
x32x01
الردود
1
المشاهدات
249
x32x01
x32x01
x32x01
الردود
0
المشاهدات
573
x32x01
x32x01
الدخول أو التسجيل السريع
نسيت كلمة مرورك؟
إحصائيات المنتدى
المواضيع
2,275
المشاركات
2,487
أعضاء أكتب كود
547
أخر عضو
exozonlyperson
عودة
أعلى