شرح تشفير AES-256: ماذا يعني لبياناتك

شرح تشفير AES-256: ماذا يعني لبياناتك

شرح AES-256: كيف يعمل الشفرة، لماذا تهم مفاتيح 256 بت، ما يضيفه وضع GCM، وما يجب التحقق منه عندما يدّعي تطبيق ما استخدام تشفير AES-256.


AES-256 هو معيار التشفير المتقدم بمفتاح 256 بت، صادر من NIST بوصفه FIPS 197 عام 2001. وهو خوارزمية التشفير المتماثل التي تستخدمها الحكومة الأمريكية للمعلومات السرية، والبنوك للمعاملات المالية، والتطبيقات المهتمة بالأمان لحماية البيانات في حالة السكون وأثناء النقل. لدى AES-256 ما يبلغ 2^256 مفتاحاً محتملاً -- وهو رقم أكبر من العدد التقديري للذرات في الكون المرئي. لا يوجد هجوم معروف يقلل فضاء المفاتيح هذا إلى بحث ممكن حسابياً.

يشرح هذا الدليل ما يفعله AES-256 فعلاً، لماذا يهم حجم المفتاح، ما تعنيه الأوضاع المختلفة (ECB، CBC، GCM)، وما يجب البحث عنه عندما يدّعي تطبيق ما استخدام تشفير AES-256.

ما يفعله AES فعلاً

AES هو شفرة كتلية متماثلة. "متماثل" يعني أن المفتاح ذاته يُشفّر ويفكّ التشفير. "شفرة كتلية" يعني معالجة البيانات في كتل ذات حجم ثابت 128 بت (16 بايت).

تأخذ الخوارزمية بياناتك (النص الصريح)، وتجمعها بمفتاح، وتنتج مخرجات مشفرة (نص مشفر) عبر سلسلة من التحويلات الرياضية. تتكرر هذه التحويلات -- الاستبدال، والإزاحة، والمزج، وإضافة المفتاح -- لعدد محدد من الجولات. يستخدم AES-256 جولات 14.

تطبّق كل جولة أربع عمليات:

  1. SubBytes: يُستبدل كل بايت باستخدام جدول استبدال ثابت (S-box)، مما يضيف اللاخطية.
  2. ShiftRows: تُزاح البايتات في كل صف بإزاحات مختلفة، مما ينشر البيانات عبر المواضع.
  3. MixColumns: تُخلط الأعمدة من خلال ضرب المصفوفة في حقل منتهٍ، مما ينشر التغييرات عبر البايتات.
  4. AddRoundKey: يُطبَّق XOR على مفتاح الجولة (المشتق من المفتاح الرئيسي) مع البيانات.

بعد 14 جولة، يكون النص الصريح مشوشاً تماماً. عكس هذه العمليات بالمفتاح الصحيح يستعيد البيانات الأصلية. بدون المفتاح، لا يمكن تمييز النص المشفر عن الضوضاء العشوائية.

لماذا يهم الرقم 256

يشير "256" في AES-256 إلى طول المفتاح: 256 بت. هذا يحدد عدد المفاتيح المحتملة التي يجب على المهاجم تجربتها لكسر التشفير بالقوة الغاشمة.

حجم المفتاح المفاتيح المحتملة الوقت اللازم للقوة الغاشمة (تريليون تخمين/ثانية)
56 بت (DES) 7.2 × 10^16 ~20 ساعة
128 بت (AES-128) 3.4 × 10^38 10^13 سنة (10 تريليون سنة)
256 بت (AES-256) 1.16 × 10^77 10^51 سنة

للسياق: عمر الكون حوالي 1.38 × 10^10 سنة. كسر AES-256 بالقوة الغاشمة سيستغرق ما يقارب 10^41 ضعف عمر الكون، حتى بتريليون تخمين في الثانية.

