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

كل ما عليك هو ان تمرر Text المراد تشفيره و أيضا الدوال تسمح باستخدام Password عند التشفير و فك التشفير

أما عن rgbIVString و saltString الموجودة في الدوال فيمكنك ان تستخدم اي شكل من الحروف و الارقام للتعويض عنهما



كود :
Friend Function Decrypt(text As String, passWord As String, rgbIVString As String, saltString As String) As String
       Dim rgbIV As Byte() = Encoding.ASCII.GetBytes(rgbIVString)
       Dim saltValueBytes As Byte() = Encoding.ASCII.GetBytes(saltString)
       Dim textBuffer As Byte() = Convert.FromBase64String(text)

       Dim rfc As Rfc2898DeriveBytes = New Rfc2898DeriveBytes(passWord, saltValueBytes, iterations)
       Dim rgbKey As Byte() = rfc.GetBytes(keySize / 8)

       Dim algorithm As ICryptoTransform = New RijndaelManaged() With {.Mode = CipherMode.ECB}.CreateDecryptor(rgbKey, rgbIV)
       Dim bufferStream As MemoryStream = New MemoryStream(textBuffer)
       Dim cryptographyStream As CryptoStream = New CryptoStream(bufferStream, algorithm, CryptoStreamMode.Read)
       Dim buffer As Byte() = New Byte(textBuffer.Length - 1) {}
       Dim sequence As Integer = cryptographyStream.Read(buffer, 0, buffer.Length)
       bufferStream.Close()
       cryptographyStream.Close()
       Return Encoding.UTF8.GetString(buffer, 0, sequence)

   End Function

   Friend Function Encrypt(text As String, passWord As String, rgbIVString As String, saltString As String) As String
       Dim rgbIV As Byte() = Encoding.ASCII.GetBytes(rgbIVString)
       Dim saltValueBytes As Byte() = Encoding.ASCII.GetBytes(saltString)
       Dim textBuffer As Byte() = Encoding.UTF8.GetBytes(text)

       Dim rfc As Rfc2898DeriveBytes = New Rfc2898DeriveBytes(passWord, saltValueBytes, iterations)
       Dim rgbKey As Byte() = rfc.GetBytes(keySize / 8)
       Dim algorithm As ICryptoTransform = New RijndaelManaged() With {.Mode = CipherMode.ECB}.CreateEncryptor(rgbKey, rgbIV)
       Dim bufferStream As MemoryStream = New MemoryStream()
       Dim cryptographyStream As CryptoStream = New CryptoStream(bufferStream, algorithm, CryptoStreamMode.Write)
       cryptographyStream.Write(textBuffer, 0, textBuffer.Length)
       cryptographyStream.FlushFinalBlock()
       Dim buffer As Byte() = bufferStream.ToArray()
       bufferStream.Close()
       cryptographyStream.Close()
       Return Convert.ToBase64String(buffer)
   End Function
كود :
Private iterations As Integer = 2
   Private keySize As Integer = 256

راجع اللينك التالي لنفس الفكرة و لكن المتغيرات عبارة عن Byte

اللينــــــــــــــــــــك
الرد }}}
تم الشكر بواسطة: الطالب , moha11


الردود في هذا الموضوع
RE: كود حفظ النص مشفر في قاعدة البينات - بواسطة silverlight - 05-09-15, 01:04 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيف نستخرج نص الالتاريخ الاول من النص التالي: justforit 0 131 31-10-25, 05:33 PM
آخر رد: justforit
  [سؤال] طريقة توسيط النص داخل اداة comboBox سمير1404 7 3,862 24-08-25, 01:01 PM
آخر رد: أبو خالد الشكري
  [Acces2007] مشكلة ملف قاعدة بيانات access للقراءة فقط mmaalmesry 11 1,480 29-04-25, 08:55 PM
آخر رد: mmaalmesry
Photo لايمكن تعرف على تنسيق قاعدة البيانات الدريساوي 2 697 26-04-25, 12:24 AM
آخر رد: الدريساوي
  مساعدة في طريقة تحميل الفيديوهات المخزنة في قاعدة البيانات foad8920 0 663 24-04-25, 12:58 PM
آخر رد: foad8920
  مشكلة عدم قراءة قاعدة بيانات MS access 0 424 29-03-25, 01:58 PM
آخر رد: ibraa939
  مشكلة عدم قراءة قاعدة بيانات MS access 0 354 29-03-25, 01:57 PM
آخر رد: ibraa939
  مشكلة عدم قراءة قاعدة بيانات MS access 0 291 29-03-25, 01:57 PM
آخر رد: ibraa939
  [كود] كود تغيير حجم النص في التكست بوكس hassan 8 8,800 30-01-25, 02:33 AM
آخر رد: خالد كامل1
  [سؤال] كود قاعدة بيانات visual basic 2010 express KHALED987 1 510 25-01-25, 12:39 PM
آخر رد: Kamil

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


يقوم بقرائة الموضوع: