• 0

ما هي salt في sql؟

لديّ سؤال في SQL، ما هي salt وهل لها علاقة بالـ password؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يمكن القول أيضًا بأنّ salt هي إضافة مجموعة من الحروف أو الكلمات إلى أوّل أو آخر أو وسط كلمة السر لحماية أفضل ، ومن ثم يتم حذف هذا الجزء عند مناداة الكلمة من قاعدة البيانات والتثبت فيما إذا كانت مطابقة لكلمة السر المُدخلة ويكون  الكود كالتالي :

عند القيام بحفظ كلمة السر في قاعدة البيانات:

$password = (string) $_GET['password']; //User password

$salt = str_pad((string) rand(1, 1000), 4, '0', STR_PAD_LEFT); // This is the salt

$user_password = sha512($password . $salt) . $salt; // Concatenate hash with salt

عند تسجيل المستخدم للدخول (أي في حالة إذ أردت التثبت من مطابقة كلمة السر المدخلة)

$password = (string) $_GET['password']; //Entered password

// Of course you must select the data from the database 
//I removed this step for make the code more easy to understand
$user_password = $row['user_password']; // User password from database

// extract the salt
// just cut off the last 4 chars
$salt = substr($user_password, -4);
$hash = substr($user_password, 0, -4);

// verify
if (sha512($password . $salt) == $hash) {
  echo 'match';
}

هذا فقط وسيعمل كل شئ بنجاح 

المزيد حول salt

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

Salt هي توليد بيانات بشكل عشوائي  Random وإضافتها إلى قيمة مدخلة مسبقا ككلمة سر -Password- بهدف الحماية  ورفع درجة الأمان حتى يصعب اختراق كلمة السر، إذ تُوفّر نظام إدارة قواعد البياناتSQL إمكانية فعل ذلك، إليك مثال عملي:

 DECLARE @Salt VARCHAR(25);


  -- Generate the salt
  DECLARE @Seed int;
  DECLARE @LCV tinyint;
  DECLARE @CTime DATETIME;

  SET @CTime = GETDATE();
  SET @Seed = (DATEPART(hh, @Ctime) * 10000000) + (DATEPART(n, @CTime) * 100000) 
      + (DATEPART(s, @CTime) * 1000) + DATEPART(ms, @CTime);
  SET @LCV = 1;
  SET @Salt = CHAR(ROUND((RAND(@Seed) * 94.0) + 32, 3));

  WHILE (@LCV < 25)
  BEGIN
    SET @Salt = @Salt + CHAR(ROUND((RAND() * 94.0) + 32, 3));
 SET @LCV = @LCV + 1;
  END;

ليكون الناتج كلمة سر محمية  وصعبة فك التشفير.

مصادر:

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن