انتقل إلى المحتوى

معيار التعمية المتقدم

من ويكيبيديا، الموسوعة الحرة
معيار التعمية المُتقدِّم
تمثيل لدالة الدورة في معيار التعمية المتقدم
معلومات عامة
المطورون جون ديمان [الإنجليزية] وفنسنت ريمين [الإنجليزية]
تاريخ النشر 1998
اشتقت من المعمي المربع [الإنجليزية]
اشتق منها أنوبيس [الإنجليزية]، Grand Cru، Kalyna
الشهادة اختيار خوارزمية معيار التعمية المتقدم  [لغات أخرى]‏ winner, لجان أبحاث التعمية وتقييمها  [لغات أخرى]‏, NESSIE، NSA
معلومات التعمية
مقاس المفتاح [الإنجليزية] 128 أو 192 أو 256 بتاً[هامش 1]
مقاس الفدرة [الإنجليزية] 128 بتاً[هامش 2]
البنية شبكة إعاضة وتباديل [الإنجليزية]
عدد الدورات 10 أو 12 أو 14 حسب مقاس المفتاح.


معيار التعمية المُتقدِّم (بالإنجليزية: Advanced Encryption Standard)‏ اختصاراً AES، ويُعرف أيضاً باسمه الأصيل رِنْدِل (بالهولندية: Rijndael) وتُقرأ ˈrɛindaːl،[1] هو محدِّد تعمية اعتمده المعهد الوطني للمعايير والتقانة في الولايات المتحدة سنة 2001م.[2]

معيار التعمية المتقدِّم هو تنويعة لمعمي فِدر رِنْدِل.[1] طوره عالما التعمية البلجيكيان جون ديمان [الإنجليزية] وفنسنت ريمين [الإنجليزية] ليكون مقترحاً[3] خلال عملية اختيار خوارزمية معيار التعمية المتقدم [الإنجليزية] التي أدارها المعهد الوطني للمعايير والتقانة.[4] معميات رندل عائلة من معميات الفدر تدعم مقاسات مختلفة للفدر والمفاتيح. اختار المعهد الوطني للمعايير ثلاثة معميات من هذه العائلة تتشابه بمقاس الفدرة (128 بت)، ولكنها تختلف بمقاس المفتاح: 128 و192 و256 بتاً على الترتيب. تستعمل هذه المُعمِّيات تعمية متناظرة وحيدة المفتاح، أي أن المفتاح نفسه يُستخدم لتعمية البيانات ولفك تعميتها.

أعلن المعهد الوطني للمعايير والتقانة في الولايات المتحدة عن هذا المعيار بوصفه معياراً اتحادياً لمعالجة المعلومات في 26 نوفمبر 2001م، وحمَّله بالاسم الرمزي FIPS 197.[2] وتلا ذلك عملية تعيير استمرت 5 سنوات تنافس فيها 15 اقتراحاً مختلفاً، انتهت باختيار معمي رِندل ليكون أساساً لهذا المعيار.[هامش 3] تبنَّت الحكومة الاتحادية للولايات المتحدة معيار التعمية المُتقدِّم في 26 مايو 2002م، ليحل محل معيار تعمية البيانات الذي طُوِّر سنة 1977.[5] وهو المعمي الوحيد المتاح للعموم من المعميات التي أجازتها وكالة الأمن القومي الأمريكية للتعامل مع المعلومات بالغة السرية.

معايير رسمية

[عدل]

عرِّف معيار التعمية المُتقدِّم في:

الوصف

[عدل]

بُني معيار التعمية المتقدم على بدئية تعمية تُسمَّى شبكة الإعاضة والتباديل [الإنجليزية].[7] لا يستعمل معيار التعمية المتقدم شبكة فِستل [الإنجليزية]، كما هو حال سابقه: معيار تعمية البيانات. معيار التعمية المُتقدِّم هو تنويعة من معميات رنِدل، مقاس الفِدرة [الإنجليزية] التي يعميها ثابت: 128 بتاً، أما مقاس المفتاح فقد يكون 128 أو 192 أو 256 بتاً.