AES-128 غير ممكن كسره بالقوة الغاشمة. يوفر AES-256 هامشاً إضافياً ضد التقدم المستقبلي في الحوسبة، بما في ذلك الحوسبة الكمومية. خوارزمية غروفر (هجوم حوسبة كمومية) تنصف طول المفتاح الفعّال بشكل فعلي -- محولةً AES-256 إلى ما يعادل AES-128، وهو لا يزال غير ممكن. سيُختزل AES-128 إلى أمان فعّال بـ 64 بت، وهو ضعيف محتمل. لذلك تفضّل التطبيقات الأمنية الحرجة AES-256.

أوضاع AES: لماذا تهم

يشفّر AES بحد ذاته كتلة واحدة فقط بـ 128 بت في كل مرة. بالنسبة للبيانات الحقيقية (الصور، المستندات، الفيديوهات)، تحتاج إلى "وضع عمل" يتعامل مع البيانات الأكبر من 16 بايت. الوضع يحدد كيفية تسلسل الكتل معاً وله تداعيات أمنية مهمة.

ECB (كتاب الرموز الإلكتروني) -- لا تستخدم

تُشفَّر كل كتلة بشكل مستقل بالمفتاح ذاته. تنتج الكتل المتطابقة من النص الصريح كتلاً متطابقة من النص المشفر. هذا يكشف أنماطاً في البيانات. التوضيح الكلاسيكي: تشفير صورة نقطية بـ ECB يحافظ على بنية الصورة في النص المشفر، مما يجعل المحتوى قابلاً للتعرف. ECB مُدرج في المعيار لكن يجب عدم استخدامه أبداً مع البيانات ذات البنية أو الأنماط المتكررة (وهذا يشمل كل البيانات العملية تقريباً).

CBC (تسلسل كتل الشفرة) -- قديم

تُطبَّق XOR على كل كتلة مع كتلة النص المشفر السابقة قبل التشفير. هذا يزيل تسرب الأنماط في ECB. كان CBC الوضع القياسي لعقود لكنه تجاوزته GCM لمعظم التطبيقات. يتطلب CBC متجهاً عشوائياً للتهيئة (IV) ولا يوفر مصادقة مدمجة (لا يمكنك اكتشاف ما إذا تم التلاعب بالنص المشفر).

GCM (وضع غالوا/العداد) -- المعيار الحالي

يجمع GCM بين تشفير وضع العداد ومصادقة حقل غالوا. يوفر تشفيراً مصادقاً: يشفّر البيانات وينتج علامة مصادقة تكتشف أي تعديل على النص المشفر. إذا تغير بت واحد، يفشل فك التشفير بدلاً من إنتاج نص صريح تالف.

أقرّ NIST معيار GCM في SP 800-38D (2007). وهو الوضع الموصى به للتطبيقات الجديدة.

AES-256-GCM هو AES بمفتاح 256 بت في وضع Galois/Counter. هذا ما يجب أن تستخدمه التطبيقات الأمنية الحرجة وما يستخدمه Vaultaire لتشفير الصور ومحتوى الملفات.

الوضع تسرب الأنماط المصادقة التوصية الحالية
ECB نعم (شديد) لا لا تستخدم
CBC لا لا (يتطلب MAC منفصل) قديم؛ مقبول مع HMAC
GCM لا نعم (مدمج) موصى به للتطبيقات الجديدة

ما يعنيه AES-256 لتخزين الصور

عندما يدّعي تطبيق خزنة صور "تشفير AES-256"، يجب أن تكون ثلاثة أشياء صحيحة:

  1. محتويات الملف مشفرة بـ AES-256. بيانات الصورة الخام (البكسل، البيانات الوصفية، الصورة المصغرة) محوّلة إلى نص مشفر بمفتاح 256 بت.

  2. كل ملف يستخدم متجه تهيئة فريد (IV). إذا شُفِّرت صورتان متطابقتان بالمفتاح ذاته، يجب أن يكون النص المشفر مختلفاً. هذا يتطلب IV فريداً لكل ملف. بدونه، يمكن للتحليل الإحصائي الكشف عن الأنماط.

  3. الوضع يوفر مصادقة (GCM أو ما يعادله). بدون مصادقة، يمكن للمهاجم تعديل النص المشفر دون اكتشاف. سيكون النتيجة المفككة بيانات تالفة لا خطأ.

ما لا يخبرك به "AES-256" على صفحة تسويقية

AES-256 ضروري لكنه غير كافٍ. عوامل حرجة عدة تحدد ما إذا كان التشفير يحمي بياناتك فعلاً:

اشتقاق المفاتيح مهم. كيف يُولَّد مفتاح الـ 256 بت؟ إذا كان مشتقاً من رقم PIN مكون من 4 أرقام باستخدام دالة اشتقاق مفتاح ضعيفة، فالأمان الفعّال هو 4 أرقام (10,000 تركيبة)، لا 256 بت. التطبيق القوي يستخدم PBKDF2 بعدد تكرار مرتفع أو Argon2 مع معاملات ذاكرة/وقت مناسبة. يستخدم Vaultaire PBKDF2 مع HMAC-SHA512، مشتقاً المفتاح من نمط على شبكة 5×5 بمليارات المدخلات المحتملة.

تخزين المفاتيح مهم. أين يعيش المفتاح؟ إذا خُزِّن المفتاح بنص صريح في بيئة التطبيق، يمكن لأي برنامج خبيث بإمكانية الوصول للملفات قراءته. التخزين الصحيح للمفاتيح يستخدم آليات مدعومة بالأجهزة مثل Secure Enclave من Apple، حيث توجد المفاتيح في معالج مخصص بذاكرة مشفرة خاصة به.

ما يُشفَّر مهم. بعض التطبيقات تشفّر محتويات الملفات لكن تترك أسماء الملفات والصور المصغرة والبيانات الوصفية غير مشفرة. قد لا يرى المحقق الجنائي صورتك، لكنه يرى "vacation-beach-2025.jpg" في قائمة الملفات. التشفير الشامل يغطي البيانات الوصفية بشكل منفصل.

دورة حياة المفاتيح مهمة. هل يُمحى المفتاح من الذاكرة عند إغلاق التطبيق؟ إذا بقي المفتاح في الذاكرة، يمكن لتفريغ الذاكرة استخلاصه. يمحو Vaultaire المفاتيح من الذاكرة عند كل إغلاق للتطبيق ويتطلب إدخال النمط من جديد عند كل إطلاق.

AES-256 في الممارسة: من يستخدمه

الجهة حالة الاستخدام الوضع
الحكومة الأمريكية (NSA) المعلومات السرية GCM (أو CTR مع مصادقة منفصلة)
Apple (iCloud ADP) تشفير iCloud من طرف لطرف GCM
Signal تشفير الرسائل CBC (مع HMAC للمصادقة)
البنوك تشفير المعاملات المالية GCM
1Password خزنة كلمات المرور GCM
Vaultaire خزنة الصور والملفات GCM
VeraCrypt تشفير القرص XTS (محسّن لكتل القرص)

المفاهيم الخاطئة الشائعة

"التشفير العسكري" لا يعني شيئاً محدداً. تستخدم الصفحات التسويقية هذه العبارة لأنها تبدو مثيرة للإعجاب. يستخدم AES-256 في الجيوش. كذلك AES-128. العبارة لا تخبرك عن الوضع أو اشتقاق المفتاح أو تخزين المفتاح أو ما يُشفَّر فعلاً.

"تشفير 256 بت" قد لا يعني AES-256. تستخدم شفرات أخرى أيضاً مفاتيح 256 بت (ChaCha20، Twofish، Serpent). تحقق من تحديد الخوارزمية. AES-256-GCM هو المعيار الحالي.

AES-256 لا يحمي من كلمة المرور الضعيفة. إذا كانت كلمة مرورك "1234" واشتقاق المفتاح ضعيف، فالتشفير ذو أمان 4 أرقام بشكل فعّال بغض النظر عن قوة الشفرة. السلسلة تنكسر عند حلقتها الأضعف.

