• 0
محمد فؤاد تركي

درس لتعلم أرقام الآسكي كود

سؤال

أخواني الكرام

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

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

عن ما هي ارقام الآسكي كود وما هي وظيفتها .........

اولا يجب ان نعلم ان لكل حرف في لوحة المفاتيح رقم خاص به محصور بين الصفر و 255 بحيث لايتعامل الكمبيوتر مع غير هذا المجال ومثلاً الحرف "A" يقابله الرقم 65 بينما الحرف "a" له الرقم 97 ... ونلاحظ من ذلك ان للحرف A رقمان الاول للحرف الصغير و الآخر للحرف الكبير ... وكذلك الحال مع باقي الحروف و الازرار في لوحة المفاتيح ... وهو ما يسمى الاسكي كود للحرف (ASCII Code) ...

ويوجد دالتان مهمتان في الفجيوال للتعامل مع الاسكي وهما :

Asc()
Chr()

حيث ان الدالة Asc تحول النص الى رقم الاسكي اي ان ناتج :

Asc("A") = 65

وتقوم الدالة Chr بعكس العمل اي انها تحول الرقم الى حرف مثلاً :

Chr(97) = "a"

ومما سبق نعرف كيف نستلم نص ونحوله الى ASCII ومن ثم نعيده ...

ودعنا الان نتعرف سوياً على المعامل XOR حيث انه عبارة عن معامل مثل OR و AND ....

ونحن نعرف انه اذا كان لدينا شرطان مثلاً C1 و C2 واستخدمنا AND فلن يكون النتاج صحيح الا اذا كان الشرطان صحيحان مثلاً :

If C1 AND C2 Then MsgBox "صحيح"

وبذلك لن تظهر الرسالة الا اذا كان الشرطان صحيحان اما اذا استخدمنا المعامل OR لاظهار نفس الرسالة بالشكل التالي :

If C1 OR C2 Then MsgBox "صحيح"

فالرسالة لن تظهر اذا كان كلا الشرطان او احدهما صحيحاً ...

ولكن استخدام المعامل XOR يجعل الرسالة تظهر في حالة واحدة وهي ان لايستاوى الشرطان اي انه اذا كان احد الشرطان صحيح والآخر خطاء فان الرسالة ستظهر :

If C1 XOR C2 Then MsgBox "صحيح"

واما اذا كان الشرطان صحيحان او اذا كان الشرطان غير صحيحان فان الرسالة لن تظهر فهي تظهر في حالة ان احد الشرطان صحيح ...

وذلك هو مقارنة المعامل XOR مع المعاملات المعروفة And,OR ولكن لهذا المعامل خاصية فريدة جداً جعلت منه معاملاً مميزاً ... سوف نناقشها هنا ..

كل المعاملات السابقة يمكنك استخدامها لمقارنة رقمان فمثلاً اذا كان لدينا الرقم 121 واردنا مقارنته مع الرقم 34 باستخدام المعاملات الثلاثة السابقة كالتالي :

Print (121 And 34) ' = 32
Print (121 Or 34) ' = 123
Print (121 Xor 34) ' = 91

فسوف تلاحظ ان الناتج من المقارنة بـ AND تعطي الرقم 32 والمقارنة بـ OR تعطي الرقم 123 ,واما المقارنة بـ XOR فتعطي الرقم 91 وكل هذة الارقام هي ارقام نتجت من مقارنات هندسية لا اجد داعي لذكرها هنا وما يهمنا الان هو النتائج ... فهل توحي لك النتائج بشيء ؟ .... طبعاً لا فهي عبارة عن ارقام عادية !!!

طيب قارن الان الارقام الناتجة بالرقم 34 مرة اخرى بالشكل التالي :

Print (32 And 34) ' = 32
Print (123 Or 34) ' = 123
Print (91 Xor 34) ' = 121

اذا نظرت للنتائج فانها بالترتيب 32 و 123 و 121 ...... ويمكنك الان ان تلاحظ ان الناتج من المقارنة XOR اعطى لنا القيمة 121 وهي القمية الاولى التي قارناها سابقا مع الرقم 34 اي ان :

121 XOR 34 = 91
91 XOR 34 = 121

وهذة هي الخاصية المميزة فيه ... حيث انك اذا استلمت ملف نصي ثم حولت كل حرف فيه الى رقم الاسكي باستخدام الدالة Asc() كما سبق ثم بعد ذلك قارنت الرقم بواسطة الـ XOR باي رقم تختاره انت ولنفرض 12 ... فانه سوف تنتج لك ارقام حولها الى حروف بواسطة الدالة Chr ثم اعيدها الى الملف ... وبعد ان تنتهي من كل الحروف في الملف سوف تجد انه لديك ملف نصي بحروف غريبة نتجت عن المقارنة .....

وبعدها عندما تريد استاعدة بياناتك قم بمقارنة حروف الملف المشفر بنفس الرقم (12) وبالتالي فسوف ينتج الحرف الاصلي لان المعامل XOR يمتلك خاصية الاستعادة كما حدث مع الرقم 121 في مثالنا السابق ....

