تحويل الشفرة
يُعدّ تحويل الشفرة أسلوبًا يُستخدم في إخفاء البرمجيات لحمايتها من الهندسة العكسية والتحليل والتعديل والاختراق . تحمي هذه التقنية الشفرة الوسيطة، مثل تلك المُجمّعة من لغات Java و.NET (مثل Oxygene و C # و Visual Basic وغيرها)، بدلاً من الشفرة الثنائية . يقوم تحويل الشفرة بتقسيم الشفرة المحمية إلى عدة أوامر معالجة أو أجزاء صغيرة من الأوامر، ثم يستبدلها بأوامر أخرى، مع الحفاظ على النتيجة النهائية نفسها. وبالتالي، يُخفي نظام الحماية الشفرة على المستوى الوسيط. [ 1 ]
تُعدّ تقنية تحويل الشفرة تقنية متعددة المستويات تحتوي على مئات من أنماط تحويل الشفرة الفريدة. إضافةً إلى ذلك، تُحوّل هذه التقنية بعض أوامر الطبقة الوسيطة إلى أوامر الآلة الافتراضية (مثل p-code ). مع ذلك، لا توفر تقنية تحويل الشفرة الحماية ضد تتبع وقت التشغيل، الذي قد يكشف منطق تنفيذ أي شفرة محمية.
بخلاف وسائل حماية الشفرة الأخرى، لا يوجد مفهوم لفك تشفير الشفرة في هذه الطريقة. تبقى كتل الشفرة المحمية دائمًا في حالة قابلة للتنفيذ، ويتم تنفيذها (تفسيرها) كشفرة مُحوَّلة. تغيب الشفرة الوسيطة الأصلية إلى حد ما، لكن إزالة التشويش لا تزال تُتيح رؤية واضحة لتدفق الشفرة الأصلية.
يُستخدم مصطلح "تحويل الكود" أيضًا للإشارة إلى تقنية التجميع في الوقت المناسب المستخدمة في معالجات Transmeta مثل Crusoe و Efficeon لتنفيذ بنية مجموعة تعليمات x86 .
غالباً ما يتم استخدام تغيير شكل الكود في إخفاء حماية النسخ أو عمليات التحقق الأخرى التي يجريها البرنامج لتحديد ما إذا كان تثبيتًا صحيحًا وأصليًا، أو نسخة غير مصرح بها ، وذلك لجعل إزالة كود حماية النسخ أكثر صعوبة مما كان عليه الحال في الأحوال العادية.
انظر أيضاً
مراجع
- ↑ "برنامج Transmeta Code Morphing™: استخدام التخمين والاستعادة وإعادة الترجمة التكيفية لمواجهة تحديات الحياة الواقعية" . CGO '03: وقائع الندوة الدولية حول توليد الشفرات وتحسينها: التحسين الموجه بالتغذية الراجعة والتحسين أثناء التشغيل : 15-24 . 23 مارس 2003. ISBN 978-0-7695-1913-5– عبر ACM.
- إخفاء البرمجيات
- شفرة المصدر
- برامج مقرصنة
