تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تشفير اوامر السريال بورت (خلفيتي عن التشفير منعدمة)
#2
السلام عليكم ورحمة الله وبركاته

التشفير ببساطة هو تغيير رمز برمز آخر إعتماداً على خوارزمية (إما قياسية مثلا الهيكس الثماني والست عشري وغيره - أو نوع آخر أنت تقوم بصناعته)
النوع الاخر : فيك تتفنن بصناعة أي خوارزمية من البساطة إلى شدة التعقديد ..
كأن تبدل بين الأحرف بحرف آخر وقبل قراءه الرمز يقوم البرنامج بإرجاع الحرف لأصله ثم يقرأ الأمر منه.
مثلا تبدل أحرف كلمة (بحر) بطريقة ما وتجعلها تظهر بالرموز التالية (dim)  : وهي تعتمد على استخراج كود (Asc) لكل حرف واضافة عليه (-100) ثم استخراج المحرف الخاص بكل رقم نانتج باستخدام (chr) فتظهر عندنا الأحرف العربية بأحرف أنكليزية.
ولكن الأهم أن تعرف كيف تعيد تلك الرموز لأصلاها عند المستخدم المصرح له بذلك.ففي مثالنا السابق فقط : نحسب قيمة طكل أحرف من الأحرف الجديدة بإستخدام الدالة (Asc) ثم نظيف عليه القيمة العكسية للقيمة السابقة والتي ستكون (100) ثم نستخرج المحرف أو الحرف الخاص بكل قيمة بواسطة (Chr) فترجع الحروف لأصلها الأول ثم نجمع تلك الحروف فترجع (dim) للكلمة الأصلية(بحر).

يعني لمثالنا البسيط : التكويد طرحنا قيما - وفك التكويد جمعنا نفس القيمة السابقة.

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

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

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

===========
فالتشفير بإتجاه واحد - يعني بإمكانك التشفير ولكن لا يمكنك أن تعود للحالة الأصلية مهما فعلت (وهذا يستخدم بالعادة لتشفير تفعيل البرامج لا أكثر) لأنه ليس مهماً معرفة الكود الأصلي ولكن المهم استخدامك لكود مشفر يستطيع برنامجك التعرف عليه ك كود مشفر من جهازك أو من رقم تحصل عليه بواسطة المصدر الأصلي.
===========
===========
التشفير بإتجاهين هو بالمختصر : برنامج يشفر - ويرسل الكود - وبرنامج آخر يفك التشفير ثم يقرأ الرسالة.
===========
السؤال : لو قمت بتشفير الرمز المرسل للاردوينو
هل سيستطيع برنامج الأردوينو فك التشفير ثم قراءته على شكل الرمز الذي أرسلته له ؟؟
===========

مثال عن التشفير البسيط : 
أفتح مشروع جديد وضع عليه الأدوات التالي (TextBox1 - TextBox2 - TextBox3 - HScrollBar1)  
ثم انسخ الكود التالي إليه وشغله وجرب أن تحرك شريط التمرير(HScrollBar1) درجة درجة يمين أو يسار وشاهد التغيرات على النص:

كود :
   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       TextBox1.Text = "123456"
       HScrollBar1.Maximum = 255
       HScrollBar1.Minimum = -255
       HScrollBar1.Value = 0


   End Sub

   Private Sub HScrollBar1_Scroll(sender As Object, e As ScrollEventArgs) Handles HScrollBar1.Scroll
       Dim V1 As Long = 0, S1 As String = "", S2 As String = ""

       S1 = TextBox1.Text
       V1 = Val(HScrollBar1.Value)
       TextBox3.Text = V1


       For i = 1 To S1.Length
           S2 = S2 & Chr(Asc(Mid(S1, i, 1)) + V1)
       Next

       TextBox2.Text = S2
   End Sub

ملاحظة : ما دامت الأرقام ما بين 0 و 255 المعرضة لاستخدام دالة الـ (Chr) سيبقى البرنامج يستجيب
وإذا خرجت خارج هذا النطاق سيعطيك خطأ .. لأن هذا مجالها أي Byte.
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}


الردود في هذا الموضوع
RE: تشفير اوامر السريال بورت (خلفيتي عن التشفير منعدمة) - بواسطة Taha Okla - 18-08-22, 08:02 PM


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم