Skip to content

أداة تشفير AESGCM/CBC/CTR

أداة تشفير AES مجانية أونلاين — AES-128/192/256، GCM/CBC/CTR، عبارة مرور (PBKDF2) أو مفتاح خام. تعمل 100% داخل متصفحك؛ لا شيء يُرفع.

بدون تتبّع يعمل في المتصفّح مجاني
كل شيء يعمل داخل متصفحك — مفتاحك وبياناتك لا يغادران هذه الصفحة أبدًا.
موصى به
حجم المفتاح
نوع المفتاح
خيارات متقدّمة
النص المشفّر
بحاجة إلى صفحة فك التشفير المخصّصة؟
تمت مراجعته للدقّة التعموية مقابل FIPS 197 وNIST SP 800-38D وOWASP ومواصفة W3C Web Cryptoفريق أمان Go-Tools · Jul 16, 2026

ما هو تشفير AES؟

AES ‏(معيار التشفير المتقدّم، Advanced Encryption Standard) هو خوارزمية تشفير كتل متماثلة، وحّدها المعهد الوطني الأمريكي للمعايير والتقنية NIST في وثيقة FIPS 197 عام 2001، استنادًا إلى تصميم Rijndael لـJoan Daemen وVincent Rijmen. يُشفِّر البيانات في كتل ثابتة بطول 128 بت باستخدام مفتاح بطول 128 أو 192 أو 256 بت، ونفس المفتاح يُشفِّر ويفكّ التشفير معًا. إنه حصان العمل في التعمية الحديثة، إذ يحمي كل شيء من حركة HTTPS إلى تشفير الأقراص.

خوارزمية تشفير الكتل الخام تُشوِّش كتلة واحدة فقط بطول 16 بايت، لذا يعمل AES دائمًا ضمن وضع تشغيل يربط الكتل ببعضها. تُتيح هذه الأداة ثلاثة أوضاع، جميعها مُوفَّرة أصليًا عبر Web Crypto API الخاص بالمتصفح: GCM وCBC وCTR. ‏GCM ‏(وضع Galois/Counter، NIST SP 800-38D) هو الافتراضي الموصى به لأنه مُصادَق عليه — إذ يُنتج وسم مصادقة بطول 128 بت إلى جانب النص المشفّر، فيُكتشف أي عبثٍ عند فك التشفير. أما CBC وCTR فيوفّران السرّية فقط؛ ولا يستطيعان بمفردهما إخبارك إن كان النص المشفّر قد عُدِّل، وهذا سبب إسقاط TLS 1.3 ‏(RFC 8446) لكل مجموعات تشفير CBC لصالح أوضاع مُصادَق عليها مثل GCM.

ستلاحظ عدم وجود وضع ECB هنا، وهذا مقصود. يُشفِّر ECB كل كتلة نص صريح متطابقة إلى نفس كتلة النص المشفّر، فيتسرّب البنية الكبيرة مباشرةً — صورة «بطريق ECB» الشهيرة تبقى بطريقًا واضحًا حتى بعد التشفير. يُغفِل Web Crypto API وضع ECB لهذا السبب بالضبط (فهو ينفّذ فقط AES-CBC وAES-CTR وAES-GCM)، ونحن كذلك. إذا احتجت للتوافق مع نظام قديم استخدم ECB، فاعتبر ذلك سببًا لترحيله، لا لإعادة إنتاج ضعفه.

بما أن معظم الناس يكتبون عبارة مرور بدلًا من مفتاح عشوائي بطول 32 بايت، تشتق الأداة مفتاح AES من عبارة مرورك باستخدام PBKDF2-HMAC-SHA256 بـ600,000 تكرار وملح عشوائي بطول 16 بايت، بما يطابق إرشادات OWASP الحالية لتخزين كلمات المرور (وكذلك NIST SP 800-132 الذي يتطلّب ملحًا لا يقل عن 128 بت). هذا يجعل تخمين عبارة مرور ضعيفة بالقوة الغاشمة بطيئًا، لكنه ليس سحرًا: هذه أداة لتعلّم الأوضاع، وتصحيح النصوص المشفّرة، والبيانات الشخصية العابرة — وليست لحماية الأسرار الإنتاجية، التي تنتمي إلى نظام إدارة مفاتيح مخصّص. للحصول على عبارة مرور قوية، ولِّد واحدة عبر مولّد كلمات المرور العشوائية؛ ولمفتاح عشوائي حقيقي، استخدم مولّد مفتاح السر.

// AES-256-GCM with a passphrase (PBKDF2-HMAC-SHA256, 600,000 iterations).
// Identical code runs in the browser and in Node.js 20+ via Web Crypto.
async function aesGcmEncrypt(plaintext, passphrase) {
  const enc = new TextEncoder();
  const salt = crypto.getRandomValues(new Uint8Array(16));
  const iv = crypto.getRandomValues(new Uint8Array(12));
  const baseKey = await crypto.subtle.importKey(
    'raw', enc.encode(passphrase), 'PBKDF2', false, ['deriveKey']);
  const key = await crypto.subtle.deriveKey(
    { name: 'PBKDF2', salt, iterations: 600000, hash: 'SHA-256' },
    baseKey, { name: 'AES-GCM', length: 256 }, false, ['encrypt']);
  const ct = new Uint8Array(await crypto.subtle.encrypt(
    { name: 'AES-GCM', iv }, key, enc.encode(plaintext)));
  const packed = new Uint8Array([...salt, ...iv, ...ct]); // salt(16) | iv(12) | ct+tag
  return btoa(String.fromCharCode(...packed));            // self-contained Base64
}

الميزات الرئيسية

تشفير مُصادَق عليه بـGCM افتراضيًا

ينتج GCM النص المشفّر إضافةً إلى وسم مصادقة بطول 128 بت، فيفشل فك التشفير بصوتٍ عالٍ إذا تغيّر بايت واحد. ‏CBC وCTR على بُعد نقرة واحدة عندما تحتاج للتوافق معهما.

نص مشفّر ذاتي الاحتواء

يُدمِج وضع عبارة المرور الملح العشوائي وIV والوسم في سلسلة Base64 واحدة، فلا يحتاج من يفكّ التشفير سوى عبارة المرور — دون حقول منفصلة لنسخها أو لفقدانها.

عبارة مرور أو مفتاح خام

اكتب عبارة مرور (تُمدَّد بـPBKDF2-HMAC-SHA256، 600,000 تكرار) أو الصق مفتاحًا دقيقًا بطول 128/192/256 بت بترميز سداسي عشري أو Base64، مع شارة حيّة لعدد البايتات تؤكّد الطول.

إخراج متوافق مع OpenSSL

فعِّل وضع OpenSSL لإخراج صيغة Salted__ التي يقرؤها أمر openssl enc وCryptoJS، مع عرض أمر سطر الأوامر المكافئ حيًّا لتتمكّن من إعادة إنتاجه في الطرفية.

‏100% داخل متصفحك

يُشفَّر كل بايت محليًا عبر Web Crypto API. افتح تبويب «الشبكة» ولن ترى شيئًا يغادر الصفحة — بل يعمل حتى دون اتصال.

إخراج Base64 أو سداسي عشري

انسخ الناتج بأي ترميز يتوقّعه نظامك المستهدف، وافحص أطوال الملح وIV والنص المشفّر والوسم في شريط تفصيل المقاطع.

أمثلة تشفير AES

GCM + عبارة مرور (ذاتي الاحتواء وغير حتمي)

The quick brown fox jumps over the lazy dog.
الملح (16 بايت) + IV (12 بايت) + النص المشفّر + الوسم (16 بايت)، بترميز Base64 — قيمة جديدة في كل تشغيل

بالوضع GCM، وحجم مفتاح 256، ونوع مفتاح عبارة مرور، وعبارة المرور hunter2، تُشفَّر هذه الجملة إلى سلسلة واحدة ذاتية الاحتواء بترميز Base64. شفِّرها مرتين وستحصل على ناتجَين مختلفين تمامًا — وهذا مقصود. يُنشئ وضع عبارة المرور ملحًا جديدًا طوله 16 بايت وIV جديدًا طوله 12 بايت في كل عملية تشفير، فلا ينتج عن النص الصريح نفسه أبدًا نصٌّ مشفّر مطابق، ولا يستطيع مراقِبٌ معرفة أن رسالتين متطابقتان. يُظهر شريط المقاطع أسفل المُخرَج التخطيط الدقيق: الملح، ثم IV، ثم النص المشفّر مع وسم GCM المُلحَق بطول 128 بت. لفك التشفير، لا يحتاج المستلِم سوى عبارة المرور ونفس الوضع وحجم المفتاح — إذ يسافر الملح وIV والوسم جميعًا داخل السلسلة.

إخراج متوافق مع OpenSSL (‏CBC + عبارة مرور)

Attack at dawn!
U2FsdGVkX18AESIzRFVmd1PBwxIFQpF+VgIhTK0aDHQ=

فعِّل وضع التوافق مع OpenSSL بالوضع CBC، ونوع مفتاح عبارة مرور، وعبارة المرور correct-horse، ودالة اشتقاق المفتاح PBKDF2 بـ10,000 تكرار. عندئذٍ تُخرِج الأداة صيغة OpenSSL Salted__: نص Base64 يبدأ دائمًا بـU2FsdGVkX1، وهو ترميز Base64 لترويسة Salted__ ذات الثمانية بايتات. ولأن ملحًا عشوائيًا جديدًا بطول 8 بايتات يُولَّد في كل مرة، تتغيّر السلسلة الدقيقة في كل تشغيل، لكن كل واحدة منها تُفَكّ عبر سطر الأوامر بالأمر: echo 'U2FsdGVkX18AESIzRFVmd1PBwxIFQpF+VgIhTK0aDHQ=' | openssl enc -d -aes-256-cbc -pbkdf2 -iter 10000 -pass pass:correct-horse -base64 -A — الذي يطبع Attack at dawn!. اختر EVP-MD5 بدل PBKDF2 لمطابقة CryptoJS أو OpenSSL 1.0.2 وما قبله. لاحظ أن أمر openssl enc لا يدعم GCM، لذا فوضع OpenSSL يقتصر على CBC فقط.

كيف تُشفِّر النص بـAES

  1. 1

    اختر الوضع وحجم المفتاح

    اترك الوضع على GCM (موصى به) وحجم المفتاح على 256 للحصول على أقوى افتراضي معقول. لا تبدِّل إلى CBC أو CTR إلا إذا تطلّب ذلك نظام تستهدفه.

  2. 2

    اختر عبارة المرور أو المفتاح الخام

    أبقِ نوع المفتاح على عبارة المرور وأدخل عبارة مرور قوية، أو بدِّل إلى مفتاح خام والصق مفتاحًا دقيقًا بطول 128/192/256 بت بترميز سداسي عشري أو Base64. تؤكّد شارة عدد البايتات ما إذا كان مفتاحك الخام بطول صحيح.

  3. 3

    أدخل النص المراد تشفيره

    اكتب أو الصق نصّك الصريح. يعمل التشفير تلقائيًا أثناء الكتابة، بالكامل داخل متصفحك — دون رحلة ذهاب وإياب عبر زر ودون رفع.

  4. 4

    انسخ النص المشفّر ذاتي الاحتواء

    ناتج Base64 على اليمين يحتوي بالفعل على الملح وIV ووسم المصادقة. استخدم شريط المقاطع لرؤية تخطيط البايتات، ثم اضغط «نسخ». بدِّل ترميز المُخرَج إلى سداسي عشري إذا كان النظام المستهدف يتوقّعه.

  5. 5

    فكّ تشفيره لاحقًا عند الحاجة

    أعطِ النص المشفّر وعبارة المرور ونفس الوضع وحجم المفتاح للمستلِم، أو افتح صفحة فك تشفير AES لعكس العملية بنفسك.

أخطاء شائعة في تشفير AES

الخلط بين عبارة المرور والمفتاح الخام

يجب أن يكون المفتاح الخام بالضبط 16 أو 24 أو 32 بايت من بيانات عشوائية (تُدخَل بترميز سداسي عشري أو Base64)؛ أما عبارة المرور فهي أي نص ويجب تمديدها بدالة اشتقاق مفتاح أولًا. اختيار مفتاح خام ولصق عبارة مرور بشرية إما يُخطئ بسبب الطول أو ينتج مفتاحًا ضعيفًا.

✗ خطأ
Key type: Raw key
Key (hex): correct horse battery staple   (not hex, not 32 bytes)
✓ صحيح
Key type: Passphrase
Passphrase: correct horse battery staple   (stretched with PBKDF2)

إعادة استخدام IV مع نفس المفتاح

يجب أن يكون IV فريدًا لكل رسالة تحت مفتاح معيّن. إعادة استخدامه قاتلة لـGCM (قد تُسرِّب مفتاح المصادقة) وتكسر السرّية في CBC وCTR. دَع الأداة تولّد IV عشوائيًا جديدًا في كل مرة.

✗ خطأ
// same key, same IV for two messages
encrypt(key, iv, a); encrypt(key, iv, b);
✓ صحيح
// fresh random IV each time (the default)
encrypt(key, randomIV(), a);

فقدان الملح أو IV أو الوسم

إذا نسخت بايتات النص المشفّر فقط وأسقطت الملح/IV المُلحَقين في البداية — أو وسم GCM المُلحَق في النهاية — فلن تُفكّ شيفرة البيانات أبدًا. احتفظ بالسلسلة ذاتية الاحتواء كاملةً، لا بمنتصفها فقط.

✗ خطأ
stored = ciphertext              // salt + IV + tag thrown away
✓ صحيح
stored = salt + iv + ciphertext + tag   // the full Base64 string

توقّع تطابق مُخرَج GCM في كل تشغيل

يستخدم GCM (ووضع عبارة المرور عمومًا) ملحًا وIV عشوائيَّين، فيُشفَّر النص نفسه إلى سلسلة Base64 مختلفة في كل مرة. هذه ميزة أمان، لا علّة — فهي تعني أن مُتنصِّتًا لا يستطيع معرفة أن نصّين مشفَّرين يُشفِّران نفس الرسالة.

✗ خطأ
assert(encrypt(msg) === encrypt(msg))   // fails — and should
✓ صحيح
assert(decrypt(encrypt(msg)) === msg)   // this is what must hold

ماذا يمكنك أن تفعل بتشفير AES

تعلّم كيف تتصرّف أوضاع AES
بدِّل بين GCM وCBC وCTR بنفس المُدخَل لترى كيف تتغيّر المصادقة وطول IV وحجم النص المشفّر. طريقة عملية لفهم ما تُحدِّده NIST SP 800-38D فعليًا.
أنتِج نصًّا مشفّرًا يستطيع نظام آخر قراءته
ولِّد مُخرَجًا بصيغة OpenSSL Salted__ (أو كمفتاح خام مع IV) بحيث يستطيع خادم خلفي أو سكربت أو زميل يستخدم openssl أو مكتبة تعمية فك تشفيره دون عناء.
شفِّر ملاحظة أو مقتطفًا قصيرًا
احمِ قطعة نص شخصية عابرة — عبارة استرداد تنقلها بين أجهزتك، أو مقتطفًا في تذكرة دعم — بعبارة مرور لا يعرفها سواك. غير مخصّصة للأسرار الإنتاجية أو الخاضعة للتنظيم.
صمِّم نموذج تشفير أوليًا
حدِّد تخطيط الملح/IV/الوسم وإعدادات دالة اشتقاق المفتاح هنا قبل كتابة الكود، باستخدام تفصيل المقاطع لتأكيد ترتيب البايتات وأطوالها.
ولِّد متّجهات اختبار
أنشئ نصًّا مشفّرًا معروفًا بعبارة مرور ووضع ثابتين لتغذية اختبارات فك التشفير الخاصة بك، ثم تحقّق من دورة التشفير وفك التشفير الكاملة على صفحة فك تشفير AES.

أوضاع AES واشتقاق المفتاح

