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

كيف تحمي (تشفر) قواعد بيانات اكسس مع برامجك

بدأه محمد بدوي في 28 يونيو 2003 · 36 رد · 13,446 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

الان الطريقة كالتالي

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

البعض لايعرف انه اذا غير امتداد اسم ملف قاعدة البيانات فانها تعمل فقط تحتاج الى تعريف الاسم في الكود و هذا يعتبر مستوى اخر من الحماية ويستخدمه الكثيرون وذلك بتغير امتداد قاعدة البيانات من file.mdb الى file.dat

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

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

قم بتحميل الملف عل الوصلة التالية وفك ضغطه

http://www.arabteam2000.com/filemanager/fi...es/badwi/db.zip

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

قم بتحميل الملف التالي

http://www.arabteam2000.com/filemanager/fi...wi/DataEncr.zip

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

الكود سهل ويمكنك تغير اي رقم من الاحرف ويفضل ان تكون اكثر من 70 ولا تزيد طبعا عن حجم الملف

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

الان لناتي الى الكود وشرحه

'مجرد تعريف للمتغيرات

Dim ContentFile As String

Dim FileNumber As Long

Dim EnrypChar As String





' فتح مربع حوار لاختيار الملف

    With CommonDialog1

        .Filter = "All Files(*.*)|*.*|"

        .Flags = cdlOFNHideReadOnly Or cdlOFNFileMustExist Or cdlOFNPathMustExist

        .DialogTitle = "Select File"

        .FileName = ""

        .ShowOpen

        If .FileName = "" Then Exit Sub

        Caption = .FileName

    End With



    FileNumber = FreeFile

    

    'التهيئة لفتح الملف

    ContentFile = Space$(FileLen(Trim$(Caption)))

    

    'فتح الملف

    Open Trim$(Caption) For Binary As FileNumber

        Get #FileNumber, 1, ContentFile

    Close #FileNumber



'هنا يتم فتح الملف

    'مفتاح التشفير هنا 200 حرف

    EnrypChar = StrReverse(Mid(ContentFile, 1, 200))

    

    'يتم تحديث بيانات الملف بالبيانات الجديدة

    ContentFile = EnrypChar & Mid(ContentFile, 201, Len(ContentFile))



'حفظ بيانات الملف بعد التغير

    Open Trim$(Caption) For Binary As FileNumber

        Put #FileNumber, 1, ContentFile

    Close #FileNumber

جديد مدونتي الشخصية http://www.badwi.com

ادعو لنا بظاهر الغيب

MyBooksExchange.jpg

#2

مشكور على هذا الشرح الجميل و المجهود الرائع(f):b1

#3

مشكور .... أخي العزيز

stamp6.gif

#4

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

أستخدم طريقة ADO للربط مع قاعدة البيانات

كيف يمكن التعامل مع قاعدة بيانات عليها كلمة مرور من خلال صيغة هذا الكود

Set database = OpenDatabase (dbname, options, read-only, connect)

آمل الرد عن طريق مثال

mytrial_a.gif

نحن بحاجة لتدوين تجاربنا , نحن بحاجة إلى اكتشاف قيمة التجربة, هذه تجربتى مثيرة ومفيدة ...,

هنا
#5

للتصحيح

أتأسف

فلقد كتبت مسمى الأداة خطأ 00

أنا أستخدم أداة الربط ( DAO ) وليس ADO

mytrial_a.gif

نحن بحاجة لتدوين تجاربنا , نحن بحاجة إلى اكتشاف قيمة التجربة, هذه تجربتى مثيرة ومفيدة ...,

هنا
#6

استخدم

 

";pwd=" & Password

جديد مدونتي الشخصية http://www.badwi.com

ادعو لنا بظاهر الغيب

MyBooksExchange.jpg

#7

اشكرك ولك تحياتى

mytrial_a.gif

نحن بحاجة لتدوين تجاربنا , نحن بحاجة إلى اكتشاف قيمة التجربة, هذه تجربتى مثيرة ومفيدة ...,

هنا
#8

