التجزئة/التشفير
Argon2 Hash + Verify
تجزئة كلمات المرور باستخدام Argon2 (الفائز في Password Hashing Competition، RFC 9106) — بأنواع d/i/id، مع التحقق مقابل هاش موجود.
Argon2 is the Password Hashing Competition winner and the algorithm recommended in RFC 9106 for hashing passwords. Unlike bcrypt, it deliberately demands a lot of memory, not just CPU time, which makes attacks on specialized hardware (GPUs, ASICs) much harder.
How to use it
- Hash: enter a password, pick a variant (Argon2d, Argon2i, or Argon2id), and set the parameters (memory, iterations, parallelism) to get a hash.
- Verify: paste a password and an existing Argon2 hash to check whether they match, without hashing manually yourself.
- Argon2id is the recommended default for most applications — it combines the strengths of Argon2i and Argon2d.
Common uses
- Checking that a backend generates correct Argon2 hashes with the expected parameters before a release.
- Tuning memory and iteration parameters to fit within a server's response-time budget (typically 250-500ms).
- Comparing Argon2 against bcrypt or PBKDF2 when choosing an algorithm for a new project.
Things to keep in mind
The memory parameter is Argon2's main defense: the more memory hashing requires, the more expensive it is for an attacker to parallelize an attack on a GPU with limited fast memory per chip.
Argon2id is recommended for most cases: Argon2i resists side-channel attacks better, Argon2d resists GPU attacks better, and id combines both approaches.
مقالة عن هذه الأداة: Argon2: لماذا فازت هذه الخوارزمية بمسابقة تجزئة كلمات المرور
الأسئلة الشائعة
لماذا يُعتبر Argon2 الخيار الموصى به حاليًا لتجزئة كلمات المرور؟
Argon2 هو الفائز في مسابقة Password Hashing Competition، وهو "كثيف الذاكرة" (memory-hard)، ما يجعل تنفيذه بكفاءة على معدات متخصصة مثل GPU وASIC أصعب وأكلف مقارنة بخوارزميات أقدم.
ما الفرق بين أنواع Argon2i وArgon2d وArgon2id؟
Argon2i مصمم لمقاومة هجمات القناة الجانبية ويُناسب تجزئة كلمات المرور، وArgon2d أكثر مقاومة لهجمات كسر GPU لكنه عرضة للقنوات الجانبية، وArgon2id هجين يجمع مزايا النوعين وهو الموصى به افتراضيًا.
لماذا يستغرق حساب Argon2 وقتًا وذاكرة ملحوظين؟
هذا سلوك متعمد؛ زيادة معاملات الذاكرة والتكرارات ترفع تكلفة الهجوم بالتخمين الآلي بشكل كبير، على حساب زمن حساب أطول قليلًا للاستخدام الشرعي.
من أين جاء Argon2 كمعيار؟
فاز Argon2 في مسابقة Password Hashing Competition عام 2015 — وهي مسابقة مفتوحة لخبراء التشفير هدفها إيجاد أفضل خوارزمية لتجزئة كلمات المرور. منذ ذلك الحين توصي OWASP به كخيار أولوية على bcrypt.
هل معامل التوازي يسرّع التجزئة فقط؟
لا، فالمعامل نفسه يسرّع أيضًا محاولات التخمين لدى مهاجم يمتلك عتادًا متعدد الأنوية، لذا يجب ضبط التوازي بما يتناسب مع العدد الفعلي لأنوية الخادم، دون زيادته دون داعٍ.