يعالج المعيار مصفوفة مربعة، تُسمَّى مصفوفة الحالة[ج]، فيها 16 عنصراً (4x4)، طول كل منها 16 بايتاً، يُرمز لها على الترتيب: b0, b1, ..., b15. تُرتَّب عناصر المصفوفة حسب الأعمدة، أي يكون العنصر الواقع في أعلى العمود الأول هو صاحب أصغر الفهارس (0)، ثم يليه العنصر الذي يقع تحته مباشرة في العمود نفسه، وهكذا حتى نهاية عناصر العمود، ثم الانتقال للعمود التالي وصولاً للعنصر الواقع في أسفل العمود الأخير الذي يكون صاحب الفهر الأكبر (15)، وتكون المصفوفة على الشكل التالي:[هامش 4]

يحدد مقاس المفتاح في معمي معيار التعمية المتقدِّم عدد الدورات اللازمة لتحويل الدخل، الذي يُسمَّى نصاً واضحاً[د] إلى الشكل النهائي للخرج، المُسمَّى نصاً معمى [ه]. يتحدد عدد الدورات كما يأتي:

  • 10 دورات لو كان مقاس المفتاح 128 بتاً.
  • 12 دورات لو كان مقاس المفتاح 192 بتاً.
  • 14 دورات لو كان مقاس المفتاح 256 بتاً.

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

وصف عام لمراحل العمل

[عدل]
  1. تمديد المفتاح:[و] أي اشتقاق مفالتيح الجولات من مفتاح التعمية اعتماداً على مُجدوِل مفاتيح [الإنجليزية]. يحتاج المعيار مفتاحاً فريداً بطول 128 بتاً لكل دورة، ومفتاح إضافياً آخر بالطول نفسه.
  2. إضافة مفتاح الدورة الأولى:
    1. إضافة مفتاح الدورة[ز] تطبق عملية الفصل المنطقي الإقصائي (XOR)، على مستوى البت، بين كل بايت من المصفوفة والبايت المقابل له من مفتاح الدورة.
  3. 9 أو 11 أو 13 دورة يُطبَّق فيها ما يلي:
    1. إعاضة البايتات:[ح] خطوة إعاضة غير خطية يُستبدَل فيها بايتٌ جديد بكل بايتٍ موجود آخر حسب جداول معدة مسبقاً [الإنجليزية].
    2. الإزاحة في الصفوف:[ط] خطوة لتبديل مواقع العناصر في الصفوف الثلاثة الأخيرة من مصفوفة الحالة بإزاحتها عدداً محدداً من المراتب.
    3. الخلط في الأعمدة:[ي] عملية خلط خطي لعناصر أعمدة مصفوفة الحالة تجري على البايتات الأربعة لكل عمود.
    4. إضافة مفتاح الدورة
  4. دورة أخيرة (ليصبح مجمل عدد الدورات 10 أو 12 أو 14):
    1. إعاضة البايتات
    2. الخلط في الأعمدة
    3. إضافة مفتاح الدورة

وصف مفصل لمراحل العمل

[عدل]

خطوة إعاضة البايتات

[عدل]
يُستبدَل بكل بايتٍ في خطوة إعاضة البايتات بايتٌ آخر مغاير له بالقيمة.

يُستبدَل في هذه الخطوة بكل بايت في مصفوفة الحالة () ببايت آخر حسب العلاقة:

وفيها هو صندوق إعاضة [الإنجليزية] ثماني البتات. يكون الدخل هو النص الواضح ممثلاً بمصفوفة الحالة قبل الدورة الأولى.

تؤدي هذه الخطوة وظيقة اللاخطية في المُعمِّي، وتُشتق صناديق الإعاضة المستعملة من دالة مقلوب محدودة الحقل (28)، مضيفة بذلك الخواص اللاخطية للمُعَمِّي. تُبنى صناديق الإعاضة بجمع دالة عكسية مع تحويل تآلفي غير عكوس لصد الهجمات التي تعتمد على تحليل الخواص الجبرية.

يُصمم صندوق الإعاضة ليبدِّل عناصر مصفوفة الحالة تبديلاً فعلياً [الإنجليزية]، فلا يحتفظ أي عنصر بقيمته الأصيلة، وذلك لتجنب النقاط الثابتة[يا] التي تُضعف سرية التعمية، أي يلزم أن يتحقق دائماً:

كما يلزم أن يتجنب التصميم أي نقاط ثابتة متعاكسة[يب]، وهي الحالات التي ينتج فيها خرج واحدي لو كان الدخل والخرج طرفا عملية فصل منطقي حصري، أي يلزم أن يتحقق دائماً:

في عملية فك التعمية، يلزم تطبيق خطوة الإعاضة العكسية[يج]، وهي تشمل عكس التحويل التآلفي أولاً، ثُمَّ إيجاد معكوس دالة المقلوب بعد ذلك.

خطوة الإزاحة في الصفوف

[عدل]
تكون إزاحة العناصر نحو اليسار دوماً، تعني صفة الحلقية افتراض أن العمود الرابع يقع إلى يسار العمود الأول، وكأن أعمدة المصفوفة مرتبة في حلقة مغلقة.

تُطبَّق خطوة الإزاحة في صفوف مصفوفة الحالة، وفيها تزاح العناصر حلقياً في كل صف من الصفوف إزاحةً معينة. تبقى عناصر الصف الأول من غير تغيير في معيار التعمية المتقدِّم. أما عناصر الصف الثاني فتزاح يساراً مرتبةً وحيدة، في حين تزاح عناصر الصف الثالث يساراً مرتبتين، وعناصر الصف الرابع يساراً ثلاث مراتبَ.[هامش 5] تهدف هذه العملية إلى جعل كل عمود في المصفوفة الناتجة عن الإزاحة مكوناً من عناصر من كل صفوف المصفوفة قبل الإزاحة (عنصر واحد من كل صف)، ما يؤدي إلى تجنُّب تعمية الأعمدة قبل الإزاحة تعمية مستقلة، وتجنب إنتاج أربعة مُعَمِّيات مستقلة: مُعَمِّ لكل عمود.

خطوة الخلط في الأعمدة

[عدل]
تشمل عملية الخلط في الأعمدة جداء مصفوفات مع مصفوفة ثابتة القيمة..

تجري عملية الخلط على العناصر الأربعة في كل عمود من مصفوفة الحالة باستعمال تحويل خطي غير عكوس. دخل هذه العملية هو أربعة بايتات وخرجها هو أربعة بايتات كذلك، وفيها يؤثر كل بايت في الدخل على بايتات الخرج كلها. الغرض من هذه الخطوة هو إضافة عنصر الإرباك[يد] إلى المُعَمِّي.

يشمل التحويل الخطي استعمال مصفوفة ثابتة القيم تُضرَب بعناصر العمود ذي الفهرس j من مصفوفة الحالة كما يأتي:

يشمل جُداء المصفوات عمليات ضرب وجمع. في الضرب، يعامل كل بايت، مكون من 8 بتات، معاملة كثير حدود أكبر مرتبة فيه ، أما الجمع فينجز باستعمال عملية الفصل الحصرية (XOR).

خطوة إضافة مفتاح الدورة

[عدل]
إضافة مفتاح الدورة، يعني الرمز (⊕) عملية الفصل المنطقي الإقصائي (XOR).

يُشتق مفتاح الدورة من المفتاح الرئيس في خطوة إضافة المفتاح باستعمال مجدول مفاتيح معيار التعمية المتقدم [الإنجليزية]، يُسمى كل مفتاح دورة مفتاحاً فرعياً[يه] ويكون مقاسه من مقاس مصفوفة الحالة.

تستعمل عملية الفصل المنطقي الإقصائي (XOR) ويكون مدخلاها: عنصر من مصفوفة الحالة، والعنصر المقابل له من المفتاح.

استمثال المُعَمِّي

[عدل]

