Private Text Encryption -خدمة للمبرمجين في جديد عالم التشفير-

التشـــفير الخــــاص للنصـــوص


حمـــــــــــــاية أســـــــــــــــرارك

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

إخواني الأعضــاء الكرام, كيف حال الجميع؟
أسـأل الله العظيم أن تكونوا في أفضل حال وأتم عافية.

كم من مُستخدمي Dot Not Framework يعتمدون على خواص Settings و Registery Keys للتعامل مع القيم من حفظ وإستدعاء. ولكن بكل أسف مُفتقدين “الأمان” للحفاظ على سرية تلك القيم التي من المُمكن جدا أن تكون بيانات إتصالات خادمك الخاص وكلمات المرور وغيرها.

فبكل بساطة إذا إطلع أحداً على ملف الـ Settings الخاص بمشروعك سوف يستمتع بالإطلاع على جميع قيم إعداداتك الخاصة التي قُمت بتسجيلها. ذلك ما دعاني للتفكير فى إنشاء خدمة ذو فكرة جديدة توفر عملية تشفير مُعقدة للنصوص مما يوفر لنا نوع من الإطمئنان وبالفعل إنتهيت بفضل الله من تنفيذ الأمر من الألف إلى الياء بأفكار جديدة إستغرقت فترة لا بأس بها حتى توصلت لما أردت تنفيذه, وها أنا اليوم أتيت لكم بـ Private Text Encryption وهو ليس أكثر من ملف DLL صغير جدا وبسيط جدا ولكنه ليس بسهل!., لنتعرف معاً عليه:

لقد قُمت بإختيار إسم Private Text Encryption ليس لأنه مُجرد أسم, ولكنه بالفعل يعي المفهوم تماماً مما سوف يتضح إليك بعد الإطلاع على إمكانيات الـ DLL التالية:

1-نص مُشفر جديد فى كل مُحاولة للتشفير:

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

2-حاسبك الوحيد فى العالم القادر على فك التشفير:

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

3-أنا نفسي لن أستطيع فك التشفير!!:

هذا هو الجديد . مع أني أنا صاحب الفكرة وكذلك من قمت بكتابة الكود من الألف إلى الياء بل وكل حرف من حروف نافذة الكود إلا أنني غير قادر على فك التشفير…. نعم, لقد قمت بالإعتماد على ثغرات شديدة المرونة تجعل الكود فقط هو من يُمكنه أن يقوم بفك النص المُشفر. إذا سألتني كيف؟… سأرد عليك: هذه هي الفكرة التي أخذت وقت من تفكيري, والحمد لله توصلت.

___________________________________________

الـ DLL يحتوي على Class واحد فقط والـ Class لا يحتوي سوى على دالتين فقط من نوع String الأولى وهي EncryptText وتحتوي على معامل واحد فقط من نوع String ويُمرر إليه النص المُراد تشفيره وتعود بالنص المُشفر. وأما الدالة الثانية وهي DecryptText وتحتوي أيضاً على مُعامل واحد فقط من نوع String يُمرر إليه النص المُشفر وتعود بالفك.

Download PrivateTextEncryption DLL

وهــذا مثــــال
Imports PrivateTextEncryption
Public Class frmMain
Dim PrivateText As New PrivateTextEncryption.PrivateTextEnc
Private Sub btnEncryption_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEncryption.Click
txtEncryption.Text = PrivateText.EncryptText(txtRealText.Text)
End Sub
Private Sub btnDecrypt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDecrypt.Click
txtDecryptedText.Text = PrivateText.DecryptText(txtEncryptedText.Text)
End Sub
End Class

Download VS2010 Example

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

أتمنى أن يستفيد الجميع من الكــلاس, وتتقبلوا هديتي المتواضعة. وإن كان هناك أي إستفسار أنا جاهز.

ولا تنســـونا من صالح دعائكم

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

Advertisements

2 thoughts on “Private Text Encryption -خدمة للمبرمجين في جديد عالم التشفير-

  1. أخي الكيم

    فضلا لا امراًَ

    ممكن ترفق لي المشروع في نظام vb.net 2008

    لاني عندما اريد اضافة الأداء تظهر لي اخطاء

    انا ما ابقى السورس كود لا

    انا ابقى بس حل مكشلة الأداء

    فياريت تضيفة لي هنا

    كما انت ضايفة لكن بصيغة 2010

    وشكراًَ

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s