![]() |
|
التشفير ------حد فاهم حاجة 2 - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم مقالات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=184) +--- الموضوع : التشفير ------حد فاهم حاجة 2 (/showthread.php?tid=5732) |
التشفير ------حد فاهم حاجة 2 - RaggiTech - 15-10-12 كاتب الموضوع : !TheCodeOfSilence
بسم الله الرحمن الرحيم فى الموضوع الاول تكلمنا عن انواع التشفير اما فى هذا الموضوع سنتكلم عن One-Way Hashing فى هذا النوع يمكن تشفير النص لكن لا يمكن ارجاع النص المشفر الى النص الاصلى لذلك هو مناسب لكلمات السر يتم تشفير كلمه السر وحفظها داخل قاعدة البيانات وعند قيام المستخدم بادخال الرقم السرى يتم تشفيره ومقارنته مع النص الموجود داخل قاعدة البيانات اذا قام اى شخص بفتح قاعدة البيانات فانه لن يتمكن من معرفه كلمه السر لانها مشفرة ولا يمكن ارجاعها الى نص اصلى SHA1 MD5 SHA1 تم كسرها من قبل القراصنه المهم سوف نقوم باستخدام MD5 اولا نقوم باستيراد الاتى كود : Imports System.Security.CryptographyDim MD As New MD5CryptoServiceProvider ComputeHash(PlainText) ِComputeHash تقوم باخذ النص الاصلى على هيئه مصفوفه من نوع بايت وتعيد النص المشفر على هيئه مصفوفة من نوع بايت لذا علينا تحويل النص الاصلى PlainText من String الى مصفوفه من نوع Byte Dim bytSource() As Byte سنقوم باستخدام الشفرة الموحدة Unicode لكى تعيد لنا الرقم المميز لكل حرف Dim uEncode As New System.Text.UnicodeEncoding نقوم بتحويل النص الاصلى من String الى مصفوفه من نوع Byte bytSource = uEncode.GetBytes(PlanText) نقوم بتعريف متغير لكى نضع فية لبنص بعد تشفيره Dim bytHash() As Byte الان نقوم بالتشفير النص الاصلى يسمى PlainText bytHash = MD.ComputeHash(bytSource) الان نقوم بالتحويل من مصفوفه من نوع Byte الى String Convert.ToBase64String(bytHash) الكود انا قمت بعمل دالة تاخذ النص الاصلى و نوع التشفير وتقوم بارجاع النص النشفر على هيئة String كود : Private Function CreatHash(ByVal PlanText As String, ByVal Mode As HashAlgorithm) As String |