الأمنكلمات المرور

التعامل مع كلمات المرور Password في كوكب Kawkab

في عالم تطوير التطبيقات الحديثة، يُعتبر حماية كلمات المرور أمرًا بالغ الأهمية لضمان أمان بيانات المستخدمين. في إطار عمل كوكب Kawkab، نوفر دوال مخصصة لتشفير كلمات المرور والتحقق منها بسهولة وأمان.


ما هي عملية حماية كلمة المرور؟

عملية حماية كلمة المرور تتضمن تحويل النصوص العادية (Plain Text) الخاصة بكلمات المرور إلى بصمات رقمية مشفرة باستخدام خوارزميات قوية.

مميزات هذه العملية:

  1. عدم قابلية القراءة: كلمة المرور المُشفرة لا يمكن قراءتها مباشرة.
  2. ثبات الأمان: تُستخدم خوارزميات آمنة لضمان حماية البيانات.
  3. التحقق السريع: يُمكن التحقق من صحة كلمة المرور دون معرفة النص الأصلي.

وظائف كلمات المرور في كوكب Kawkab

1. hash

دالة تُستخدم لإنشاء بصمة مشفرة لكلمة المرور.

  • تستخدم خوارزميات متقدمة لإنشاء البصمة.
  • يُفضل استخدامها أثناء عملية التسجيل أو تحديث كلمة المرور.

مثال:

import { password } from "kawkab";
 
const myPassword = "MySecurePassword123";
const hashedPassword = await password.hash(myPassword);
 
console.log(hashedPassword); 
// الناتج: سلسلة مشفرة مثل: "$2b$10$XfT...9lmJ"

خيارات إضافية:

يمكن تخصيص قوة التشفير (عدد الجولات - Salt Rounds) لضمان مزيد من الأمان.

const strongHash = await password.hash(password, 12);

2. verify

دالة تُستخدم لمقارنة كلمة المرور المُدخلة مع البصمة المُخزنة للتحقق من صحتها.

  • تُستخدم أثناء تسجيل الدخول أو العمليات التي تتطلب التحقق.

مثال:

import { password } from "kawkab";
 
const myPassword = "MySecurePassword123";
const hashedPassword = await password.hash(myPassword);
 
const isValid = await password.verify(myPassword, hashedPassword);
 
if (isValid) {
    console.log("كلمة المرور صحيحة.");
} else {
    console.log("كلمة المرور غير صحيحة.");
}

استخدامات عملية لكلمات المرور في التطبيقات

1. تسجيل المستخدمين الجدد

عند تسجيل المستخدم، تُشفّر كلمة المرور قبل تخزينها في قاعدة البيانات.

import { password } from "kawkab";
 
async function registerUser(username: string, password: string) {
    const hashedPassword = password.hash(password);
    console.log(`تم تسجيل المستخدم ${username} بكلمة مرور مشفرة: ${hashedPassword}`);
}
 
registerUser("Hassan", "Password123!");

2. تسجيل الدخول

عند محاولة تسجيل الدخول، تُقارن كلمة المرور المدخلة بالبصمة المخزنة.

import { password } from "kawkab";
 
async function loginUser(inputPassword: string, storedHash: string) {
    const isMatch = await password.verify(inputPassword, storedHash);
 
    if (isMatch) {
        console.log("تم تسجيل الدخول بنجاح.");
    } else {
        console.log("كلمة المرور غير صحيحة.");
    }
}
 
// مثال
loginUser("Password123!", "$2b$10$XfT...9lmJ");

مقارنة بين hash و verify

الوظيفةالمدخلاتالنتيجةالاستخدام
hashكلمة المرور النصيةبصمة مشفرةتشفير كلمات المرور عند التسجيل
verifyكلمة المرور النصية + البصمةtrue أو falseالتحقق عند تسجيل الدخول

نصائح عملية

  • لا تخزن كلمات المرور كنصوص عادية. استخدم دائمًا الدالة hash لتشفيرها.
  • اجعل عدد جولات التشفير (Salt Rounds) بين 10-14 للحصول على توازن بين الأداء والأمان.
  • عند التحقق، استخدم الدالة verify فقط لمقارنة كلمات المرور.

باستخدام وظائف كوكب Kawkab المخصصة لحماية كلمات المرور، يمكنك ضمان مستوى عالٍ من الأمان لمستخدميك والتقليل من المخاطر الأمنية.

Last updated on