GCM ‏(وضع Galois/Counter) — مُصادَق عليه، وموصى به
سرّية إضافةً إلى وسم مصادقة بطول 128 بت (NIST SP 800-38D). يستخدم IV بطول 96 بت (12 بايت)، مُولَّدًا عشوائيًا في كل تشفير، ويتوازى كلٌّ من التشفير وفك التشفير جيدًا. القاعدة الوحيدة التي يجب ألا تخرقها أبدًا: لا تُعِد استخدام IV مع نفس المفتاح أبدًا. يحدّ SP 800-38D مفتاحًا واحدًا بنحو 2^32 من قيم IV المولَّدة عشوائيًا، وتكرارها يُسرِّب حاصل XOR لنصّين صريحين وقد يكشف حتى مفتاح المصادقة الذي يحمي الوسم. الأفضل لكل شيء تقريبًا.
CBC ‏(تسلسل الكتل المشفّرة) — سرّية فقط
تُخضَع كل كتلة لعملية XOR مع كتلة النص المشفّر السابقة، باستخدام IV عشوائي بطول 16 بايت. لا مصادقة مدمجة فيه، لذا يجب إقرانه بـMAC منفصل — تشفير ثم MAC، على سبيل المثال عبر مولّد HMAC لدينا — وهو عرضة تاريخيًا لهجمات أوراكل الحشو (Vaudenay, EUROCRYPT 2002). يُقدَّم هنا للتوافق البيني مع OpenSSL والأنظمة الأقدم.
CTR ‏(العدّاد) — سرّية فقط، أشبه بالانسيابي
يحوِّل CTR خوارزمية AES إلى شفرة انسيابية بتشفير عدّاد، فيعمل مع أي طول بايتات دون حشو، وتتوازى الكتل بحرّية. مثل CBC، لا يوفّر أي سلامة بمفرده، وإعادة استخدام العدّاد/IV تحت مفتاح واحد كارثية. مفيد عندما تحتاج وصولًا عشوائيًا أو دلالات بثّ.
ECB — غير مُتاح (بحكم التصميم)
يُشفِّر ECB ‏(دفتر الشيفرات الإلكتروني) كل كتلة بشكل مستقل، فتُنتج كتل النص الصريح المتطابقة كتل نص مشفّر متطابقة وتتسرّب الأنماط — «بطريق ECB» سيّئ الصيت. يتعمّد Web Crypto API عدم تنفيذه، ونحن كذلك. إذا تطلّب نظير قديم ECB، فاعتبر ذلك خللًا يجب إصلاحه لا صيغة يجب إعادة إنتاجها.
اشتقاق المفتاح: 600,000 مقابل 10,000 مقابل تكرار واحد
في وضع عبارة المرور الافتراضي تستخدم هذه الأداة PBKDF2-HMAC-SHA256 بـ600,000 تكرار (نفس تجزئة SHA-256 مُطبَّقة مئات آلاف المرّات) مع ملح بطول 16 بايت، وفق OWASP. في وضع التوافق مع OpenSSL، يفترض PBKDF2 10,000 تكرار فقط (افتراضي أمر openssl enc)، بينما تُجري دالة EVP_BytesToKey القديمة التي يستخدمها CryptoJS وOpenSSL القديم تمريرة MD5 واحدة فقط — أضعف بمراتب. كلما زادت التكرارات، بطُؤ التخمين بالقوة الغاشمة لكل محاولة، وهذا سبب ارتفاع الافتراضي الحديث كثيرًا. ‏Argon2 وscrypt أقوى، لكنهما ليسا جزءًا من Web Crypto، لذا فهما خارج نطاق هذه الأداة؛ ولتخزين كلمات المرور، اتّبع OWASP وفضِّل Argon2id.

أفضل ممارسات تشفير AES

فضِّل GCM ما لم يتطلّب نظير خلاف ذلك
التشفير المُصادَق عليه يكشف العبث الذي يمرّ بصمت عبر CBC وCTR. لا تنزل إلى CBC أو CTR إلا للتوافق البيني، وأضِف MAC إن فعلت.
استخدم IV عشوائيًا جديدًا لكل رسالة
تفعل الأداة ذلك تلقائيًا. إذا تجاوزت IV يدويًا، فلا تُعِد استخدام واحد مع نفس المفتاح أبدًا — فتكراره كارثي في GCM، ويكسر السرّية الدلالية في CBC.
اختر عبارات مرور قوية ومفاتيح عشوائية حقيقية
يُبطئ PBKDF2 القوة الغاشمة لكنه لا يستطيع إنقاذ عبارة مرور ضعيفة. ولِّد عبارة مرور طويلة عبر مولّد كلمات المرور، أو مفتاحًا عشوائيًا حقيقيًا عبر مولّد مفتاح السر.
احتفظ بالملح وIV والوسم مع النص المشفّر
ليست سرّية، لكن فك التشفير يفشل بدونها. الصيغة ذاتية الاحتواء لهذه الأداة تجمعها معًا؛ وإذا استخدمت وضع المفتاح الخام بنص مشفّر عارٍ، انسخ IV بشكل منفصل واحفظه مع النص المشفّر.
لا تُشفِّر أسرارًا إنتاجية أو خاضعة للتنظيم في أي أداة أونلاين
حتى مع كون التشفير من جانب العميل بالكامل، فإن أداة المتصفح مخصّصة للتعلّم والتصحيح والحالات الشخصية العابرة. الأسرار الحقيقية تنتمي إلى نظام إدارة مفاتيح موثوق بمعالجة وتدوير مُدقَّقين. ‏AES-256 نفسه قويّ — معتمد ضمن مجموعة NSA CNSA 2.0 للمعلومات حتى مستوى TOP SECRET — والكسور الواقعية تأتي من أخطاء التنفيذ، لا من الخوارزمية.