AES-256 لا يحمي البيانات أثناء الاستخدام. عند عرض صورة، يجب فك تشفيرها في الذاكرة. في تلك اللحظة، توجد بنص صريح في ذاكرة الوصول العشوائي. التطبيقات الصحيحة تقلّل هذه النافذة الزمنية وتمحو البيانات المفككة فوراً.

الأسئلة الشائعة

هل يمكن اختراق AES-256؟

لا يوجد هجوم معروف يخترق AES-256 بتقليل فضاء المفاتيح الكامل. أفضل هجوم معروف (هجوم biclique بقلم Bogdanov وKhovratovich وRechberger، 2011) يقلل AES-256 من 2^256 عملية إلى 2^254.4 -- تحسين نظري لا معنى له حسابياً. يبقى AES-256 غير مكسور.

هل AES-256 مقاوم للحوسبة الكمومية؟

إلى حد كبير، نعم. خوارزمية غروفر الكمومية تنصف الطول الفعّال للمفتاح: يصبح AES-256 مكافئاً لأمان 128 بت ضد الهجمات الكمومية. سيُختزل AES-128 إلى أمان فعّال بـ 64 بت، وهو ضعيف محتمل. توصي NIST بـ AES-256 للأمان طويل الأمد ضد تقدم الحوسبة الكمومية.

ما الفرق بين AES-128 وAES-256؟

يستخدم AES-128 مفتاحاً بـ 128 بت (10 جولات). يستخدم AES-256 مفتاحاً بـ 256 بت (14 جولة). كلاهما يُعتبر آمناً ضد الهجمات الحالية. يوفر AES-256 هامشاً أكبر ضد التقدم المستقبلي، خاصة الحوسبة الكمومية. AES-256 أبطأ بنحو 40% من AES-128 بسبب الجولات الإضافية، لكن التسريع بالأجهزة يجعل ذلك لا يُذكر على الأجهزة الحديثة.

هل يبطّئ تشفير AES-256 هاتفي؟

ليس بشكل ملحوظ. تتضمن iPhones الحديثة تسريعاً مخصصاً للأجهزة بـ AES في Secure Enclave والمعالج. تشفير صورة أو فك تشفيرها يستغرق ميلي ثانية. AES مصمم خصيصاً لكفاءة التطبيق في الأجهزة.

كيف أعرف إذا كان تطبيق ما يستخدم AES-256 فعلاً؟

تحقق من توثيق أمان التطبيق، لا صفحته التسويقية فقط. ابحث عن: الخوارزمية والوضع المحدد (AES-256-GCM، لا مجرد "AES" أو "256 بت")، طريقة اشتقاق المفتاح (PBKDF2، Argon2)، آلية تخزين المفتاح (Secure Enclave، مدعوم بالأجهزة)، وما إذا كانت البيانات الوصفية مشفرة أيضاً. التطبيقات مفتوحة المصدر تتيح التحقق المستقل.

الخلاصة

AES-256 هو المعيار الذهبي للتشفير المتماثل، معتمد من NIST، تستخدمه الحكومات والمؤسسات المالية، ومقاوم لجميع الهجمات المعروفة بما فيها الحوسبة الكمومية. عند تقييم التطبيقات التي تدّعي تشفير AES-256، انظر وراء الشفرة: تحقق من الوضع (GCM)، اشتقاق المفتاح (PBKDF2/Argon2 بعدد تكرار مرتفع)، تخزين المفتاح (مدعوم بالأجهزة)، وما يُشفَّر فعلاً (المحتويات + البيانات الوصفية).

Vaultaire يستخدم AES-256-GCM لتشفير الملفات، PBKDF2 مع HMAC-SHA512 لاشتقاق المفاتيح، ChaCha20 لتشفير البيانات الوصفية، وApple Secure Enclave لإدارة المفاتيح. التشفير ليس لغة تسويقية. إنه رياضيات.