الشبكة العربية لمطوري الألعاب

مبتدئ  خالد مغربي مشاركة 1

السلام عليكم
 
لفت نظري الأخ وسام إلى خطورة ترك صور اللعبة متاحة للتعديل بسهولة. فباعتبار اللعبة مبنية بالجافا فإنه من السهل تفكيكها واستخراج الصور منها، بل واستبدالها وإعادة نشر اللعبة بصور جديدة!   من هذا المنطلق، يستطيع أي شخص أن يستبدل الصور ليعكس الآية ويجعل اللعبة ضد أهل غزة بدلاً من أن تكون معهم! 😪  😪
 
أنا لا أملك أية فكرة لكيفية حماية صور اللعبة على الأقل لجعل استبدالها عملية "أصعب" على الهاكر بدلاً من أن تكون سهلة وساذجة. فهل لديكم أية أفكار؟ هل يستطيع أحد مساعدتي بهذا الموضوع عن طريق كود جافا أو شرح لفكرة لحماية الصور؟
 
وشكراً جزيلاً لكم...

خالد مغربي

موهوب  معاذ مختار مشاركة 2

في الحقيقة أنا لأول مره أعلم عن هذا الموضوع.

محترف  انس مشاركة 3

تصميم ملفكم الخاص دون نشر كيفية عمله يعقد المهمة للهكر، مجرد فكرة

مبتدئ  خالد مغربي مشاركة 4

وفي 21 يوليو 2010 07:31 م، قال انس متحمساً:

تصميم ملفكم الخاص دون نشر كيفية عمله يعقد المهمة للهكر، مجرد فكرة

حالياً j2me تدعم ملفات png. إذا أردت استبدالها بصيغة خاصة من عندي فسأفقد ميزة الضغط التي تقدمها ملفات png. وهذا يكلفني الكثير من الحجم والذاكرة.

خالد مغربي

موهوب  معاذ مختار مشاركة 5

سيد أنس لعبتنا ستنتهي في ملف بالإمتداد JAR, وكل تطبيقات الموبايل بواسطة J2ME تنتهي بهذا الإمتداد. لذا لا أعتقد كما قلت أنت إخفاء كيفية عمله, لأن كلها بنفس الاسلوب. لكني أعتقد أن هناك طرق لجعل تأمين على الكود.

هل تعلمون أن أقوى متخصصي أمن برمجيات الحاسوب Computer Security هم إسرائيليين.

مبتدئ  خالد مغربي مشاركة 6

أما في 21 يوليو 2010 07:55 م، فقد تنهد معاذ مختار بارتياح وهو يرد:

هل تعلمون أن أقوى متخصصي أمن برمجيات الحاسوب Computer Security هم إسرائيليين

إسرائيلي أو روسي أو صيني أو سوري 😄 . نظرياً عاجلا أم آجلا يمكن للهاكر كسر أي نظام حماية. لكني فقط أود تعقيد العملية قدر الإمكان لمنع صغار الهاكر من إجراء التعديل، على أمل أن تطول هذه المدة قدر الإمكان. أو أن لا تخطر ببالهم فكرة استبدال الموارد...

خالد مغربي

موهوب  معاذ مختار مشاركة 7

هل لك أن توضح لي بشكل نبذه صغيره كيف ستعقد عملية الهكر من صغار القراصنة؟

بالإضافة أني عندما درست هذه المادة قال لنا المعيد أن كسر الشفرات للبرامج يأتي من التحدي والكبر والإعجاب من قٍبَلْ مصمم البرنامج, حيث عندما يقوم مصمم البرنامج بتحدي من يكسر شفرته يبذل القراصنة كافة جهدهم في كسر شيفرة هذا البرنامج.

مبتدئ  إياد الجوابرة مشاركة 8

السلام عليكم


قبل التحدث عن حماية الصور أود التذكير بإمكانية حماية (أو تعقيد) الكود
البرمجي ياستخدام مشفرات الكود Obfusticators فقبل أن تقوم بنشر برنامجك
المكتوب بلغة Java عليك أن تقوم بهذه العملية لمنع المخربين من محاولة
إرجاع الكود Decompiling والحصول على ملفات المصدر الأصلية.