أسئلة شائعة عن تشفير AES

هل تشفير النص أونلاين آمن؟
في هذه الأداة يحدث التشفير بالكامل داخل متصفحك — نصّك وعبارة مرورك ومفتاحك لا تنتقل أبدًا إلى خادم، ويمكنك التأكّد من ذلك بمراقبة تبويب «الشبكة». هذا يجعلها آمنة للتعلّم والتصحيح والبيانات الشخصية العابرة. إنها ليست المكان المناسب للأسرار الإنتاجية، أو البيانات الخاضعة للتنظيم، أو أي شيء يتطلّب إدارة مفاتيح طويلة الأمد، وهذا صحيح لأي أداة أونلاين: صفحة متصفح لا يمكنها منحك تخزين مفاتيح مُدقَّقًا أو تدويرًا أو تحكّمًا بالوصول. شفِّر هنا الأشياء العابرة والشخصية، واحتفظ بالأسرار الحقيقية في نظام مخصّص.
هل يمكن فك تشفير AES بدون المفتاح؟
لا. لا يوجد كسر عملي معروف لـAES، فبدون المفتاح أو عبارة المرور لا يوجد اختصار — يُختزَل المهاجم إلى تجربة المفاتيح واحدًا تلو الآخر. لدى AES-256 عدد ممكن من المفاتيح يبلغ 2^256؛ وحتى بمعدّل تريليون تريليون تخمين في الثانية ستحتاج إلى وقتٍ أطول بكثير من عمر الكون لتغطية جزء ذي معنى منها. المخاطر الواقعية ليست أبدًا في الخوارزمية نفسها: بل في عبارة مرور ضعيفة، أو IV مُعاد استخدامه، أو مفتاح مسرَّب، أو أوراكل حشو في نظامٍ سيّئ البناء. اختر عبارة مرور قوية ولن تنطبق عليك أيٌّ من هذه المخاطر. وأي جهة تروّج لـ«استرجاع AES» بدون مفتاح إنما تبيع احتيالًا.
GCM مقابل CBC — أيّ وضع أستخدم؟
استخدم GCM. فهو يمنحك السرّية إضافةً إلى وسم مصادقة مدمج بطول 128 بت، بحيث إذا تغيّر بايت واحد من النص المشفّر فشل فك التشفير بدلًا من أن يُعيد بصمت بيانات تالفة. أما CBC فيُخفي البيانات فقط؛ ولا يستطيع بمفرده كشف العبث، وله تاريخ طويل من ثغرات أوراكل الحشو (Vaudenay, EUROCRYPT 2002)، وهذا سبب حذف TLS 1.3 ‏(RFC 8446) كل مجموعات تشفير CBC. السبب الوجيه الوحيد لاختيار CBC هنا هو التوافق البيني مع نظام قائم — مثل أمر enc في OpenSSL، الذي لا يدعم GCM.
AES-128 مقابل AES-256 — هل يستحق 256 العناء؟
كلاهما يُعدّ آمنًا؛ فـAES-128 غير مكسور وأسرع قليلًا. أما AES-256 فله مفتاح أكبر وهامش أمان أوسع، وهو الحجم المعتمد ضمن مجموعة NSA CNSA 2.0 للمعلومات حتى مستوى TOP SECRET، وهذا سبب كونه خيارًا افتراضيًا معقولًا. التكلفة طفيفة — بضع جولات إضافية لكل كتلة. ما لم تكن تُحسِّن مسارًا شديد الحساسية للأداء، شفِّر بـAES-256؛ فهامش الأمان الإضافي شبه مجاني عمليًا.
هل تُرفَع بياناتي عندما أشفِّر هنا؟
لا. يعمل التشفير بالكامل محليًا عبر Web Crypto API الخاص بالمتصفح (crypto.subtle)، وهو نفس التنفيذ المُدقَّق الذي يستخدمه متصفحك لـHTTPS. لا شيء ممّا تكتبه يُرسَل إلى أي مكان — يمكنك فتح لوحة «الشبكة» في أدوات المطوّر، وتشفير شيء ما، ومراقبة عدم إطلاق أي طلبات، أو قطع الاتصال بالإنترنت بالكامل وستظل الأداة تعمل. لا تتوفّر SubtleCrypto إلا في سياقات آمنة (HTTPS)، وهذا جزء من سبب ثبات هذا الضمان.
ما الفرق بين عبارة المرور والمفتاح؟
المفتاح هو بالضبط 128 أو 192 أو 256 بت من بيانات عشوائية — بالنسبة لـAES-256 هذا يعني 32 بايت خام، تُكتب عادةً بترميز سداسي عشري أو Base64. أما عبارة المرور فهي نص يكتبه إنسان بأي طول، وهي ليست مفتاحًا بحد ذاتها: يجب تمديدها إلى مفتاح عبر دالة اشتقاق مفتاح. تقوم هذه الأداة بذلك تلقائيًا في وضع عبارة المرور باستخدام PBKDF2-HMAC-SHA256، و600,000 تكرار، وملح عشوائي. الخلط بين الاثنين — بلصق عبارة مرور في حقل المفتاح الخام، أو العكس — هو أحد أكثر أسباب فشل نظامين في الاتفاق على نص مشفّر شيوعًا. (بالنسبة للرموز الموقَّعة بدلًا من التشفير، راجع مُرمِّز JWT.)
هل يمكنني التشفير بحيث يستطيع OpenSSL أو CryptoJS فك تشفيره؟
نعم. فعِّل وضع التوافق مع OpenSSL (مع AES-CBC وعبارة مرور) فتُخرِج الأداة صيغة Salted__ التي يفهمها أمر openssl enc وCryptoJS، وتعرض لك أمر openssl المكافئ بالضبط. اختر دالة اشتقاق المفتاح المطابقة: PBKDF2 لإصدارات OpenSSL الحديثة (الافتراضي لخيار openssl -pbkdf2 هو 10,000 تكرار)، أو EVP-SHA256 لـOpenSSL 1.1+ بدون -pbkdf2، أو EVP-MD5 لـCryptoJS وOpenSSL 1.0.2 وما قبله. للاتجاه المعاكس، أي قراءة نص مشفّر شخص آخر، استخدم أداة فك تشفير AES.

أدوات ذات صلة

عرض جميع الأدوات →

فك تشفير AES — يدعم OpenSSL/CryptoJS

أدوات الأمن

فك تشفير AES أونلاين — GCM/CBC/CTR، عبارة مرور أو مفتاح خام، يكتشف تلقائيًا صيغة OpenSSL وCryptoJS "U2FsdGVkX1". يعمل 100% داخل المتصفح، والمفاتيح لا تغادر الصفحة أبدًا.

مولّد تجزئة bcrypt والتحقق منها

أدوات الأمن

ولّد تجزئات كلمات المرور بـ bcrypt وتحقق منها أونلاين — تكلفة قابلة للضبط، بادئات $2b$/$2a$/$2y$. 100% في متصفحك؛ كلمة مرورك لا تُرفع أبداً.

مولّد HMAC ومدقّق التوقيع

أدوات الأمن

مولّد ومدقّق HMAC مجاني أونلاين. احسب HMAC-SHA256/SHA1/SHA384/SHA512 بمفاتيح Text أو Hex أو Base64 وإخراج Hex/Base64/Base64URL. كل شيء داخل متصفحك — المفاتيح لا تغادر الصفحة.

محلّل JWT — فك ترميز الرموز

أدوات الأمن

فك ترميز رموز JWT أونلاين مع محلّل JWT المجاني. افحص الترويسة والحمولة والتوقيع وانتهاء الصلاحية والخوارزمية والمطالبات فوراً. 100% في المتصفح — رمزك لا يغادر جهازك. بلا تسجيل، بلا تتبّع.

مُنشئ وترميز JWT

أدوات الأمن

مولّد ومرمّز JWT مجاني أونلاين. ابنِ الترويسة والحمولة، ووقّع بـ HS256 أو RS256 أو ES256 فوراً. 100% في المتصفح — سرّك ومفتاحك لا يغادران جهازك.

مولّد مفتاح JWT السري — HS256/384/512

أدوات الأمن

ولّد مفتاحاً سرياً قوياً ومطابقاً للمواصفة لـ HS256/384/512 — 100% في متصفحك، لا يُرسل إلى خادم أبداً. base64url أو base64 أو hex؛ انسخه لملف .env.