طبعاً انت لن تقارن الحروف مع رقم واحد هو 12 بل يمكنك ان تستخدم كلمة سر ثم تحولها الى ارقام تقارنها مع الملف كي يقوم بالتشفير ثم تقارنها بالملف المشفر مرة اخرى لتستعيد بياناتك ...

و هنا بالنظر لو أردنا الإختصار في الماضي ...

نجد أن الحروف من A-Z والحروف من a-z في اللغه الإنجليزيه ..

نجد أن رقم الحرف في النظام العشري والنظام الثنائي كما يلي ..

هذه هي الحروف الكبيرة وما يقابلها من ارقام الآسكي كود

( A =  65 = 01000001 )
( B = 66 = 01000010 )
( C = 67 = 01000011 )
( D = 68 = 01000100 )
( E = 69 = 01000101 )
( F = 70 = 01000110 )
( G = 71 = 01000111 )
( H = 72 = 01001000 )
( I = 73 = 01001001 )
( J = 74 = 01001010 )
( K = 75 = 01001011 )
( L = 76 = 01001100 )
( M = 77 = 01001101 )
( N = 78 = 01001110 )
( O = 79 = 01001111 )
( P = 80 = 01010000 )
( Q = 81 = 01010001 )
( R = 82 = 01010010 )
( S = 83 = 01010011 )
( T = 84 = 01010100 )
( U = 85 = 01010101 )
( V = 86 = 01010110 )
( W = 87 = 01010111 )
( X = 88 = 01011000 )
( Y = 89 = 01011001 )
( Z = 90 = 01011010 )

هذه هي الحروف الصغيرة وما يقابلها من ارقام الآسكي كود

( a =  97 = 01100001 )
( b = 98 = 01100010 )
( c = 99 = 01100011 )
( d = 100 = 01100100 )
( e = 101 = 01100101 )
( f = 102 = 01100110 )
( g = 103 = 01100111 )
( h = 104 = 01101000 )
( i = 105 = 01101001 )
( j = 106 = 01101010 )
( k = 107 = 01101011 )
( l = 108 = 01101100 )
( m = 109 = 01101101 )
( n = 110 = 01101110 )
( o = 111 = 01101111 )
( p = 112 = 01110000 )
( q = 113 = 01110001 )
( r = 114 = 01110010 )
( s = 115 = 01110011 )
( t = 116 = 01110100 )
( u = 117 = 01110101 )
( v = 118 = 01110110 )
( w = 119 = 01110111 )
( x = 120 = 01111000 )
( y = 121 = 01111001 )
( z = 122 = 01111010 )

ومن هنا يتضح لنا امور كثيرة ان بعض المعادلات والمقارنات الذي يستعصي معالجتها بالطرق العادية يمكننا الاستعانة بإرقام الآسكي كود لحل غباء الحاسب الالي :lol:

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

وهنا لكم برنامج بسيط مفيد في معرفه اليوني كود للحرف ..( في الملف المرفق )

viewascii.zip

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

23 إجابة على هذا السؤال .

  • 0

ما شاء الله عليك اخي محمد

مجهود رائع وبالتاكيد يستفاد منه..

اشكرك..

همام

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الله يعطيك الف عافية يا أخي الغالي همام

والله هذه محاولة للمعرفة مش أكتر

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الغالي / محمد فؤاد تركي

معلومات قيمة ومجهود رائع

بارك الله فيك ونفع بعلمك

شكراً جزيلاً لك والشكر موصول ايضاً لاختنا ومعلمتنا الغالية زهرة

تقبلا اجمل تحية

تم تعديل بواسطه يوسف احمد
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

مشكوور اخي على المعلومات القيمة ..

ان شاء الله الكل يستفاد منها ..

اتصور تقصد بالطرق الهندسية هي تحويل الارقام الى النظام الثنائي وبعدين نعمل مقارنة على مستوى الصفر والواحد

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شكرا لك أخي محمد فؤاد

مجهود طيب وافر .. الله يجزاك كل خير

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الفاضل محمد فؤاد

وجميع الأخوة الأعضاء

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

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

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

خلفية تاريخية

كلمة شفرة اصلا مأخوذة من الرمز العربي ذي الجذور الهندية (صفر)

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

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