يمكن تسريع التنفيذ في المُعمِّيات المُشغَّلة على أنظمة تدعم كلمات بطول 32 بتاً أو أكبر، بدمج خطوتي إعاضة البايتات والإزاحة في الصفوف مع خطوة الخلط في الأعمدة. ينتج عن الدمج خطوة تشمل تتابعا من عمليات البحث في 4 جداول ثابتة القيم في كل منها 256 مدخلاً بمقاس 32 بتًا، تَشغَل كلها معاً 4096 بايتًا. يمكن في هذه الحالة إنجاز دورة واحدة بعمل 16 عملية بحث في الجداول متبوعة باثني عشر عملية فصل منطقي حصري (مقاسات المدخلين والمخرج 32 بتاً). يلي ذلك 4 عمليات فصل منطقي حصري (مقاسات المدخلين والمخرج 32 بتاً) لإضافة مفتاح الدورة.[8] يمكن أيضاً إنجاز البحث في الجدول باعتماد جدول واحد ثابت القيم فيه 256 مدخلاً بمقاس 32 بتًا يشغل 1024 بايتاً، يُتبع بعمليات تدوير حلقية.

يمكن أيضاً دمج خطوات إعاضة البايتات والإزاحة في الصفوف والخلط في الأعمدة معاً باعتماد منهج يعالج البايتات[يو].[9]

الأمن

[عدل]

راجعت وكالة الأمن القومي الأمريكية الخوازرميات التي رُشحت في أثناء تطوير معيار التعمية المتقدم، وصرَّحت بأن الخوارزميات كلها آمنة بما يكفي للتعامل مع بيانات الحكومة الأمريكية غير السرية. أعلمن الحكومة في شهر يونيو 2003م بإمكانية استعمال معيار التعمية المُتقدِّمة لحماية المعلومات السرية:[يز][10]

يكفي تصميم خوارزمية معيار التعمية المتقدِّم ومقاس المفاتيح: 128 و192 و256 بتاً فيها لحماية المعلومات المُصنَّفة سرية. أما المعلومات بالغة السرية فيلزم استعمال مفاتيح مقاساتها 192 و256 بتاً.

يُنفِّذ معيار التعمية المُتقدِّم 10 دورات لو كان مقاس مفتاح الدورة 128 بتاً، و12 دورة لو كان المقاس 192 بتاً، و14 دورة لو كان المقاس 256 بتاً. كانت أفضل الهجمات المعروفة في سنة 2006 قادرة على استخراج مُعَمَّى المعيار لو كان عدد الدورات 7 بمقاس مفتاح 128 بتاً، و8 بمقاس 192 بتاً، و9 بمقاس 256 بتاً.[11]

انظر أيضًا

[عدل]

هوامش

[عدل]
  1. ^ تدعم خوارزمية رِندل مفاتيح مقاسها 128 و160 و192 و224 و256 بتاً، ولكن معيار التعمية المُتقدِّم لا يذكر في محدداته إلا المقاسات: 128 و192 و256 بتاً.
  2. ^ تدعم خوارزمية رِندل مقاسات الفِدر التالية من أجل كل مقاس للمفتاح: 128 و160 و192 و224 و256، ولكن المعيار يذكر فدرة بمقاس 128 بت فقط.
  3. ^ انظر اختيار خوارزمية معيار التعمية المتقدم [الإنجليزية] للمزيد من التفاصيل.
  4. ^ تزيد التنويعات الأكبر من مُعَمِّيات رِندل أعمدة إضافية إلى مصفوفة الحالة، ولكنها تلتزم دائماً بعدد الصفوف نفسه.
  5. ^ لدى تنويعات معميات رِندل ذات مقاسات الفِدر الأكبر إزاحات مختلفة. يكون نمط الإزاحة لو كان مقاس الفِدرة 192 بتاً مشابهاً للحال عندما يكون مقاس الفِدرة 128 بتاً: تُزاح عناصر الصف يساراً إزاحةً حلقية بمقدار مرتبةً. أما عندما يكون مقاس الفِدرة 256 بتاً، فلا تحصل إزاحة في الصف الأول، وتكون الإزاحة يساراً بايت وثلاثة بايتات وأربعة بايتات للصفوف الثاني والثالث والرابع على الترتيب.

مصطلحات أجنبية

[عدل]
  1. ^ Advanced Encryption Standard
  2. ^ Block ciphers
  3. ^ state array
  4. ^ plaintext
  5. ^ ciphertext
  6. ^ KeyExpansion
  7. ^ AddRoundKey
  8. ^ SubBytes
  9. ^ ShiftRows
  10. ^ MixColumns
  11. ^ fixed point
  12. ^ opposite fixed point
  13. ^ InvSubBytes
  14. ^ diffusion
  15. ^ subkey
  16. ^ byte-oriented approach
  17. ^ The design and strength of all key lengths of the AES algorithm (i.e., 128, 192 and 256) are sufficient to protect classified information up to the SECRET level. TOP SECRET information will require use of either the 192 or 256 key lengths.

المراجع

[عدل]
  1. ^ ا ب Daemen، Joan؛ Rijmen، Vincent (9 مارس 2003). "AES Proposal: Rijndael" (PDF). National Institute of Standards and Technology. ص. 1. مؤرشف (PDF) من الأصل في 2013-03-05. اطلع عليه بتاريخ 2013-02-21.
  2. ^ ا ب ج "Announcing the ADVANCED ENCRYPTION STANDARD (AES)" (PDF). Federal Information Processing Standards Publication 197. United States National Institute of Standards and Technology (NIST). 26 نوفمبر 2001. مؤرشف (PDF) من الأصل في 2024-08-23. اطلع عليه بتاريخ 2024-08-26.
  3. ^ Joan Daemen and Vincent Rijmen (3 سبتمبر 1999). "AES Proposal: Rijndael" (PDF). مؤرشف من الأصل (PDF) في 2007-02-03.
  4. ^ John Schwartz (3 أكتوبر 2000). "U.S. Selects a New Encryption Technique". New York Times. مؤرشف من الأصل في 2017-03-28.
  5. ^ Westlund، Harold B. (2002). "NIST reports measurable success of Advanced Encryption Standard". Journal of Research of the National Institute of Standards and Technology. مؤرشف من الأصل في 2007-11-03.
  6. ^ "ISO/IEC 18033-3: Information technology – Security techniques – Encryption algorithms – Part 3: Block ciphers". مؤرشف من الأصل في 2013-12-03.
  7. ^ Bruce Schneier؛ John Kelsey؛ Doug Whiting؛ David Wagner؛ Chris Hall؛ Niels Ferguson؛ Tadayoshi Kohno؛ وآخرون (مايو 2000). "The Twofish Team's Final Comments on AES Selection" (PDF). مؤرشف (PDF) من الأصل في 2010-01-02.
  8. ^ Bertoni، Guido؛ Breveglieri، Luca؛ Fragneto، Pasqualina؛ MacChetti، Marco؛ Marchesin، Stefano (2003). "Efficient Software Implementation of AES on 32-Bit Platforms". Cryptographic Hardware and Embedded Systems - CHES 2002. Lecture Notes in Computer Science. ج. 2523. ص. 159–171. DOI:10.1007/3-540-36400-5_13. ISBN:978-3-540-00409-7.
  9. ^ "byte-oriented-aes – A public domain byte-oriented implementation of AES in C – Google Project Hosting". مؤرشف من الأصل في 2013-07-20. اطلع عليه بتاريخ 2012-12-23.
  10. ^ Lynn Hathaway (يونيو 2003). "National Policy on the Use of the Advanced Encryption Standard (AES) to Protect National Security Systems and National Security Information" (PDF). مؤرشف (PDF) من الأصل في 2010-11-06. اطلع عليه بتاريخ 2011-02-15.
  11. ^ John Kelsey، Stefan Lucks، Bruce Schneier، Mike Stay، David Wagner, and Doug Whiting, Improved Cryptanalysis of Rijndael, Fast Software Encryption, 2000 pp213–230 "Academic: Improved Cryptanalysis of Rijndael - Schneier on Security". مؤرشف من الأصل في 2007-02-23. اطلع عليه بتاريخ 2007-03-06.