كود جميل بالفعل :)

مشكور والى الأمام

أنتظروا منى بعض طرق الحمايه الممتازه ;)

++ منتديات فورمصــــــــــر ++

++ Http://www.4Masr.Com/vb ++

#9

إخواني كثر البكاء على مسألة حماية المعلومات .

هل كثر السارقون اليوم.:confused:

يوم العلوم تعلمنا ولكننا جهلاء حقيقة .

لأن علومنا علوم لصوص ، كل منا يسرق من صاحبه.

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

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

لا ألوم عندما أسمع عن أن د. دكتور ليست د. لدكتور بل ( دلخ ).:eek:

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

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

mysin3.gif
#10

أخى العزيز / MR1GoldenCity

كل كلامك حلو وجميل 00 ولكن علينا أن نتعلم الكثير بقدر الإمكان وبعدين نقرر أى يجب ألا نترك أى موضوع يمر مر الكرام

لك تحياتى

mytrial_a.gif

نحن بحاجة لتدوين تجاربنا , نحن بحاجة إلى اكتشاف قيمة التجربة, هذه تجربتى مثيرة ومفيدة ...,

هنا
#11

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

وبذلك يكون للمستخدم الدخول عليها والبرنامج شغال

مما يعني عمليا عدم حمايتها

الرجاء الانتباه لهذه الناحية

والبحث عن حل

أخوكم المحب بالله

عبد الرحمن

#12

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

#13

basmallah.gif

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

أخي العزيز محمد بدوي

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

لقد استطعت الدخول على القاعدة بعد إصلاحها ببرنامج Easy Recovery

يعني مستوى الحمايه الاول = 0

tahiyat.gif

========

counter2001b.cgi?602678

========

موقع أبو حمود لتعليم الأكسس

http://www.mybiznas.com/access/

صورة
صورة

حسابي في الفيس بوك
http://goo.gl/XIzwL

حسابي في تويتر
http://goo.gl/6p4e3

 

 
 
#14

كلامكم صحيح

اخي : عبود المنطاد

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

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

اخي فيصل الحربي

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

بالنهاية انا ذكرت سابقا لايوجد شيء اسمه حماية مطلقة ولن يكون هناك ايضا

جديد مدونتي الشخصية http://www.badwi.com

ادعو لنا بظاهر الغيب

MyBooksExchange.jpg

#15

عفوا

تم تعديل هذه المشاركة بواسطة تقنيات البرمجة في 9 سبتمبر 2003 في 01:04

#16
محمد بدوي كتب:
بالنهاية انا ذكرت سابقا لايوجد شيء اسمه حماية مطلقة ولن يكون هناك ايضا

أخي محمد بديوي

انا جديد على المنتدى ولكنني من متابعيه ، ومن متابعتي لمواضيعك ارى بأنك أكبر من أن تقول :

راجع حساباتك

#17

السلام عيكم ورحمة الله وبركاته ..... وبعد

لقد ألقيت نظرة على ردكم على أحد الاخوان باستخدام

pwd = "&password;" .... وبصراحة لم أتمكن من تنفيذ ذلك ولازلت لا أستطيع الوصول الى قاعدة البيانات بسبب كلمة المرور الموجمودة من قبل Access

لذلك اذا تكرمت .... أنت تشرح لي أكثر .. سأكون لك من الشاكرين .

الكود الذي قمت بكتبته هو

Set Database = OpenDataBase(app.path+ "اسم قاعدة البيانات" , , , pwd = "كلمة المرور التيو وضعتها في الــAccess " (

الكود ليس واضحا .... ولكن أرجو المساعدة وشكرا

#18

THANKS...

#19

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

وشكراً

#20

مشكور على الموضوع

#21

شكرا

#22

نسيت ان اقو اللللللللللللللللللللللف شكر لك

#23

مشكور ولكن هناك مشكلة في الروابط

أتمنى إعادة ضبط الروابط

#24

الروبط لا تعمل

#25

الروابط لا تعمل تطلب كلمة مرور برجاء الرد من الأدارة

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

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

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

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

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