سؤال

ما هي التوصيات التي يمكنك تقديمها لنظام يجب أن يقوم بما يلي:

قم بتحميل المكونات الإضافية (وتنفيذها في النهاية) ولكن هناك طريقتان لتحميل هذه المكونات الإضافية:

  • تحميل الإضافات المعتمدة فقط (تم تطويرها من قبل مالك البرنامج)
  • تحميل كافة المكونات الإضافية

ونحن بحاجة إلى التأكد بشكل معقول من أن المكونات الإضافية المعتمدة هي الصفقة الحقيقية (غير المعدلة).ومع ذلك، يجب أن تكون كافة المكونات الإضافية في مجموعات منفصلة.لقد كنت أبحث في استخدام تجميعات ذات أسماء قوية للمكونات الإضافية، مع المفتاح العام المخزن في تطبيق المُحمل، ولكن بالنسبة لي يبدو أن هذا من السهل جدًا تعديل المفتاح العام داخل تطبيق المُحمل (إذا كان المستخدم يميل إلى هذا الحد) بغض النظر عن ذلك أي تشويش لتطبيق المحمل.هل هناك أفكار أكثر أمانًا؟

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

المحلول

في الأساس، إذا كنت تضع التعليمات البرمجية الخاصة بك على جهاز شخص آخر، فليس هناك ضمان مطلق للأمان.

يمكنك إلقاء نظرة على جميع أنواع الحيل الأمنية، ولكن في النهاية، الرمز موجود على أجهزتهم، لذا فهو خارج عن سيطرتك.

ما المبلغ الذي ستخسره إذا قام المستخدم النهائي بتحميل مكون إضافي غير مصرح به؟

نصائح أخرى

ما المبلغ الذي ستخسره إذا قام المستخدم النهائي بتحميل مكون إضافي غير مصرح به؟

من المسلم به أن هذا لن يحدث كثيرًا، ولكن عندما/إذا حدث ذلك فإننا نخسر الكثير، وعلى الرغم من أنني أفهم أننا لن ننتج شيئًا آمنًا بنسبة 100٪، إلا أنني أريد أن أجعل الأمر عائقًا كافيًا لمنع الناس من القيام بذلك.

الشيء المزعج في استخدام تحميل ديناميكي بسيط باسم قوي كامل، هو أن كل ما يتطلبه الأمر هو تغيير حرفي بسيط للسلسلة داخل تطبيق المُحمل لتحميل أي تجميع آخر على الرغم من توقيع المكونات الإضافية.

يمكنك توسيع سؤالك:"كيف يمكنني حماية تجميعات .net الخاصة بي من الهندسة العكسية؟"

الجواب هو - لا يمكنك ذلك.بالنسبة لأولئك الذين لم يشاهدوه بعد، ما عليك سوى البحث عن "العاكس"، وتشغيله على ملف exe الساذج.

(بالمناسبة، هذا دائمًا هو الحل للكود الذي هو خارج يديك، طالما لم يكن لديك جهاز فك/تشفير مرسل معه)،

يحاول التعتيم جعل الهندسة العكسية أكثر صعوبة (تكلف أموالاً أكثر) من التطوير، وقد نجح في بعض أنواع الخوارزميات.

التوقيع على الجمعيات.

يمنح توقيع اسم قوي ، أو تسمية قوية ، مكون البرنامج هوية فريدة من نوعها على مستوى العالم لا يمكن تخويفها بواسطة شخص آخر.يتم استخدام أسماء قوية لضمان أن تبعيات المكونات وبيانات التكوين خريطة إلى المكون المناسب والمكون بالضبط.

http://msdn.microsoft.com/en-us/library/h4fa028b(VS.80).aspx

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