إن عملية حماية الكود بهذه الطريقة تجعل من الكود بعد محاولة إرجاعه نصا
صعب الفهم (حتى على المبرمج نفسه) إذ تتغير أسماء المتحولات والطرائق
والصفوف بطريقة معقدة.

ولإتمام هذه العملية يمكنك استعمال الأداة المجانية والباشرة إذا كنت
تستعمل NetBeans من خيارات بناء ملف Jar هناك بند اسمه Obfusticating وهناك
مسطرة للتحكم بمدى عملية التشفير (كما أنها تتضمن عملية ضغط أيضا) أما إذا
كنت تستعمل jBuilder فعليك استعمال Obfusticators وإضافتها يدويا مثل
rertoguard و proguard التي يمكن إضافتها أيضا إلى NetBeans.

وبالنسبة للصور فإن أول ما قد تفكر به هو تخريب (أو تشفير ) ملف الصورة
وإعادة فك تشفيره قبل قراءته من قبل اللعبة كما في غالبية الألعاب إذ
يقومون عادة بتحويل ملفات اللعبة إلى ملفات zip مثلا وفكها أثناء عملية
التحميل أو تغيير header الملفات فتصبح غير مفهومة.

لكن المشكلة في الكلام السابق أنه قير قابل للتطبيق على الجوال لأن تطبيق
Jar هو للقراءة فقط ولا يمكنك إدراج ملفات إليه أو التعديل في بنيته في زمن
التنفيذ.

بالنسبة لصيغتك الخاصة كما قلت فهي ستكلفك حجم زائد وزمن بالتنفيذ.

إليك الاقتراح التالي

لنقم بتقسيم الصورة المراد حمايتها إلى عدة أقسام مثلا ثلاثة لكل من الطول
والعرض ولنقم ببرمجة أداة (باستخدام C#) تقوم بخربطة هذه الأقسام ومن ثم
تقوم بوقت التنفيذ في بداية اللعبة بإعادة الترتيب عن طريق شيء شبيه
بالآتي:


Image image = Image.createImage(imagePath);
Image distImage = Image.createImage(X, Y);
Graphics graphics = distImage.getGraphics();
graphics.drawImage(image);

.
.
.

لكن المشكلة هي أن ترتيب القطع من الممكن اكتشافه ولحل هذه المشكلة:
أولا يكون عدد القطع كبير والقطعة بحجم صغير
وثانيا لن تكون خوازمية الخلط ثابتة بل تابعة لاسم الملف مثلا الملفات التي تبدأ برقم 1 نقوم بخلط القطع واحدة واحدة أو مثلا الملفات ذات الأسماء من ثلاثة أحرف نقوم بخلط القطع ثلاثة ثلاثة وبذلك يكون لطريقة تسمية الملفات فائدة مخفية وهي طريقة خلط الصور.
وأخبرا من الممكن أن تكون القطع من رتبة البكسل.
مع أخذ العلم أن غالبية الألعاب المقدمة من gameloft من الممكن بسهولة فكها باستخدام أي برنامج لفك الضغط واستعراض الصور والملفات المصدرية.

محترف  انس مشاركة 9

أما في 23 يوليو 2010 06:29 ص، فقد تنهد إياد الجوابرة بارتياح وهو يرد:

من الممكن بسهولة فكها باستخدام أي برنامج لفك الضغط واستعراض الصور والملفات المصدرية.

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



في 21 يوليو 2010 07:58 م، غمغم خالد مغربي باستغراب قائلاً:

هل تعلمون أن أقوى متخصصي أمن برمجيات الحاسوب Computer Security هم إسرائيليين

مجرد تنويه و استعراض للقوة، لتعلم انه لا يوجد بلد اقوى من الاخر، القراصنة في كل انحاء العالم وهم المختصون الحقيقيون في هذا العالم.اما التحدث عن اسرائيل وكانها تمسك السماء فوق رؤوسنا،مجرد حرب نفسية ليس الا

مبتدئ  إياد الجوابرة مشاركة 10

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

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