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

تشفير وفك تشفير جداول معينة ؟

بدأه kafi في 10 سبتمبر 2012 · 1 رد · 739 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

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

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

كما تم مراجعة للاخ ابو يوسف، كانت من اجل تشفير وفك تشفير جدول معين عند فتح او اغلاق نموذج.

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

المشكلة الاولى / تتمثل في مثال الاخ ابو يوسف انه هو موضوع على مستوى تشفير وفك تشفير لجدول وحيد.

إننا نعلم ان اغلب قواعد البيانات فيها العديد من الجدوال بعضها اساسي، وبعضها ثانوي.

المشكلة الثانية

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

For intCounter = 1 To Len(strIn)
varTmp = Asc(Mid$(strPass, (intCounter Mod intLen) - intLen * ((intCounter Mod intLen) = 0), 1))
Mid$(strTmp, intCounter, 1) = Chr$(Asc(Mid$(strIn, intCounter, 1)) Xor varTmp)
Next

اولاً :

ارجو ان يتم وضع كودين منفصلين، واحد للتشفير نستدعيه عندما نريد التشفير، وكود اخر لفك التشفير نستدعيه عندما نريد فك التشفير

فهذا اسهل لنا في تتبع الاحداث وفهمها وتبسيطها.

ثانياً :

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

الجداول التي ارغب بتشفيرها وفك التشفير عنها هي

1- Primary

2- Bill وهو على ارتباط بالجدول Basic

3- Basic

4- Beda

ان هذه الجداول تكون بشكل رئيسي حاوية لاهم المعلومات.

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

ولكنني لم انجح بالامر

ارجو تعديل المثال المرفق.

المثال معمول على اكسس 2007

والف شكر

Q95.rar

تم تعديل هذه المشاركة بواسطة kafi في 11 سبتمبر 2012 في 00:07

#2

السلام عليكم

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

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

كود فك التشفير

Private Sub Un_Tashfer_Beda()

Dim i As Integer
Dim strSecret As String
Dim strPassword As String
Dim x As String
Dim R As Recordset
Dim sCount As Long

'ááÍÕæá Úáì ÚÏÏ ÇáÓÌáÇÊ Ýí ÇáÌÏæá Beda
sCount = DCount("[Beda-id]", "Beda")

'ãÝÊÇÍ ÇáÊÔÝíÑ
strPassword = "table-Encryption/Decryption"
Set R = CurrentDb.OpenRecordset("select * from Beda;")


   	For i = 1 To sCount

 	'íÊã ÝÍÕ ÓÌá ÓÌá
 		If R![encrypted] = True Then
          	R.Edit

            	If Not IsNull(R![beda]) Then
                	x = R![beda]
                	strSecret = EncryptDecrypt(x, strPassword)
                	R![beda] = strSecret
            	End If

            	R![encrypted] = False
        	R.Update
 		End If

   	R.MoveNext
	Next i

 R.Close

End Sub

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

ا كود نستدعيه للتشفير، وكود اخر نستدعيه لفك التشفير

والف شكر

Q95 Ab.rar

تم تعديل هذه المشاركة بواسطة kafi في 12 سبتمبر 2012 في 22:14

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