ولكن وبسبب هذا الارتباك عمت الفوضي انظمة الكومبيوتر المختلفة وقل التواصل المرن بينها ولعل الكثيرون يذكرون صعوبات تحويل نص عربي مصفوف على نظام ابل ماكنتوش الى نظام ويندوز حتى منتصف التسعينيات مثلا وفي هذه الفترة طبعا ظهر سوق رائج لبرمجيات عمليات التحويل وقتها المهم ان صندوق مجموعات الحروف هذا يسمي بالعربية لوحة او صندوق المحارف ولعل من اقدم محاولات ترميز الحروف العربية الكترونيا هو نظام ترميز قامت به مكتبة الكونغرس الامريكي في اواخر الاربعينيات حيث كانت تقوم بعمل فهرسة ونظام بحث لكافة محتويات المكتبة وتلتها مجموعات متفرقة من التجارب في بريطانيا والمانيا وفي فرنسا وكل هذه التجارب كانت تنفذ لصالح عمل تجاري او بحثي محدد مما ادي لفوضي فظيعة في انظمة العربية الالكترونية وتأخر العرب كثيرا في وضع صندوق محارف عربي موحد يفرض استخدامه على جميع الاجهزة والانظمة ولكن الشركات المنتجة لم تكن لتنتظر نظاما كهذا حتي تعرب انظمتها..مثلا كان لـ اي بي ام IBM صندوق حروف خاص بها ولـ أبل ماكنتوش آخر مختلف..وجاء ويندوز ايَضا بصندوقه الخاص وظهرت مشاكل كثيره في هذا المجال .

تعريب الأنظمة

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

* الشفرة (الترميز) العربية :

تمثل الحروف العربية داخل الجهاز عن طريق ( ASCII, Unicode )، و كالعادة لم يتفق العرب على شفرة موحدة و كانت لهم جهود لتوحيد الشفرة في عدة ندوات من اهمها :

1- ندوة تونس عام 1976م.

2- ندوة مصر عام 1977م.

3- ندوة روما بإيطاليا عام 1977م نتج عنها إقتراح شفرة عربية موحدة.

4- ندوة الرباط بالمغرب عام 1982م نتج عنها إقتراح شفرة عربية أخرى تبنتها منظمة ASMO تحت مسمى ASMO449 قدمت للمنظمة الدولية تحت إسم ISO9032.

- و تم توحيد الشفرة تقريباً على يد Microsoft في MS-Windows

- ظهرت أكثر من 20 شفرة عربية.

* أسس بناء الشفرة العربية :

1.يجب أن يكون الترميز متسلسل حسب التسلسل الهجائي لسهولة الترتيب.

2.رمز واحد لكل حرف بغض النظر عن موقعة.

3.المحافظة على الرموز اللاتينية و الرموز المتعلقة بها (إذا أردنا المحافظة على ثنائية اللغة).

* المحارف العربية:

ويقصد بها شكل الحرف أثناء طباعته على الشاشة .

1. عدد المحارف في اللغة العربية هي [مجموع(كل حرف * عدد أشكالة )].

2. حركات الضبط بالشكل، و هنا يتبادر السؤال:

س : "هل حركات الضبط بالشكل نضع لها شفرة خاصة أم تكون مع الحرف ؟"

ج: نضع لكل حرف شفرة خاصة لسببين هما:

1.عدد حركات الضبط بالشكل قليل. 2.أنها تستخدم مع جميع الأحرف.

عند إضافة حركات الضبط بالشكل يتحرك المؤشر بمقدار صفر، حيث أنه لا يتحرك عند كتابتها.

3. أضافة بعض المحارف الخاصة مثل: 'ال' و 'لا'.

* و كما هو معروف فإن الآسكي كود ASCII يتكون من واحد بايت فيوجد نوعين من كود الآسكي و هما:

ASCII 7 حيث كود الحرف له 7 بت و الثامن يعتبر Parity Bit لتحقق من الأخطاء.

ASCII 8 و هذا النوع لا يوجد به Parity Bit.

* بعض أنظمة التشفير العربية:

1 . المواصفات العربية ASMO449 تستخدم 7بت.

- غير ثنائية اللغة.

- الحركات وضع لها آسكي خاص.

- بعض الرموز و الأرقام باللغة العربية و البعض الآخر بقي على اللغة الإنجليزية.

2 . المواصفات العربية SAMO0662 و تستخدم 8 بت.

- لم تستفد من الجزء ما بعد 128.

- غير ثنائية اللغة.

3 . المواصفات العربية ASMO0708 عام 1988م.

- ثنائية اللغة.

4 . مايكروسوفت 708 ( مماثلة تقريباً للـ ASMO708 ) و موجهة إلى IBM-DOS

5. مايكروسوفت 709 ( تطوير 708 ).

6 . مايكروسوفت 710 ( تم تجنب حروف الرسم ).

7 . النافذة ( شبية بالـ 708 ).

8 . IBM-Arabic و لا توجد به حركات الضبط بالشكل.

9 . المساعد العربي.

10. ويندوز العربي.

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

ASCII وتنطق - أسكي - وهي اختصار لـ

ASCII : American Standard Code for Information Interchange

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

ظهرت في الحاسب ككود قياسي أنتج سنة 1968، يتألف من 128 قيمة رقمية، منها 96 قيمة رقمية للرموز التي يمكن عرضها على الشاشة والمخصصة للحروف الهجائية، والأرقام، وعلامات الترقيم أو التنقيط punctuation marks، كما يخصص 32 قيمة رقمية لرموز التحكم control characters، بهدف تحقيق توافق كامل بين الأنواع المختلفة من الكمبيوترات والأجهزة الملحقة peripheral devices.

