تواصل معنا
Webflow Premium Partner إيهاب فايز
العودة لأدوات AI Coding
الأمان والجودة

Argon2 Password Hashing

استخدام Argon2 الفائز بمسابقة تجزئة كلمات المرور لأمان كلمات المرور الأحدث في Node.js.

Claude Code Cursor Copilot Windsurf Gemini CLI

نظرة عامة

Argon2 هو الفائز بمسابقة تجزئة كلمات المرور لعام 2015 وتوصي به OWASP كخوارزمية تجزئة كلمات المرور المفضلة. توفر مكتبة node-argon2 روابط Node.js للتنفيذ المرجعي بلغة C مع تقديم ثلاثة أنواع: Argon2d (مقاوم لـ GPU) وArgon2i (مقاوم للقنوات الجانبية) وArgon2id (هجين، موصى به).

على عكس bcrypt يتيح Argon2 ضبط استخدام الذاكرة والتوازي وتكلفة الوقت بشكل مستقل. هذا التصميم الصعب على الذاكرة يجعله أكثر مقاومة بشكل ملحوظ لهجمات الاختراق القائمة على GPU وASIC. يجمع النوع الافتراضي Argon2id بين نقاط قوة Argon2d وArgon2i مما يوفر مقاومة ضد كل من هجمات القنوات الجانبية وGPU.

توفر مكتبة node-argon2 واجهة برمجة تطبيقات غير متزامنة بسيطة مع إعدادات افتراضية معقولة تتبع توصيات OWASP. تولد تلقائياً أملاحاً آمنة تشفيرياً وترمّز المعلمات بتنسيق سلسلة PHC وتدعم التحقق من التجزئات المنشأة بمعلمات مختلفة. هذا يجعل من السهل ترقية معلمات الأمان بمرور الوقت دون إبطال تجزئات كلمات المرور الحالية.

لمن هذه الأداة؟

  • تجزئة كلمات المرور بخوارزمية Argon2id الصعبة على الذاكرة
  • الترقية من bcrypt إلى Argon2 لأمان أقوى
  • تكوين تكلفة الذاكرة والوقت لأجهزة محددة
  • التحقق من كلمات المرور مع اكتشاف المعلمات تلقائياً

التثبيت

إعداد Claude Code
npm install argon2

الإعدادات

import argon2 from "argon2"

// Hash with Argon2id (default, recommended)
const hash = await argon2.hash(password, {
  type: argon2.argon2id,
  memoryCost: 65536, // 64 MB
  timeCost: 3,
  parallelism: 4,
})

// Verify
const isValid = await argon2.verify(hash, password)