الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

هل من حماية ذكية؟

بدأه anis.w في 23 فبراير 2011 · 21 رد · 3,172 مشاهدة · في قسم أمن المعلومات العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله

إخواني أعضاء المنتدى لي استفسار و أتمنى أن أجد عندكم إجابات تكون شافية و وافية لاستفيد و يستفيد غيري. .

بداية أحب أن أنوه إلى أنني تعبت كثيرا و أنا أبحث على النت لأصل إلى إجابات كاملة و واضحة على ما أبحث عنه

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

أسفل هذا الطلب. .

أولا أنا لا أعرف في البرمجة و لا شيء و مسجل جديد في هذا المنتدى بعدما بحثت عن منتديات عربية تهتم بالبرمجة. .

أنا الآن في طور إنجاز نظرية بسيطة تهم مؤسسات اقتصادية و تهم كذلك فئة معينة من الناس التي تتعامل مع هذه الأخيرة

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

شيء من الشفرة في البرمجة تلك لتخريب الهدف المعمول لأجله

البرنامج يعرض على النت (عملية حسابات بحتة) و قاعدة بياناته ليست بالكبيرة أقصد حجمه قد لا يتجاوز الـ 20 ميجا

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

آسف على الإطالة سأدخل في المراد:

أريد حماية الكود المصدري لهذه البرمجة الصغيرة في حجمها و الكبيرة إن شاء الله في الحاجة إلى الهدف الذي ترمي إليه

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

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

فكرت أن أتجاوز لغة الـ assembly و أبدأ من لغة الآلة (و لا يهمني الوقت الذي سأستغرقه) و بعدها أصنع له مترجما خاصا له للتنفيذ على أنظمة التشغيل الموجودة أو بشكل آخر أقوم ببناء لغة برمجة جديدة بكود جديد بدءا من لغة الآلة بمساعدة مبرمجين في المجال و بعدها ببناء نظام تشغيل بسيط لا يهتم لتعريفات الأجهزة و لا لواجهات الجرافيك و إنما لأجل تنفيذ برنامجي فقط و لكن هناك من ذكر لي أن بإمكانهم فك الشفرة من خلال كود الآلة نفسها لو وجدوا لبرنامجك أهمية لديهم (أقصد المؤسسات المنافسة). .

نداء إلى إخواني الأساتذة في المجال:

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

إقتباس لبعض الإجابات:

مبرمج إسمه هاني و هذا مقطع من كلامه:

"بخصوص عمل كومبيلر ما هيا صعبه هيا محتاجه وقت ومجهود فقط لانه نعمل كومبيلر بالاكواد الى هنحتاجها فى المشروع وبعدين نبدا فى المشروع نبرمجه بالغه الى انشانا بيها الكومبيلر و العلم سريع طبعا لانك لا تستطيع ان تتحدى جميع عقول البشر"

"انت تعمل شىء قابل للتطوير على المدى البعيد فمن سينشا الكموبيلر يستطيع ان يغير فى الكود فى اى وقت طالما معه الاساس والشفرة بل الازكى من ذلك يستطيع ان يعمل شفرة تتغير تلقائيا عشوائيا وتغير شفرة الكود تلقائيا لكن فى هذه الشفرة لن تستطيع انت او غيرك تعديل اى كود بعد الانتهاء لانه لن يرجع الى الاصل ابدا"

الأخ علاء هذا مقطع من كلامه:

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

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

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

الأخ الطيب بعض من ما كتبه لي:

"اخي في مثل هذا المجال الضخم, اعتقد انك تحتاج الى عدد من انظمة الحماية, و هي:

1 التشفير (encryption), و يجب ان يكون من الأنواع القوية جدا

2 الطريقة القديمة المتمثلة بوجود تصريح للدخول اسم مستخدم و باسوورد

3 حماية قانونية

4 حماية من نوع أخرى و هي إخفاء المشروع (كأن لا يعطى عنوان صفحة الويب إلا للمصرح لهم بإستخدام البرنامج),

ما عدا إذا كان موجه الى جمهور مستهلكين, فلا يمكن إستخدام هذه الطريقة

5 بناء قاعدة بيانات إحتياطية, حتى لو حصل أي اخطاء او مشاكل بالرئيسية يمكن إستبدالها

هذا ما اعتقد انه كافي لحماية مشروعك اخي, كما انها نفس الطرق المستخدمة بالمصارف و البنوك"

مقطع آخر تابع:

"ما اعرفه ان الإختراق نوعا هما:

1 نسخ البرنامج نُسخ غير مرخصة, و هذه ليست لها علاقة بتشفير البرنامج بل بتشفير نظام التشغيل (اي إذا نشرت برنامجك على نظام تشغيل ما (Win XP مثلا) و تم إختراق ذلك النظام (تم فك تشفيرة) فبذلك يمكن نسخ برنامج آلاف النسخ, لكن لا يمكن التوصل للكود المصدري على ما اظن

2 إختراق تطبيق (Back door) إن احتوى برنامجك عليه, و هذا كذلك لن يوصل الى الكود المصدري للبرنامج, بل سيعرض جهاز المستخدم للخطر من التجسس او السرقة

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

و كما ذكرت في الأعلى, لن يتم التوصل لنواة النظام (الكود المصدري لنظام التشغيل) إلا إذا نشرتها انت مفتوحه حره"

الأخ محمود في آخر ما كتب:

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

وتحياتي"

يتبع لنفس الشخص و هذه رؤيته للموضوع: "و بعدين في شيء عايز اقولك علية انت لما بتعمل برنامج بتعمل حاجة بداخلة اني الانساناللي هيجي ياخد منك البرنامج لما يسطب البرنامج مش يفتح ولا يشتغل وهيظهر لية بعد الاحرف يقوم بالاتصال بك ويعطي لك الاحرف والارقام وانت تقوم باعطائة الاحرف والارقام المقابلة ويقوم باخذها ووضعها في البرنامج حتي يتم تشغيل البرنامج وايضا بتقوم عامل حسابك اني البرنامج دة مش يشتغل الا علي الجهاز اللي انت منزله علية فقط حتي لو صاحب الجهاز قام باخذ نسخة من البرنامج ونشغلها في برنامج اخر مش هيشتغل معاه"

الأخ محمد مهندس برمجيات:

"حماية البيانات والمعلومات موضوع كبيبر يؤرق الكثيرين ولا توجد اي ضمانات في هذا المجال لان الضمانات الوحيدة الموجودة هي ان اشد التقنيات الحالية امنا هي تلك التي لايمكن ان تخترق من ابدا ضمن التقنيات الحالية ولكن لا يضمن سلامتها من الاختراق ضد اي تقنيات مستقبليه او لم تكتشف بعد وهذا العلم كما تعلم في تطور مستمر وسريع جدا"

أخوكم أنيس من الجزائر و جزاكم الله كل خير

#2

"حماية البيانات والمعلومات موضوع كبيبر يؤرق الكثيرين ولا توجد اي ضمانات في هذا المجال لان الضمانات الوحيدة الموجودة هي ان اشد التقنيات الحالية امنا هي تلك التي لايمكن ان تخترق من ابدا ضمن التقنيات الحالية ولكن لا يضمن سلامتها من الاختراق ضد اي تقنيات مستقبليه او لم تكتشف بعد وهذا العلم كما تعلم في تطور مستمر وسريع جدا"

لا توجد طريقة مأمونة 100%، لذا من السليم أمنياً أن تعتبر أن احتمال نسخ برنامجك بشكل غير قانوني هو شبه أكيد.

#3

شكرا لك System Down لاهتمامك لموضوعي و مثل ما قلت أخي و الكلام المقتبس أعتقد أن الـ 100 بالمائة تعتبر شبه مستحيلة

تحقيقها على حسب ما فهمت حتى اليوم و لكن آمل أن يكون هناك شرح أكثر من الإخوة الأساتذة لربما يكون لهم رأي

آخر أتعلق به لإتمام ما أنوي تطبيقه. . و أحب أن أتأكد هل ممكن عمليا أن يتم عمل شيفرة تتغير تلقائيا و عشوائيا و عمل كود لا يرجع إلى

الأصل أبدا إذا سلّمت أنني لا أريد إجراء أي تعديل أو تحديث للتطبيق (البرمجة)

____

#4

بخصوص هالحكي أخي الكريم

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

بدلاً أن تقوم بتصحيح الموجود وازالة ما به من عيوب .... أي ما أقصده Maintenance

فأنت تريد أن تعود بنا إلى العصر الحجري -

اقتباس
فكرت أن أتجاوز لغة الـ assembly و أبدأ من لغة الآلة
- لشيء قد تغلب عليك ...

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

طور على الموجود وصحح الخطى فأنت تستفيد وتفيد ولا تبدأ من البداية وتنهي ما قام به الأخرين -حجر الأساس- فهذا العلم قد بدأه الالاف من الخبراء ....

حتى حينما تقوم انت بالتصحيح تكبر وتعلو في عيون الأخرين ...

فأعطيك مثلا أن يوجد عدد لا بأس به - قد يربو على الالاف لدى الشركات الكبرى مثل ميكروسوفت- يعملون في مجال الصيانة الدورية للبرمجيات وأكتشاف الثغرات الأمنية....

والسلام خير ختام

#5

أخي خليل جزاك الله خيرا لأنك نبهتني إلى هذا الأمر و هو التأكيد أنني لا أفقه في البرمجة أي شيء و لا أبحث

عن المنافسة أو التميز في البرمجة عموما و مجال عملي خارج تماما عن الحاسوب و هندسة البرمجيات كما أنني لا أريد

أن أتجاوز جهود الآخرين و حاشا لله و أنت قرأت في موضوعي هذا النص "..أو بشكل آخر أقوم ببناء لغة برمجة جديدة بكود

جديد بدءا من لغة الآلة بمساعدة مبرمجين في المجال و بعدها ببناء نظام تشغيل بسيط لا يهتم لتعريفات الأجهزة و لا لواجهات الجرافيك و إنما لأجل تنفيذ برنامجي فقط"

فأي مبرمج من الهواة كان أو حتى مبتدئ أظنه سيعلم بداهة أنه يلزمني سنوات و سنوات حتى أمر بالمراحل التي ذكرتها

(فهم اللغة الثنائية+عمل لغات البرمجة+المترجمات+المفسرات+التطبيقات+و و و و) و الله أعلم إن كان هذه الفكرة المعتمدة

على هذا التطبيق قد تنجح أم لا، و خصوصا أن مستواي متواضع و ليس بالمستوى الجامعي أو من ذوي الشهادات العليا

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

الحال سأبحث عن فريق عمل من بلدي أو خارجه و أعرض عليهم تفاصيل المشروع و بعدها لهم الخيار في إتمامه أو العدول عنه

(و يرافقه النقاش حول نظرتهم المادية و التمويل و النسب و غيرها من المفاهيم التي قد تخفى علي)

مرة أخرى أشكرك على المرور و مشاركتي الموضوع/

تم تعديل هذه المشاركة بواسطة anis.w في 24 فبراير 2011 في 11:22

#6

نواصل تعميما للفائدة. .

و هذه إجابة أخرى وصلتني اليوم من أحد الإخوة على الـ facebook فيما يخص ما كتبت. .

"الجواب اذا وصل ذكائك الى هذه الدرجه فاكيد ان البرنامج الذي ستعمله لن يخترق مادام عملته بناء على فكرتك

الخاصه او على الاقل سيصمد طويلا هذا ان كنت فعلا على درجة الذكاء التي ذكرتها

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

يدك انت فقط وهنا درجة الامان تظل الى حين وقوع خوارزمية فك التشفير في يد اي احد غيرك

طبعا كل هذا يحتاج الى انسان ذو ذكاء خارق بهذا المجال وليس مجرد دارس او هاوى المطلوب هنا خبيير"

و أخبرته مثل ما كتبت لخليل أنني لا أفكر أن أعمل على ذلك لوحدي بل بمساعدة المتخصصين و هي في

الأساس كان مجرد اقتراح مني لأبدأ من حيث بدأ الآخرون. و أوافق الرأي الذي يقول أن ذلك مضيعة للوقت

و الجهد و قد يكون ما هو أفضل من ذلك بكثير

في الانتظار

#7

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

#8

امم ألا تزيدنا تفصيلا في فكرة برنامجك...

ومثلما ذكر الأخوة لا توجد طريقة لمنع الكسر مضمونة 100%، لكن يمكنك الجمع بين تقنيات التشفير والتمويه لتحقق defense in depth (Multi layer protection

تم تعديل هذه المشاركة بواسطة A.S Hack في 24 فبراير 2011 في 21:49

" إن الله كتب الإحسان على كل شيء"

::

الإرادة ... تحقق السيادة.

#9
System Down كتب:

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

كلام مفيد جدا System Down بالرغم من أنني لم أفهم قولك أن الخوارزمية يجب أن تكون لدى الطرفين!!

الطرف المستقبل يقوم بإدخال بيانات بسيطة من واجهة البرنامج فقط و كأنه يستخدم calculator الخاصة

بالوينداوز ثم كليك حفظ لا غير و بعدها يتم التحديث بمجرد اتصال النسخة التي عنده مع النسخة التي عند

المرسل و هما نفس النسختين إلا أن التي عند المستقبل وقع عليها إضافة جزء بسيط من البيانات و بالتالي

بعد التحديث (الاتصال) تكون النسخة الثانية لها نفس العمليات التي أجريت على الأولى و بمناسبة ذكرك

للتشفير و الخوارزميات كنت قد قرأت اليوم هذا السؤال. .

"لم لا يتم عمل التشفير للنص باستخدام اكثر من خوارزمية بشكل متتالي للنتيجة لكل خوارزمية مثلا

1- النص المدخل

2- تشفير باستخدام خوارزمية 1--> نص مشفر 1

3- تشفير النص المشفر 1 بخوارزمية 2--> نص مشفر 2

. . . . . . . . . . الخ

لم لا يتبع هذ الاسلوب في التشفير لمزيد من المتانة والتعقيد"

و بالمناسبة أيضا قرأت لك موضوع على هذا الرابط و الذي يصب في نفس المنحى:

/index.php?showtopic=236862&st=0&p=1174189&fromsearch=1entry1174189

الشيء الذي يعني أن الأمر ليس بالسهل و هو أخطر جزئية في هذا المجال. .

#10

أستاذ A.S Hack شكرا لمرورك هنا

هل تقصد بالـ (defense in depth (multi layer protection

شيء شبيه بالسؤال الذي نقلته بمشاركتي السابقة أم شيء آخر

المهم أنا لا أريد فهم تفاصيل في البرمجة أو في التشفير لأن ذلك سيكون

بمساعدة آخرين و لكن فقط في حالة توفر شروط لذلك و بخصوص سؤالك

عن تفاصيل لا بأس أن أبسطها أكثر بالرغم من انني كتبت مقالة بالأعلى. .

تخيل أن لك تطبيق (البرنامج الذي نتكلم عنه) و بعثته إلى غيرك ثم يعيده

إليك مرة أخرى كيف تضمن أن لا يعترضه قطاع طرق :) و أنت فاهم قصدي

#11

الحقيقة لا أدري إن كنت قد فهمت قصدك... ولكن ربما هذا يفيدك:

يمكنك استخدام خوارزمية RSA يكون المفتاح الخاص لديك (لفك التشفير)، والمفتاح العام يستخدمه غيرك للتشفير، طبعا المفتاح العام لا يمكن استخدامه لفك التشفير لذلك لا ضرر من أن يعرفه كل العالم!

ولضمان عدم التغيير في الرسالة المنقولة يمكنك الاستفادة من تقنية MAC...

أو يمكنك تبادل مفتاح واحد سريا خاص بالتشفير وفكه عن طريق خوارزمية Diffi Hillman

والجمع بين كل هذه الطرق سيعقد المسألة ويصعب أي محاولة للتلصص!

بالتوفيق

تم تعديل هذه المشاركة بواسطة A.S Hack في 24 فبراير 2011 في 22:28

" إن الله كتب الإحسان على كل شيء"

::

الإرادة ... تحقق السيادة.

#12
A.S Hack كتب:

الحقيقة لا أدري إن كنت قد فهمت قصدك... ولكن ربما هذا يفيدك:

يمكنك استخدام خواريزمية RSA يكون المتاح الخاص لديك (لفك التشفير)، والمفتاح العام يستخدمه غيرك للتشفير، طبعا المفتاح العام لا يمكن استخدامه لفك التشفير

ولضمان عدم التغيير في الرسالة المنقولة يمكنك الاستفادة من تقنية MAC...

أو يمكنك تبادل مفتاح واحد خاص بالتشفير وفكه عن طريق خوارزمية Diffi Hillman

بالتوفيق

أخي أكذب عليك لو قلت لك أنني فهمت شيء مما كتبت و لكن هل التقنيتين التي تكلمت عليهما

(المفتاح الخاص و العام) و mac أو تبادل المفتاح بين الطرفين تعتبر ناجعة و لا تفكيك لها على المدى

الطويل؟ أم أنه تبعا للقاعدة المتفق عليها لحد الآن لا تصل إلى الـ 100 بالمائة؟

#13
anis.w كتب:
<br />أخي أكذب عليك لو قلت لك أنني فهمت شيء مما كتبت و لكن هل التقنيتين التي تكلمت عليهما <br />(المفتاح الخاص و العام) و mac أو تبادل المفتاح بين الطرفين تعتبر ناجعة و لا تفكيك لها على المدى <br />الطويل؟ أم أنه تبعا للقاعدة المتفق عليها لحد الآن لا تصل إلى الـ 100 بالمائة؟<br />
<br /><br /><br />

أما RSA فلا أعرف لها هجوما غير Brute force، وهي من أشهر وأقوى تقنيات التشفير، وكلما زاد طول المفتاح كلما صعب كسره، قد يستغرق المهاجم آلاف السنين لتطبيق هجوم Brute force وكسر المفتاح (طبعا تحت الضروف العادية) هذا ان تم الكسر أصلا بعد آلاف السنين فربما يصل لمليون سنة!. بالمناسبة المعالجات الجديدة أعطت نتاءج تقلق هذه الخوازمية، لكن كان ذلك على مفاتيح ذات طول قصير. google it :)

الحال مشابه بالنسبة ل Diffi Hillman

لا يوجد حماية 100 % .

" إن الله كتب الإحسان على كل شيء"

::

الإرادة ... تحقق السيادة.

#14
anis.w كتب:

كلام مفيد جدا System Down بالرغم من أنني لم أفهم قولك أن الخوارزمية يجب أن تكون لدى الطرفين!!

الطرف المستقبل يقوم بإدخال بيانات بسيطة من واجهة البرنامج فقط و كأنه يستخدم calculator الخاصة

بالوينداوز ثم كليك حفظ لا غير و بعدها يتم التحديث بمجرد اتصال النسخة التي عنده مع النسخة التي عند

المرسل و هما نفس النسختين إلا أن التي عند المستقبل وقع عليها إضافة جزء بسيط من البيانات و بالتالي

بعد التحديث (الاتصال) تكون النسخة الثانية لها نفس العمليات التي أجريت على الأولى و بمناسبة ذكرك

للتشفير و الخوارزميات كنت قد قرأت اليوم هذا السؤال. .

"لم لا يتم عمل التشفير للنص باستخدام اكثر من خوارزمية بشكل متتالي للنتيجة لكل خوارزمية مثلا

1- النص المدخل

2- تشفير باستخدام خوارزمية 1--> نص مشفر 1

3- تشفير النص المشفر 1 بخوارزمية 2--> نص مشفر 2

. . . . . . . . . . الخ

لم لا يتبع هذ الاسلوب في التشفير لمزيد من المتانة والتعقيد"

و بالمناسبة أيضا قرأت لك موضوع على هذا الرابط و الذي يصب في نفس المنحى:

/index.php?showtopic=236862&st=0&p=1174189&fromsearch=1entry1174189

الشيء الذي يعني أن الأمر ليس بالسهل و هو أخطر جزئية في هذا المجال. .

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

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

#15

السلام عليكم

A.S Hack و System Down جزاكما الله خيرا فقد استفدت كثيرا من ردودكما

و قد كنت صفر في هذا العلم و ليس لي أدنى فكرة عنه و لكن و الحمد لله

بدأت من أيام قليلة جدا في البحث على النت و الاطلاع أكثر في مختلف المواضيع

و عن مختلف لغات البرمجة حتى أصل إلى ما أبحث عنه و بحق وجدته علم

واسع و واسع جدا و يحتاج إلى كثير من التركيز و الجهد و الاعتكاف للخروج بنتائج

مرضية و مقبولة و مثل ما يقولون بالفرنسية. .

les vrais informaticiens, c'est les programmeurs

أي فيما معناه أن علماء الكمبيوتر الحقيقيون ليسوا هم الهواة أو المستخدمون

(العاديون مهما بلغت احترافيتهم كالمصممين في الجرافيك مثلا) و إنما هم المبرمجـــون. .

و أعتقد أنه يلزمني كتب و روابط لمواضيع تتكلم في هذه النقطة بالتحديد لأن لها

علاقة قوية و لأنه يهمني كثيرا في الوقت الحالي أن أعرف ما هي الخطوات اللازم

اتخاذها (و لست مستعجلا) قبل أن أنتهي من فكرة الحماية هذه.

"لذا هدف التشفير ليس منع الوصول إلى المعلومة بقدر ما هي منع الوصول

إلى المعلومة قبل أن تصبح المعلومة بدون قيمة"

أحسن ما قرأت بارك الله فيك

#16
اقتباس
اخي انيس بعتذر جدا على التاخر في الرد وانا اسف لاني بقالي فتره كبيره

ما من لغه برمجه الا وتخترق هذا اولا

الا اذا بدات من بدايه البدايات وانتهيت عند اخر حلول الحمايه

توكل على الله ونفذ فكرتك ولكن لا محال من الاختراق وانا تحت امرك

Mr.B كتب:

حسبما فهمت أنّك تتحدث عن حماية البرنامج نفسة من أن يطلع على محتواه وكيف يعمل ,إذا كان هذا ماقصدته

كلما إقتربت من لغة الآلة , كلما سهل الأمر على المُهشّمين , إذا كنت تخشى أن تكسر حماية برنامج فقط ..

فهي ستكسر (كسرت قبلها برمجيات من شركات كبيرة) و ماتقوم به مجرد تأخير للوقت ودعوة محبّي التحديات (المحترفين) لكسر برنامجك

موضوع النسخ المقرصن .. هذا سيحصل وﻻيستطيع أحد إيقافه لذا من الأفضل أن ﻻتضيع وقتك في تحديه وتصرف الوقت في التطوير والتحسين.

KNOWING THE LAWS OF SECURITY

The laws of security in our list include:

■ Client-side security doesn’t work.

■ You cannot securely exchange encryption keys without a shared piece of information.

■ Malicious code cannot be 100 percent protected against.

■ Any malicious code can be completely morphed to bypass signature detection.

■ Firewalls cannot protect you 100 percent from attack.

■ Any intrusion detection system (IDS) can be evaded.

■ Secret cryptographic algorithms are not secure.

■ If a key isn’t required, you do not have encryption—you have encoding.

■ Passwords cannot be securely stored on the client unless there is another password to

protect them.

■ In order for a system to begin to be considered secure, it must undergo an independent

security audit.

■ Security through obscurity does not work

.

المصدر

إجعل القراصنة أصدقاء لك ,,

إذا كنت تخشى إستغلال ثغراته .. فأفضل وأقوى طريقة للحماية ..

إجعل البرنامج مفتوح المصدر Open Source (ﻻ أعني بأنه مجاني , بل شفرته توزّع معه)

قد يكون هذا عكس ماتوقعته لكن تأكّد بأنّ أكثر البرامج إحترام ودعم وثقة وأقواها أمناً هي البرامج المفتوحة المصدر

< ﻻيوجد شيء نخفية هذا البرنامج , إذا وجدت عيب فيه أو ضعف , نرحب ونسعد بإخبارنا به وسنصلحه عاجلاً >

#17

السلام عليكم اخي

اول شيء تنبيه للاخوان الذين ردوا انه يتم التشفير اما ب rsa او اي شيفرة اخرى فانه لا يمكن تشفير الكود المصدري بهذه الشيفرة لانه في النهاية هو سوف يحول الي برنامج والبرنام سوف يكون بلغة برمجة غير مشفرة وايضا اخي اي تقنية تشفير فهناك ثغرات لها لايوجد اي تقنية تشفير لم تخترق حتى الان .

اما عن الحل فهناك حلان وهما متشابهان تقريبا

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

اما الحل الثاني فهو ايضا بالويب ولكن بطريقة اخرى

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

ملاحظة : في الحالتين يجب على المستخدم ان يكون على اتصال بالانترنت وانا لست ارى بها مشكلة لان الاغلب الان متصلون بالانترنت.

ملاحظة : حتى لو عملت نظام تشغيل لبرنامجك اذا حطوها براسهم بجيبو الكود تبع البرنامج.

ملاحظة اخرى: ربما هذه الطريقة امنة في هذا الوقت ولكن في المستقبل لا تعرف ماذا يحدث ولكن انا متاكد انه بالمستقبل سوف يكون هناك حلول اكثر واكثر امنا.

ارجو ان اكون قد افدتك

#18

مستحيل أن تكون العملية على سيرفر هذا من الركائز الأساسية

التي يعتمد عليها نجاح الفكرة و هنا لا أقصد من الناحية البرمجيـة

و إنما من ناحيـة أخرى لا يمكنني وضعها علنـا هنـا، كما أننـي

ذكرت فـي الأعلى و نوهت إلـى هذه النقطـة بالتحديـد

اقتباس
كما أنه ليس مثل تلك البرامج الموجودة على النت التي تتطلب اشتراك و أسماء مستخدمين و كلمات

مرور إنما تتم من خلال تحمل هذه البرمجة من على النت ثم يضيف إليها المتعامل (المشترك) التحديث لها كـ patch

ثم ترفع على موقع المؤسسة مباشرة أو على أي موقع رفع و بعدها رفع الرابط على إيميل الموقع المذكور.

و لكن ألف ألف شكر ليك أخي على الرد و الشرح في الموضوع

أقدر لك أخي ذلك كثيرا و أتمنى أن لا تحرمنــا من تعليقـاتك. .

#19

فـي اتظـــار روابـــط و اقتراحـــات. . شكرا

#20
khalid_se كتب:

السلام عليكم اخي انا رديت عليك قبل هيك بس انت يمكن ما فهمت قصدي بالزبط خليني اوضحلك

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

هسا انا برد بحكيلك مش اي حدة بقدر يعمل هاي الشغلة لانها صعبة كتير (بس مش مستحيلة) بس في ناس بقدرو يعملو هاي الشغلة .

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

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

وانا مش عارف انت ليش معارض فكرة انو يكون على سيرفر بالزمن الي احنا فيه اغلب البيوت فيها انترنت وكل الشركات فيها نت

anis.w كتب:

أخي khalid_se أشكرك على كل ما كتبته و أوضحته لي و بالنسة لوضع البرنامج على سيرفر

فالموضوع معقد نوعا ما، ليس من ناحية تواصل المستخدمين مع البيانات بل يدخل فيها تواصل

المستخدمين أيضا مع بعضهم البعض و لكن عن طريق بيانات جزئية ليست هي نفس البيانات

التي ستكون على السيرفر أي بعبارة أخرى تكون بيانات جزئية متداولة بين مستخدمين اثنين

أو ثلاثة فيما بينهم أو أربعة أو خمسة و هكذا.

فكرتك عن توصيل البرنامج بسيرفر أعتقد من الناحية النظرية ممكنة و لكن من الناحية العملية

شبه مستحيلة أو مستحيلة تماما و ذكرت هنا شبه مستحيلة إلا في حالة موافقة جميع

المستخدمين الذين قد يكونون بالآلاف إعطاء (أي إمداد) المؤسسة الشريك بالبيانات المتداولة

بينهم و لذا هذا الاحتمال مستبعد جدا بأن لا يكون و لا واحد يريد حفظ و لو جزء من البيانات

عن المؤسسة الاقتصادية الشريك.

هناك تعاملات جزئية تكون بعيدة عن المؤسسة الشريك و لها ارتباط معها في نفس الوقت

بنسب معينة محددة مسبقا ما بين مستخدم و آخر أو مستخدم و أربعة مستخدمين مثلا

في غياب بيانات هذه التعاملات عن السيرفر و عن باقي المستخدمين. و هنا أسألك

أليس من الممكن بل و الأكيد أن القائمين على السيرفر يمكنهم الاطلاع على محتوى تلك

التعاملات الجانبية؟

البرنامج و إن كان صغيرا جدا فهو مرتبط إرتباطا وثيقا بالمستخدين و يلزم أن يكون في متناول

أيديهم و مرفوع على النت ليستخدمه من يريد الاشتراك و التعامل مع هذه المؤسسة و هي

تعتبر مستخدم عادي و لكنه المستخدم المدير للعملية و له الصلاحيات القانونية و المالية

(بحكم أنه المساهم الأكبر) و كذا أمور أخرى كضمان أن مفهوم الخسارة لا يمس المستخدم

و و و و

أرجو أن أكون أوصلت و لو جزء بسيط من الفكرة العامة للعملية و تبقى التفاصيل الحسابية

الدقيقة و الهيكل الذي تبنى عليه لأهل الاختصاص في حال وجود الحماية المطلقة في

البرمجة و إن كنت بدأت افقد الأمل في هذا

نظريا العملية ناجحة و عمليا الله أعلم. . و أشكركم مرة أخرى

/index.php?showtopic=237472&st=0&gopid=1187957entry1187957

#21

هل هناك من جرب

حماية نت

#22

للرفـع. .

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…