سؤال

تخيل أن لدي هذا:

$cdata = AES_256($data, $pass);

AES_256 ينفذ خوارزمية AES.

إذا كنت أعرف محتوى $cdata ومحتوى $data وكذلك AES_256() الكود، هل يمكنني إجراء هندسة عكسية والعثور عليه $pass?

هل كانت مفيدة؟

المحلول

والجواب بسيط: NO

وهذا وقد تم اختبار، وذكر في وصلة ويكي.

<اقتباس فقرة>   

وهجوم ذات الصلة مفتاح يمكن كسر يصل إلى 9   جولات من 256 بت AES. أ   يتم اختيارها الغير مشفرة الهجوم يمكن كسر 8   جولات 192- وAES 256 بت، و 7   جولات من AES 128 بت، على الرغم من أن   عبء العمل غير عملي في 2 <سوب> 128 -   2 <سوب> 119 .

وأو بعبارة أخرى: لديك فرصة أفضل من التعرض للضرب من قبل إضاءة ... في نفس اليوم الذي يفوز اليانصيب، من كسرها

نصائح أخرى

إذا $pass هو في الواقع كلمة مرور وليس مفتاح 256 بت، قد تكون في الحظ.

ولئن كان بعيدا عن تافهة على القيام بها، هجوم القوة الغاشمة ضد كلمة المرور العادية هو أسرع بكثير من الغاشمة إجبار مفتاح 256 بت.

وحتى تعديل واحد من العديد من الأدوات إجبار كلمة الغاشمة، وكان لديك الهجوم الذي (اعتمادا على قوة كلمة المرور) قد يستغرق أسابيع لعدة سنوات - ولكن هذا هو سريع مقارنة 3x10 ^ 51 سنة .. .

هل يمكن أن القوة الغاشمة، ولكن الامر سيستغرق وقتا طويلا. كما هو الحال في عقود أو حتى لفترة أطول. هذا هو بيت القصيد من خوارزميات التشفير مثل AES.

واقتبس آخر، من ويكيبيديا :

<اقتباس فقرة>   

وAES يجيز استخدام مفاتيح 256 بت.   كسر متماثل مفتاح 256 بت من قبل   القوة الغاشمة تتطلب 2 ^ 128 مرة أكثر   السلطة الحسابية من 128 بت   مفتاح. جهاز يمكن أن تحقق ل   بليون (10 ^ 18) مفاتيح AES في   الثانية سيتطلب حوالي 3 ×   10 ^ 51 سنوات لاستنفاد 256 بت   مساحة رئيسي.

والغاشمة مما اضطر عندما تعلم النص الأصلي قد يكون أسرع ولكن لا يزال، 3 × 10 ^ 51 سنوات هو وقت طويل. بالإضافة إلى أن هناك مشكلة ربما لا وجود الجهاز الذي يمكن التحقق من مليار مليار (10 ^ 18) مفاتيح / ثانية.

في القصير : لكل شيء ممكن، ولكن هذا ليس ممكنا في العالم أننا نعيش الآن في

.

AES، مثل جميع خوارزميات التشفير الجيدة، لا تعتمد عليها الأمن من خلال الغموض.

بمعنى آخر، لا توجد "أسرار" في الكود، لذا فإن حصولك على الكود لن يساعدك بشكل خاص.

يعد النص العادي المعروف مشكلة منفصلة، ​​ولا أعرف الكثير عنها، لذا سأترك ذلك للمجيبين الآخرين.

وبالطبع لا - النهج الوحيد هو القوة الغاشمة. هل تعتقد حقا NIST هو غبي ذلك لاختيار الشفرات التي مشققة بسهولة لمعايير جديدة؟

أن

ومع قوة أجهزة الكمبيوتر فائقة من الوقت لتحطم التشفير AES مع تقصير كبير .... سمعت ...

و2X2 ^ 256 التوليفات الممكنة هو الكثير إلى القوة الغاشمة. لكن bruteforcing هو السبيل الوحيد. وسوف يستغرق الامر الواقع حوالي 3 عقود. AES هو أفضل التشفير الممكن الآن أود أن أقول. ولكن هذا سيستغرق الكثير من الوقت فقط باستخدام وحدة المعالجة المركزية. لأن GPU في (وحدات معالجة الرسومات) بشكل صارم الرياضيات مقرها، والناس قد تم صنع البرامج التي تستخدم فقط GPU للقضاء خوارزميات الرياضيات بسرعة أكبر بكثير مما يمكن وحدة المعالجة المركزية. وبعبارة أخرى قد لا يستمر AES 3 عقود. إذا كانت فقط رموز الخلود الممكنة. يبدو جيدا مثل تشفير الحيوية قد تكون الطريقة الوحيدة الناس يمكن أن تخفي الحقيقة معلوماتهم في المستقبل القريب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top