احراز هویت – استفاده از دو نمک – یکی با رمز عبور ذخیره شده ، دیگری در یک ردیف تصادفی در یک جدول جداگانه ذخیره می شود

تصور کنید که یک سیستم ورود به سیستم ایجاد شده است ، و پسورد کاربر به این ترتیب حذف می شود:

 Users.password = sha384 (salt1 + password + salt2)

نتیجه ی این عمل و نمکی 1 به صورت جانبی در همان جدول ذخیره می شوند ، بیایید کاربران بگوییم.

salt2 ، با این حال ، این است. در یک ردیف تصادفی در یک جدول جداگانه ذخیره شده به نام UnorderedSalts .

هنگامی که کاربر سعی در ورود به سیستم کند ، سیستم اعتبار خود را با محاسبه چک می کند:

 for (let i = 0؛ i <UnorderedSalts. طول ؛ من ++)
  if (sha384 (Users.salt1 + input.password + UnorderedSalts [i]) === Users.password)
    بازگشت درست است؛ // مسابقه یافت شد!

بازگشت به دروغ؛ // هیچ کبریتی پیدا نشد

از آنجا که نمک2 در همان سطر ذخیره نشده است نمک و رمز عبور ، محاسبه باید بسته به در مورد چه تعداد کاربر تنظیم شده است.

سوال من این است:

  • آیا با افزایش زمان محاسبه احتمالی ، این سیستم برای سیستم ایمن تری ایجاد می کند؟
  • آیا این امنیت امنیتی رمز عبور را به خطر می اندازد؟
  • یا ، اصلاً فایده ای ندارد؟

</p>
<pre>احراز هویت - استفاده از دو نمک - یکی با رمز عبور ذخیره شده ، دیگری در یک ردیف تصادفی در یک جدول جداگانه ذخیره می شود<br />