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

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

كود :
<connectionStrings>
       <add name="Test" connectionString="Data Source=.;Initial Catalog=dbtest;Integrated Security=True" providerName="System.Data.SqlClient" />
   </connectionStrings>

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

نجد داخل كل مشروع ملف App.config
أغلق الفيسجول استويو ثم نقوم بإعادة تسمية الملف لهذا الاسم
web.config

الان افتح نافذة الاوامر Cmd ك  مدير
وانسخ السطر التالى للتعامل مع الفريم ورك من الدوس
كود :
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319

ثم ننسخ الامر التالى مع مع المسار بدون اسم الملف

كود :
ASPNET_REGIIS -pef "connectionStrings" "مسار ملف بدون وضع اسم الملف ولا امتداده"

كتالى


كود :
ASPNET_REGIIS -pef "connectionStrings" "C:\Users\Devel\Documents\Visual Studio 2017\Projects\WindowsFormsApp4\WindowsFormsApp4"

لاحظ اننا لم نغير اسم connectionStrings ولا اى شيئ الا المسار فقط
نضغط انتر
تظهر لنا رسالة فى الدوس تفيد بانه تم التشفير بنجاح

Encrypting configuration section...
Succeeded!

الان نعيد تسمية الملف لاسمه الاصلى

App.config

الان افتح الفيجول استوديو مرى اخرى  ك مدير

وافتح المشروع  من open project / solution

أولا قم بعمل rebulid للمشروع

وقم بتشغيل المشروع ليتم تأكيد بناء الملف التنفيذى واظهار التعديلات على كامل المشروع

الان لو فتحت ملف App.config من داخل الفيجول استوديو

او فتحت الملف المرفق بمسار ملف EXE

WindowsFormsApp1.exe.config

والى بترفقه مع البرنامج للعميل ستجد ان التشفير تم عليه ايضا
سيكون بالشكل التالى تقريبا
كود :
 <connectionStrings configProtectionProvider="RsaProtectedConfigurationProvider">
   <EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"
     xmlns="http://www.w3.org/2001/04/xmlenc#">
     <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
     <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
       <EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
         <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
         <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
           <KeyName>Rsa Key</KeyName>
         </KeyInfo>
         <CipherData>
           <CipherValue>BjQ3eqSeIwM9qLkYRO68krC+8+8nZwCnUZYIB7zxwT3mSOz4KHdl4QIKXqz4J7t22HGm+1uMP8VmSYy8mNeGxvMOx4dokYr/8lTXjvKDQFK8NE/Pm0waP7iyOMegYRCOvW2WYOIYV3+6b0w0wzB9vfqXNvhF/dHLAAYZPpzKGBY=</CipherValue>
         </CipherData>
       </EncryptedKey>
     </KeyInfo>
     <CipherData>
       <CipherValue>l0lJX8krzDiD2AB3c24U0yKPJ/Xp3zQDOX9oIAMY+mVH58Iih/+VYBw7uy46P4nGQ4QmcCaO38wSrMBpDo8I8UaunQ7Sx87Q6Ag3LQi2WNkalC+DRUySnDw5+VxuZuZ1Qmpa+zGMzi8NfF6Fa00Q6CxNGiP4lTneqw4/sFrxbdMflu6uLEMnt6Jg0YH3HNqNFZSz9o+MwpiqseFcUHW+jVwhMBz0/LmW7/E4p7cxkaOlPt8s03r7a4ptBnY+3qbzDIzf2TKFKteSO+5Jv1gLgk0zF3kw5IFxVSb24Yk2QWQUwtz9CkmyVK7vleTdMdr3GAA0TpBuSR7J0FBQcgWjyic2U6mbwVXVCbd/haJklx8v3ubkJRwoUqOCmZ5Boo8wGVIcsMYgnq+lDylx+YELaQrdmGjDokOnqERQHVF8xb7NOrXP5WFlsQ==</CipherValue>
     </CipherData>
   </EncryptedData>
 </connectionStrings>

معلومة أخيرة

لفك التشفير بنفس الطريقة فى الدوس نكتب امر الفريم ورك ثم الامر الاتى

ASPNET_REGIIS -pdf "connectionStrings" "مسار ملف بدون وضع اسم الملف ولا امتداده"


لاحظ الفرق بين الامرين فى التشفير و فك التشفير

pdf & pef

لكن باقى السطر كما هو


تحياتى لكم جميعا
ولا تنسو فى ذكرى مولد نبينا الحبيب الصلاة عليه
الرد }}}
#2
اللهمّ صلّ و سلّم و بارك على سيّدنا محمّد و على آله و صحبه أجمعين
أستاذنا الكريم " mero5000 " ..
بارك الله فيك و لك و في صحّتك و أوقاتك و كل أفراد اسرتك الكريمة إن شاء الله
موضوع شيّق و رائع بكل واقعيّة و بكل صدق
لو أمكن أخي الكريم و كان ذلك بالإمكان .. أن تزيل اللبس عمّا أفكّر به و لم أجد له مخرجًا
ببعض الأحيان أجد مشاريع بالفيجوال ستيديو .. مشاريع عاديّة جدًّا .. بقاعدة بيانات Sql server أو Access .. لكن أجد أنّ كلمة المرور للمستخدم مشفّرة بداخل قاعدة البيانات .. كيف يتم تشفير كلمة المرور عند التّسجيل الأوّل ثم كيف يتم فك تشفيرها عند كل دخول للمشروع
بارك الله فيك مقدّمًا و أحسن إليك
تحياتي و إحتراماتي
قناتنا على اليوتوب
الرد }}}
تم الشكر بواسطة: mero5000 , egypt 2020
#3
مرحبا أستاذنا عبد العزيز
اذا كنت تقصد تشفير كلمة المرور الخاصة باللوجن حسب ما فهمت منك طلبك داخل الداتا بيز فهذا طبيعى حتى لا يسطيع احد الاطلاع على حساب غير او يدخل بصلاحياته
وتشفيرها بيكون عند اضافة اليوزر عضوية جديدة حتى لو سلمت البرنامج للعميل بدون ولا عضوية ولا حتى عضوية افتراضية

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

انا رابط داتا بيز بموقع وبرنامج مع بعض والداتا بيز للبرنامج هى الخاصة بالموقع وفيها اليوزر والباس لقاعدة البيانات وممكن اى حد ياخد البيانات دى من ملف الكونفج ويدخل لقاعدة البيانات من عنده
عشان كده شفرتها لحماية النظام كله
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري
#4
السّلام عليكم و رحمة الله و بركاته
ألف شكر أخي و أستاذي الكريم " mero5000 " على الشّرح و الإيضاح .. ما أقصده سيّدي الفاضل هو مثلما تشير له الصّورة أدناه
لاحظ كلمة المرور التي كتبتها على فورم ال Login بطريقة عادية ( M09102018 ) .. لكن بقاعدة البيانات لاحظ مثلما يشير السّهم كيف هي مشفّرة
تحياتي و احتراماتي
قناتنا على اليوتوب
الرد }}}
تم الشكر بواسطة:
#5
ايو ده الى قصدته يا استاذنا الفاضل فى ردى السابق
بس انا بشتغل بطريقة اكثر صعوبة
بمعنى لو كان الباسورد مثلا Mero123456

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

بس هعمله بالسى شارب وهحاول ان شاء الله اعمل دروس عن انتتى بدل الادو ومشاكله
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري
#6
بارك الله فيك و لك .. بانتظار ذلك .. وفّقك الله لما فيه خير لك و لنا و لسائر المؤمنين إن شاء الله
قناتنا على اليوتوب
الرد }}}
تم الشكر بواسطة: mero5000
#7
اللهم آمين
الرد }}}
تم الشكر بواسطة:
#8
موضوع مميز اخي بارك الله فيك
الرد }}}
تم الشكر بواسطة: mero5000



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


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