منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : خوارزمية تشفيير الطائر الطنان HummingBird Crypto Algorithm
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
بمناسبة شهر رمضات الكريم أعاده الله عليكم بالخير 
اقدم لكم هدية بسيطة وهي خوارزمية تشفيير بسيطة أطلقت عليها اسم الطائر الطنان HummingBird
والخوارزمية مكتوبة يأسلوب تستطيع معها تشفيير بيانات مثل تكست او ملف او صورة .... الخ

الخوارزمية مبنية علي لعبة حسابية بسيطة كنا نلعبها و نحن أطفال ...... 

تمت كتابة الخوارزمية علي هيئة كلاسان كالأتي:
الكلاس الأول :
يستخدم في التشفيير وهذا الكلاس اسمه HummingBirdEncryptor
الكلاس الثاني :
يستخدم في فك التشفيير و هذا الكلاس اسمه HummingBirdDecryptor

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

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

التشفيير:
تعريف التكست المراد تشفييره
تحويل التكست الي مصفوفة بايت
تشفيير مصفوفة البايت وتحويلها الي مصفوفة بايت
PHP كود :
       Dim s As String "Visual Basic For Arabs"
 
       Dim source As Byte() = System.Text.Encoding.UTF8.GetBytes(s)
 
       Dim encrypted As Byte() = New HummingBirdEncryptor(source).Encrypt 

فك التشفيير:
ناخذ مصفوفة البايت التي تم تشفييرها و نمررها لكلاس فك التشفيير
ثم بعد ذلك نعيدها الي تكست مرة ثانية
كود :
       Dim decrypted As Byte() = New HummingBirdDecryptor(encrypted).Decrypt
       Dim result As String = System.Text.Encoding.UTF8.GetString(decrypted)

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

شهر مبارك علينا وعليك وعلى جميع الامة الاسلامية

شكرا لك اخي الكريم
السلام عليكم موضوع أكثر من رائع شكراا لك  Big Grin