post-15367-1187288365_thumb.gif

مجموعة أسكي للرموز الموسعة ASCII extended character set

اضيفت المجموعة الثانية من الرموز من 128 إلى 255 في نظام رموز أسكي ASCII. وهذه المجموعة الموسعة يستخدمها منتجو الكمبيوترات ومعداتها وبرامجها، وهي رموز متغيرة وليست بالضرورة موحدة بين الكمبيوترات المختلفة. ومجموعة IBM للرموز الموسعة تشتمل على رموز رياضية ورسومات في أشكال خطية.

post-15367-1187288566_thumb.gif

المحارف العربية في رموز اليونكود : Unicode Arabic Character

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

لهذا جاءت محارف اليونكود لكي تحل الكثير من المشاكل علما ان محارف الـ ASCII Code لا تحوي حروف عربية .

هذه ملفات محارف اللغة العربية وارقامها بالتفصيل :

post-15367-1187288957_thumb.gif

U0600_06FF.rar

U0750_077F.rar

UFB50_FC3F.rar

UFE70_FEFF.rar

كيف تكتب رموز او شيفرة الآسكي المحسنة ASCII extended character ( الصورة الثانية )

لكي نستطيع كتابة هذه الرموز واستخدامها سواء في تشفير كلمات السر او غيرها نتبع هذه الطريقة التالية :

1. نقوم بتفعيل مفتاح NumLock الموجود في لوحة المفاتيح على الجهة اليمنى جهة الأرقام

post-15367-1187289478_thumb.gif

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

الآن قم بعمل التالي :

اضغط مفتاح ALT و أكتب الرقم 90 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 65 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 88 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 82 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 65 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 88 ارفع اصبعك من على مفتاح ALT

ما هي الكلمة التي ظهرت لديك ؟

ما رأيك الآن هل بدأت تتعرف على حروف الآسكي القياسية جميل جدا

الآن دعنا ندخل عميقا في حروف الآسكي المحسنه ( الجدول الثاني ذو الرموز )

اضغط مفتاح ALT و أكتب الرقم 204 ارفع أصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 219 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 228 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 165 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 234 ارفع اصبعك من على مفتاح ALT

اضغط مفتاح ALT و أكتب الرقم 172 ارفع اصبعك من على مفتاح ALT

حروف غريبة جدا اليس كذلك شيء جميل

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

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

ملاحظة : اقصى حد من الأرقام او الحروف يمكن كتابته في الرقم السري لقاعدة البيانات هو 20 حرف فقط .

لمزيد من المعلومات راجع الروبط التالية

http://www.lookuptables.com

http://www.robelle.com/library/smugbook/ascii.html

http://unicode.org/charts

المشاركة القادمة :

التشفير و فك التشفير و الترميز

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

سلام

تحاتي أستاذة زهرة

بصراحة عمل أكاديمي منظم .. بارك الله فيك .. بانتظارك

تحياتي أستاذ محمد

انت مفتاح للخير .. عملك لا يقل روعة .. بارك الله فيك

أتمنى للجميع التوفيق

القحم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الاخت الغالية زهرة

بارك الله فيكي

فعلاً كما توقعت اضافتك اشعلت المشاركة بدرجة حرارة 100 درجة مئوية . . . استفدنا كتير وايضا تطرقت لموضوع الحماية وحاولت عمل حماية برقم الآسكي كود لقاعدة البيانات وبالفعل فشلت برامج كسر الباص وورد اكتشاف الرقم ... انت فعلاً استاذه والمواضيع بتجيب مواضيع تانية جديدة في طياتها

الف الف شكر علي مجهودك ومعلومات الوافية الشافية علي الموضوع

المشاركة القادمة :

التشفير و فك التشفير و الترميز

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

فلنبدأ علي بركة الله بشرح الدالة " String و String $ "

تقوم هذه الدالة بتكرار سلسلة بالعدد المحدد

مثال:

String(5, "ع ")
ناتج هذا الكود هو ع ع ع ع ع

الدالة " ASC "

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

مثل

ASC (A)

ناتج هذا التعبير هو 65

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

الدالة " CHR و CHR$ "

هذه الدالة هي عكس السابقة مثال :

Chr(65)
ناتج هذا التعبير هو A

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

ومازلنا منتظرين اختنا الغالية زهرة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

رغم اني لست من رواد هاذا القسم

ولكن معلومات مفيده جدا عن الاسكي كود شكرا لكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

التشفير و فك التشفير والترميز

نبذة تاريخية

استخدم الإنسان التشفير منذ نحو ألفي عام قبل الميلاد لحماية رسائله السرية، وبلغ هذا الاستخدام ذروته في فترات الحروب؛ خوفاً من وقوع الرسائل الحساسة في أيدي العدو. وقام يوليوس قيصر بتطوير خوارزميته المعيارية المعروفة باسم شيفرة قيصر ( Caesar Cipher ) التي كانت نصّا مشفَّراً ( Cipher text )؛ لتأمين اتصالاته ومراسلاته مع قادة جيوشه. وظهرت فيما بعد العديد من الآلات التي تقوم بعمليات التشفير، ومنها آلة التلغيز (Enigma machine).

وشكَّل الكمبيوتر في بدايات ظهوره وسيلةً جديدة للاتصالات الآمنة، وفك تشفير رسائل العدو. واحتكرت الحكومات في فترة الستينيات حق التشفير وفك التشفير. وفي أواخر الستينيات، أسَّست شركة آي بي إم ( IBM ) مجموعةً تختص بأبحاث التشفير، ونجحت هذه المجموعة في تطوير نظام تشفير أطلقت عليه اسم لوسيفَر ( Lucifer ). وكان هذا النظام مثاراً للجَدَل، ورغم تحفّظات الحكومة الأمريكية علية لاعتقادها بعدم حاجة الشركات والمؤسسات الخاصة إلى أنظمة التشفير، إلا إنه قد حقق انتشاراً واسعاً في الأسواق. ومنذ ذلك الحين، أخذت العديدُ من الشركات تقوم بتطويرَ أنظمة تشفير جديدة، مما أبرز الحاجة إلى وجود معيار لعمليات التشفير.

ومن أبرز المؤسسات التي أسهمت في هذا المجال، المعهد الوطني للمعايير والتكنولوجيا ( National Institute of Standards and Technology- NIST ) المعروف سابقاً باسم المكتب الوطني الأمريكي للمعايير ( U.S. National Bureau of Standards ) ، إذ طوَّر هذا المعهد عام 1973 معياراً أطلق عليه معيار تشفير البيانات ( Data Encryption Standard- DES ). ويستنِد هذا المعيار إلى خوارزمية لوسيفَر ( Lucifer algorithm ) التي تستخدِم مفتاح تشفير بطول 56 بت (bit)، وتشترط أن يكون لكل من المرسِل والمستقبِل المفتاحَ السري ذاته. وقد استخدمت الحكومة هذا المعيار الرسمي عام 1976، واعتمدته البنوك لتشغيل آلات الصراف الآلي ( ATM ).

وبعد عام واحد من تطبيق معيار تشفير البيانات ( DES )، طَوَّر ثلاثة أساتذة جامعيون نظامَ تشفير آخر أطلقوا عليه اسم ( RSA ) - وهو الحروف الأولى من اسماؤهم - REIVEST SHAMIR ASELMAN - ويستخدم هذا النظام زوجاً من المفاتيح (مفتاح عام ( public key )، ومفتاح خاص ( private key ) عوضاً عن استخدام مفتاح واحد فقط. ورغم أن هذا النظام كان ملائماً جداً لأجهزة الكمبيوتر المعقَّدة، إلا إنه قد تم اختراقه فيما بعد. وبقيت الحال على ذلك حتى قام فيل زيمرمان ( Phil Zimmerman ) عام 1986 بتطوير برنامج تشفير يعتمد نظام ( RSA ) ولكنه يتميز باستخدام مفتاح بطول 128 بت، ويُدعى برنامج الخصوصية المتفوِّقة ( Pretty Good Privacy- PGP ). ويتوفر من هذا البرنامج نسخة تجارية و نُسخة مجانية، وهو من أكثر برامج التشفير انتشاراً في وقتنا الحالي.

ما هو التشفير ( encryption ) ؟

يُعرَّف التشفير بأنه عملية تحويل المعلومات إلى شيفرات غير مفهومة ( تبدو غير ذات معنى ) لمنع الأشخاص غير المُرخَّص لهم من الاطلاع على المعلومات أو فهمها، ولهذا تنطوي عملية التشفير على تحويل النصوص العادية إلى نصوص مُشفَّرَة. ( يوجد مثال مرفق )

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

- تُستخدَم المفاتيح في تشفير ( encryption ) الرسالة وفك تشفيرها ( decryption ).

- تستنِد هذه المفاتيح إلى صِيَغ رياضية معقَّدة ( خوارزميات ).

- تعتمد قوة وفعالية التشفير على عاملين أساسيين: الخوارزمية، وطول المفتاح ( مقدَّرا بالبت (bits) ).

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

post-15367-1187391630_thumb.gif

التشفير المتماثل ( المفتاح السري )

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

وبعد استقبال الرسالة المُشفَّرة، يستخدم المستقبِل عبارةَ المرور نفسها من أجل فك شيفرة النص المُشفَّر ( cipher text or encrypted text )، إذ تترجِم البرمجيات مرة أخرى عبارةَ المرور لتشكيل المفتاح الثنائي ( binary key ) الذي يتولى إعادة تحويل النص المُشفَّر إلى شكله الأصلي المفهوم.

ويعتمد مفهوم التشفير المتماثِل على معيار DES. أما الثغرة الكبيرة في هذا النوع من التشفير فكانت تكمن في تبادُل المفتاح السري دون أمان، مما أدى إلى تراجُع استخدام هذا النوع من التشفير، ليصبح شيئاً من الماضي.

post-15367-1187391732_thumb.gif

التشفير اللامتماثل ( المفتاح العام )

جاء التشفير اللامتماثل حلاً لمشكلة التوزيع غير الآمن للمفاتيح في التشفير المتماثل، فعوضاً عن استخدام مفتاح واحد، يستخدِم التشفير اللامتماثِل مفتاحين اثنين تربط بينهما علاقة. ويُدعى هذان المفتاحان بالمفتاح العام ( public key )، والمفتاح الخاص ( private key ).

ويكون المفتاح الخاص معروفاً لدى جهة واحدة فقط أو شخص واحد فقط؛ وهو المرسِل، ويُستخدَم لتشفير الرسالة وفك شيفرتها. أما المفتاح العام فيكون معروفاً لدى أكثر من شخص أو جهة، ويستطيع المفتاح العام فك شيفرة الرسالة التي شفَّرها المفتاح الخاص، ويمكن استخدامه أيضاً لتشفير رسائل مالك المفتاح الخاص، ولكن ليس بإمكان أحد استخدام المفتاح العام لفك شيفرة رسالة شفَّرها هذا المفتاح العام، إذ إن مالك المفتاح الخاص هو الوحيد الذي يستطيع فك شيفرة الرسائل التي شفرها المفتاح العام.

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

وعلى كل حال، فإن نظام RSA ليس عصياً على الاختراق، إذ إن اختراقه أمر ممكن إذا توفَّر ما يلزم لذلك من وقت ومال. ولذلك، تمّ تطوير نظام PGP الذي يُعَدُّ نموذجاً محسَّناً ومطوَّراً من نظام RSA. ويستخدم PGP مفتاحا بطول 128 بت، إضافة إلى استخدامه البصمة الإلكترونية للرسالة ( message digest ). ولا يزال هذا النظام منيعاً على الاختراق حتى يومنا هذا .

post-15367-1187391849_thumb.gif

تعريفات ومصطلحات هامه

يعتبر علم تشفير البيانات من الدعائم الاساسية لصناعة "التجارة الالكترونية" في الانترنت ن التي اكتسبت ثقة المستهلك ، وحازت علي اطمئنانه كنوع جديد من التعامل المالي ، بفضل وجود وتطور هذا العلم . وتطور عمليات التشفير مع انتشار التجارة الالكترونية ، التي دخلت فيها مفاهيم جديدة ، اصبحت جزءا منها ، كمفهوم تدقيق الشرعية (authentication) ، المتمثل بعمليات الكترونية ، مثل التوقيع الرقمي (digital signature) ، الذي يربط الوثيقة بالوقت الذي أرسلت فيه. وتتميز عملية تدقيق الوثيقة المرسلة بدقة عالية ، تجعلها فريدة يصعب التلاعب بها. وتتطلب هذه العملية جهة خاصة يثق بها جميع الاطراف لانجازها ، ونشأت لهذا السبب ، جهات اختصت في هذا المجال ، وسميت سلطات التصديق certify authority

Cryptography - هي كلمة يونانية الأصل تتكون من جزئين (Kryptos) بمعنى مخفي و (graphos) بمعنى الكتابة. أي بمعنى الكتابة المخفية أو الكتابة السرية. وهو العلم أو التقنية التي تهتم بتشفير البيانات بحيث لا يمكن قراءتها إلا من قبل الشخص المخول مع ضمان سلامة البيانات من التحريف.

Encryption - وهي عملية التشفير حيث يتم تحويل البيانات الأصلية إلي بيانات مشفرة غير مفهومة أو غير مقروءة.

Plaintext - وهو عبارة عن البيانات الأصلية.

Ciphertext - وهو عبارة عن البيانات المشفرة الغير مفهومة أو الغير مقروءة.

Decryption - وهي عكس عملية التشفير حيث يتم تحويل البيانات المشفرة إلي البيانات الأصلية.

Key - وهو عبارة عن الأسلوب الذي يتم علي أساسه عملية تشفير البيانات وكذلك عملية فك البيانات ويكون سري للغاية.

Cryptosystem - هو عبارة عن مخطط لقلب الرسلاة المشفرة إلي حالتها الصحيحة عن طريق تعليمات معتمدة علي مفتاح الشفرة بواسطة عتاد مادي وبرمجي.

Cryptanalysis - هو عبارة عن تحليل الشفرة للوصول إلي البيانات الأصلية دون معرفة مفتاح التشفير لكسر نظام التشفير وأختراقه.

Cryptology - هو علم التشفير ( Cryptography ) وتحليل الشفرة ( Cryptanalysis ).

Cryptologists - هو اتحاد علم التشفير .

Steganography - هو إخفاء رسالة سرية في رسالة أخرى.

القوة والفعالية في التشفير

تعتمد قوة وفعالية التشفير على عاملين أساسيين هما :

1. طول المفتاح وسريته.

2. الخوارزمية المستخدمة .

أختيار كلمة السر

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

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

post-15367-1187392318_thumb.gif

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

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

المثال الأول :

نقوم بإنشاء جدول وليكن مثلا اسمه Table ونضع به الحقول التالية

PlainText نوعه نص - التسميه " النص العادي "

Encryption نوعه نص - التسمية " النص بعد التشفير "

Decryption نوعه نص - التسمية - النص بعد فك التشفير "

ننشىء نموذج وليكن اسمه مثلا FORM مبني على الجدول Table

نضع بهذا النموذج زري أمر وهما

CmdEncryption - التسمية " تشفير النص "

CmdDecryption - التسمية " فك التشفير "

نضع الآن في حدث عند النقر لزر الأمر الأول CmdEncryption هذا الكود

Private Sub CmdEncryption_Click()
Dim strPlain As String
Dim strSecret As String
Dim strPassword As String

strPassword = "zahrah-EncryptDecrypt"

strPlain = Me.PlainText.Value
strSecret = EncryptDecrypt(strPlain, strPassword)
Me.Encryption = strSecret
End Sub

ونضع ايضا في حدث عند النقر لزر الأمر الثاني CmdDecryption هذا الكود

Private Sub CmdDecryption_Click()
Dim strPlain As String
Dim strSecret As String
Dim strPassword As String

strPassword = "zahrah-EncryptDecrypt"

strPlain = Encryption
strSecret = EncryptDecrypt(strPlain, strPassword)
strPlain = EncryptDecrypt(strSecret, strPassword)
Me.Decryption = strSecret
End Sub

طبعا كلا الكودين يفتقران الى الوظيفة EncryptDecrypt لهذا سنضعها في رأس الكود او نضعها في وحدة نمطية جديده ليتم استدعاؤها

Function EncryptDecrypt(strIn As String, strPass As String) As String
Dim intLen As Integer
Dim intCounter As Integer
Dim varTmp As Variant
Dim strTmp As String

intLen = Len(strPass)
strTmp = strIn

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

EncryptDecrypt = strTmp

End Function

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

ماذا نستنتج من هذا ؟

1. نلاحظ في الكود ان الكلمة السرية هي "zahrah-EncryptDecrypt" في كلا الكودين سواء بعد التشفير او بعد فك التشفير ( بإمكانك تغيير الكلمة السرية بأي كلمة تريدها )

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

3. استخدمنا المعاملات Asc و Chr للتحويل والتبديل من النص العادي الى حروف آسكي

4. في كل الأحوال سيعود لنا النص كما هو قبل التشفير فهل هذا النوع من التشفير آمن بدرجة كبيره ؟ اترك الإجابة لكم

5. طبعا هذا النوع من التشفير يعتبر من ابسط واسهل انواع التشفير ولا يوجد به اي تعقيد .

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

وهذا مثال مرفق على هذه العملية

post-15367-1187392637_thumb.gif

zaEncryptDecrypt.rar

المثال

بعض انواع التشفير مثل Hex و BlowFish و RijnDael

zaEncryption.rar

الترميز Encoding

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

1. الطريقة احادية الإتجاه One - Way وهي الآلية التي تنتج من الـ Plain Text - النص الأصلي - نص مرمز لا يمكن حله أو فكه .

2. الطريقة ثنائية الإتجاه Two - Way وهي الآلية التي تنتج من الـ Plain Text - النص الأصلي - نص مرمز يمكن حله أو فكه .

تذكر دائما ان الترميز مختلف تماما عن التشفير Remember that Encoding is Not Encryption

الفرق بين التتشفير Encryption والترميز Encoding

التشفير Encryption

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

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

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

الترميز Encoding

1. يستخدم لتحويل البيانات بواسطة الكود

2. لتهيئة - بيانات الكترونيه - طبقا لمواصفات قياسية

3. يتم الترميز بواسطة التحويل الى العديد من العمليات ومنها :

*. نستطيع تخزين البيانات بعد ان تم ترميزها بواسطة ASCII أو DBCS أو EBCDIC أو Unicode

*. بعد ترميز النص مع البيانات الثنائية والتي لا يمكن طباعتها بسهوله ستلاحظ وجود رموز غريبة واشكال ظهرت بعد الترميز بإستخدام صيغ مختلفه مثل base64, hexadecimal, uuencode, binhex

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

المثال الثالث على الترميز بواسطة MD5

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

Encrypt_MD5_UP.rar

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

post-15367-1187397231_thumb.jpg

كتاب الخوارزميات وبنى المعطيات باستخدام Visual Basic

شعاع للنشر والعلوم

http://msdn2.microsoft.com/en-us/library/s...yptography.aspx

http://en.wikipedia.org/wiki/RSA#A_working_example

http://world.std.com/~franl/crypto/rsa-guts.html

http://www.websy.net/learn/hackers/course24.htm

http://www.itep.ae/arabic/EducationalCente...cryption_01.asp

http://www.cryptosys.net

RSA Techniques

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

وفقك الله وأدام عليك نعمة العافية

كل هذا قشور ؟

على قول إخواننا في مصر

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

الله يجزاك كل خير

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

ما شاء الله يا أختنا الغالية زهرة

معلومات وأمثلة وروابط في غاية الاهمية

الله يعطيكي الف عافية

شكرا لك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

ما شاء الله لا قوة الا بالله

بارك الله فيك اختي زهرة وحفظك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

ما شاء الله تبارك الله

تستحقون تعظيم سلاااااااااااام

تحياتي لكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

وفوق كل ذي علما عليم" صدق الله العظيم

الف شكر للاستاذة زهرة علي هذة المعلومات

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

بارك الله فيكم شيء روعه فعلا

كلما ازددت علما زادنى علما بجهلى

مشكورين والى الامام

تم تعديل بواسطه khatab
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيكم وجزاكم الله خير ونفع الله بعلمكم

لقد ابدعتوا

وفقكم الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

الترجمة :rolleyes:

Private Sub CmdEncryption_Click()
Dim strPlain As String
تعريف او حجز مكان في الذاكرة للكلمة الواردة فيي مربع النص PLAIN TEXT
Dim strSecret As String
تعريف او حجز مكان في الذاكرة للنص المشفر
Dim strPassword As String
حجز مكان لكلمة السر المختارة وهنا اختارت الاخت زهرة zahrah-EncryptDecrypt

strPassword = "zahrah-EncryptDecrypt"
هنا حددت كلمة السر المرادة لاجراء عملية التشفير


strPlain = Me.PlainText.Value
ياخذ المتغير الان النص الوارد في مربع اللنص قبل التشفير
strSecret = EncryptDecrypt(strPlain, strPassword)
الكلام تجري الآن عملية التشفير وهنا تتم استدعاء دالة التشفير (هنا( زبدة وقشطة وزبادي
Me.Encryption = strSecret
في مربع النص المشفر يتم تحديثة بالنص بعد التشفير ليكون مخرررربط
End Sub

اذا اعجبتكم الترجمة بنزل ترجمة الزر الثاني ان شاء الله

والاهم ترجمة الدالة او الوظيفة ..

وشرايكم قولو تبون الجزء الثاني والا لا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيك اخي الكريم

واصل على بركة الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اشكر الاخت زهرة للتعليق والمتابعة

انا مباشرة انتقلت للوظيفة وعلى قلة خبرتي والله تعبت في توضيح ماعرفت لكن اللي ماعرفته تركته لكم تشرحونه لنا .

مع الترجمة :(

Function EncryptDecrypt(strIn As String, strPass As String) As String
Dim intLen As Integer
تعريف هذا المتغير الرقمي لياخد طول الباسوورد
Dim intCounter As Integer
تعريف العداد
Dim varTmp As Variant
تعريف متغير الذي سيحمل بطياته النص المشفر او المفكوك
Dim strTmp As String
تعريف المتغير الذي سيستقبل النص عند استدعاء الدالة

intLen = Len(strPass)
هاهو المتغير الان ياخذ طووول الباسوورد الممرة له وهي التي حددتها الاخت زهره zahrah-EncryptDecrypt
strTmp = strIn
هاهو الان المتغير الذي عرفنا يحمل النص بكل ماأوتي من قوة


===الكلام اللي تحت هو عملية التشفير >>هو الزبدة والقشطة

For intCounter = 1 To Len(strIn)
ياشباب لاحظو كيف العداد يبدأ من واحد الىىىىىىىىى عدد حروف النص المُدخل علشان التشفير يبدأ من الحرف الأول حتى ترتيب اخر حرف مو زين نترك حروف ماتتشفر عيب :rolleyes:

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)
الان استرجع الحرف حسب ترتيبة = الغاء التشفر ( شفر (الحرف الحرف نفسه من النص الاصلي)) والا اصرف لك تاخذ القيمة VARRTMP

معناه بالعربي === اذا انت اصلا بالسطر اعلاه شفرت الحرف فأنت بالسطر الحالي تُلغي تشفير الحرف



طيب اذا المساواة طلعت خاطئة وانا ماشفرت الحرف علشان كذا استخدمت زهرة XOR VATMP يعني ماإلك الا .... التشفير ويرجع ويشفر
وبالمثل اذا وجد ان المساواه صحيحة ينفذ الغاء التشفير



Next
الله يعيييين .يرجع يسويييي مثل اللي قبل شوي :wacko:
EncryptDecrypt = strTmp
يعد ماينتهي عداد النص تاخذ الدالة قيمة STRMP وهو النص حار/بارد اسف مشفر/غير مشفر
End Function

انتهت الدالة

اسف على قصوري في الترجمة لانني اغلب الامور ماعرفها بالاكواد

والسلام

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

واصل أخي الحبيب

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

بارك الله بك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيكم جميعا

اخي السندباد الأمثلة موجوده في المشاركه

الأخ الكريم يشرح الأكواد بالعربي الموجوده في المشاركة .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .