خوارزمية التشفير الشائعة
خوارزمية التشفير الشائعة ( CSA ) هي خوارزمية التشفير المستخدمة في البث التلفزيوني الرقمي DVB لتشفير تدفقات الفيديو .
تم تحديد CSA بواسطة ETSI وتم اعتمادها من قبل اتحاد DVB في مايو 1994. وقد خلفها CSA3، [1] استنادًا إلى مزيج من AES 128 بت وتشفير كتلة سري، XRC. ومع ذلك، فإن CSA3 لم يتم استخدامه بشكل كبير حتى الآن، لذلك لا يزال CSA هو التشفير السائد لحماية بث DVB.
تاريخ
ظلت CSA سرية إلى حد كبير حتى عام 2002. وقد قدمت أوراق براءات الاختراع بعض التلميحات، لكن التفاصيل المهمة، مثل تصميم ما يسمى بصناديق S ، ظلت سرية. وبدون هذه التفاصيل، لم يكن من الممكن تنفيذ الخوارزمية مجانًا. في البداية، كان من المقرر أن تظل CSA مطبقة على الأجهزة فقط، مما يجعل من الصعب إجراء هندسة عكسية للتنفيذات الحالية.
في عام 2002، تم إصدار FreeDec، الذي ينفذ CSA في البرمجيات . وعلى الرغم من إصداره كنسخة ثنائية فقط، فقد كشف التفكيك عن التفاصيل المفقودة وسمح بإعادة تنفيذ الخوارزمية في لغات البرمجة ذات المستوى الأعلى .
وبعد أن أصبحت CSA معروفة للجميع بكل تفاصيلها، بدأ محللو الشفرات في البحث عن نقاط الضعف.
وصف الشفرة
تتكون خوارزمية CSA من نوعين مختلفين من التشفير: تشفير الكتلة وتشفير التدفق.
عند الاستخدام في وضع التشفير، يتم تشفير البيانات أولاً باستخدام التشفير الكتلي 64 بت في وضع CBC ، بدءًا من نهاية الحزمة. ثم يتم تطبيق التشفير المتدفق من بداية الحزمة.
التشفير الكتلي
تعالج عملية التشفير الكتلي كتلًا مكونة من 64 بتًا في 56 جولة. وتستخدم 8 بتات من مفتاح موسع في كل جولة.
تشفير التدفق
تُستخدم أول 32 جولة من التشفير المتدفق للتهيئة ولا تولد أي إخراج. تُستخدم أول 64 بت من البيانات كمتجه تهيئة أثناء هذه المرحلة ولا تتغير. ثم يقوم التشفير المتدفق بتوليد 2 بت من التدفق شبه العشوائي في كل جولة يتم فرزها بدءًا من البت 64 من الحزمة.
نقاط الضعف
في حالة كسر CSA، فإن عمليات إرسال DVB المشفرة سوف تكون قابلة للفك، وهو ما من شأنه أن يعرض خدمات التلفزيون الرقمي المدفوعة للخطر، حيث تم توحيد DVB للتلفزيون الرقمي الأرضي في أوروبا وأماكن أخرى، ويستخدمه العديد من مزودي التلفزيون عبر الأقمار الصناعية.
لم تستهدف معظم الهجمات على نظام التلفزيون المدفوع CSA نفسها، بل استهدفت بدلاً من ذلك أنظمة تبادل المفاتيح المختلفة المسؤولة عن توليد مفاتيح CSA ( Conax ، وIrdeto، وNagravision ، وVideoGuard ، وما إلى ذلك)، إما عن طريق الهندسة العكسية وكسر الخوارزميات تمامًا، أو عن طريق اعتراض المفاتيح في الوقت الفعلي أثناء توليدها على جهاز فك تشفير شرعي، ثم توزيعها على الآخرين (ما يسمى بمشاركة البطاقات ).
تنفيذات البرمجيات وتقطيع البتات
إن جزء التشفير المتدفق من CSA عرضة لتقطيع البتات ، وهي تقنية تنفيذ برمجي تسمح بفك تشفير العديد من الكتل، أو نفس الكتلة بمفاتيح مختلفة، في نفس الوقت. وهذا يسرع بشكل كبير من عملية البحث بالقوة الغاشمة التي يتم تنفيذها في البرنامج، على الرغم من أن العامل منخفض للغاية بالنسبة لهجوم عملي في الوقت الفعلي.
إن جزء التشفير الكتلي أصعب في التقطيع إلى أجزاء، حيث أن صناديق S المعنية كبيرة جدًا (8x8) بحيث لا يمكن تنفيذها بكفاءة باستخدام العمليات المنطقية، وهو شرط أساسي لكي تكون عملية التقطيع إلى أجزاء أكثر كفاءة من التنفيذ العادي. ومع ذلك، نظرًا لأن جميع العمليات تتم على كتل فرعية مكونة من 8 بتات، يمكن تنفيذ الخوارزمية باستخدام SIMD العادي ، أو شكل من أشكال "التقطيع إلى أجزاء". نظرًا لأن معظم مجموعات تعليمات SIMD (باستثناء AVX2 ) لا تدعم جداول البحث المتوازية، فإن عمليات البحث في صناديق S تتم في تنفيذ غير مقسم إلى أجزاء، ولكن لا يعوق التقطيع إلى أجزاء بشكل ملحوظ دمجها في بقية الخوارزمية.
يتم استخدام كلتا التقنيتين في libdvbcsa، وهو تنفيذ مجاني لـ CSA.
تحليل الشفرات
يصبح تحليل التشفير أكثر صعوبة لأن معظم البيانات محمية بواسطة كل من التشفير الكتلي والتشفير التدفقي. يمكن أن تؤدي أكواد التكيف إلى حزم تحتوي على بعض البيانات المحمية بواسطة التشفير الكتلي أو التشفير التدفقي فقط. [2]
نهج القوة الغاشمة
في حين تستخدم خوارزمية CSA مفاتيح مكونة من 64 بت، إلا أنه في معظم الأحيان، لا يكون معروفًا سوى 48 بتًا من المفتاح، حيث يتم استخدام البايتات 3 و7 كبايتات تكافؤ في أنظمة CA، ويمكن إعادة حسابها بسهولة. يسمح هذا بهجمات نصية واضحة معروفة محتملة عند دمجها مع معرفة بنية النص العادي الأساسية. نظرًا لأن البايتات الثلاثة الأولى من رأس PES تكون دائمًا 0x000001، فسيكون من الممكن إطلاق هجوم القوة الغاشمة . سيكشف مثل هذا الهجوم عن ملايين المفاتيح المحتملة، ولكن لا يزال عددًا قليلًا بما يكفي لجعل محاولة فك تشفير أجزاء أخرى من البيانات بنفس المفتاح في تمريرة ثانية لاستعادة المفتاح الحقيقي أمرًا عمليًا.
هجوم النص العادي المعروف
في عام 2011، أطلقت مجموعة من الباحثين الألمان هجومًا [3] على CSA كما هو مستخدم في نظام DVB. من خلال ملاحظة أن حشو MPEG-2 يتطلب غالبًا سلسلة طويلة من الأصفار، مما يؤدي إلى تشفير خلايا كاملة بحجم 184 بايت بالأصفار فقط، فمن الممكن بناء جدول قوس قزح لاستعادة المفتاح من مثل هذه الكتلة المعروفة بالأصفار. (سيتم معرفة أن الكتلة هي صفر إذا تم العثور على كتلتين بنفس النص المشفر، حيث من المفترض أن تكون كلتا الكتلتين صفريتين). يتطلب الهجوم الموصوف حوالي 7.9 تيرابايت من التخزين، وتمكين المهاجم الذي لديه وحدة معالجة رسومية من استعادة المفتاح في حوالي سبع ثوانٍ بنسبة يقين 96.8٪. ومع ذلك، فإن الهجوم فعال فقط عندما تكون كتل الحشو ذات الأصفار موجودة (أي في المشاهد التي بها القليل جدًا من الحركة أو الضوضاء)، ويمكن تخفيفه بسهولة عن طريق إرسال مثل هذه الخلايا ذات الأصفار غير مشفرة على سبيل المثال.
يختلف هذا عن أمثلة هجوم القوة الغاشمة التي ذكرناها سابقًا، حيث أن محتويات النص العادي للخلية بأكملها معروفة قبل الهجوم، وليس فقط أجزاء من كتلة، مما يتيح الحساب المسبق لجدول قوس قزح.
هجوم الخطأ
في عام 2004، تم نشر هجوم خطأ [4] على التشفير الكتلي. كانت الفكرة الأساسية هي إدخال بعض الأخطاء المتعمدة في الحسابات الوسيطة، مما يجعل من الممكن استنتاج مفاتيح الجولة الثمانية الأخيرة. ومن هذا، يمكن حساب المفتاح النهائي.
على الرغم من أن الأخطاء المطلوبة قليلة جدًا (في المتوسط اثنان أو ثلاثة لكل مفتاح مسترد)، فإن هجمات الأخطاء عادة ما تكون غير عملية للتنفيذ، حيث تتطلب القدرة على تغيير البتات حسب الرغبة داخل أجهزة فك التشفير التي تحتوي بالفعل على المفتاح المعني.
مراجع
- ^ Farncombe Consulting Group (2009). "Towards a Replacement for the DVB Common Scrambling Algorithm" (PDF) (ورقة بيضاء). Basingstoke. مؤرشف من الأصل (PDF) في 2010-07-05 . تم الاسترجاع في 2012-11-20 .
- ^ Weinmann, Ralf-Philipp; Wirt, Kai (2005). "Analysis of the DVB Common Scrambling Algorithm" (PDF) . في David Chadwick; Bart Preneel (eds.). Communications and Multimedia Security . المؤتمر الثامن للاتحاد الدولي لمعالجة المعلومات TC-6 TC-11 حول أمن الاتصالات والوسائط المتعددة، 15-18 سبتمبر 2004، ويندرمير، منطقة ليك ديستريكت، المملكة المتحدة. الاتحاد الدولي لمعالجة المعلومات IFIP — المجلد 175. سبرينغر. ص 195-207. doi :10.1007/0-387-24486-7_15. ISBN 978-0-387-24486-0.
- ^ Tews, Erik; Wälde, Julian; Weiner, Michael (2012). "Breaking DVB-CSA" (PDF) . في Frederik Armknecht; Stefan Lucks (eds.). Research in Cryptology . 4th Western European Workshop, WEWoRC 2011, Weimar, Germany, July 20–22, 2011. Lecture Notes in Computer Science. المجلد 7242. Springer. ص 45–61. doi :10.1007/978-3-642-34159-5_4. ISBN 978-3-642-34158-8.
- ^ Wirt, Kai (نوفمبر 2003). "هجوم خطأ على خوارزمية التشفير الشائعة في DVB (تقرير 2004/289)". أرشيف Cryptology ePrint .
روابط خارجية
- تحليل خوارزمية التشفير الشائعة لـ DVB
- libdvbcsa: تنفيذ مجاني لخوارزمية التشفير الشائعة لـ DVB
- تحسين تحليل التشفير لخوارزمية التشفير الشائعة
- أنظمة DVB CSA التابعة لـ ETSI.org
