منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] استفسار بخصوص دوال التشفير وفك التشفير - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [سؤال] استفسار بخصوص دوال التشفير وفك التشفير (/showthread.php?tid=1027)



استفسار بخصوص دوال التشفير وفك التشفير - mazen55 - 21-11-13

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

ما الحل او الطريقة الصحيحة لتشفير وفك تشفير نص باللغة العربية والانجليزية معا


RE: استفسار بخصوص دوال التشفير وفك التشفير - 3booody - 21-11-13

بالنسبه لي فأستخدم كلاس سهل خاص للتشفير

كود :
Public Class Security
    Public Shared trip As New System.Security.Cryptography.TripleDESCryptoServiceProvider
    Public Shared md5 As New System.Security.Cryptography.MD5CryptoServiceProvider
    Public Shared Function utf(ByVal V As String) As Byte()
        Return md5.ComputeHash(System.Text.ASCIIEncoding.UTF8.GetBytes(V))
    End Function
    Public Shared Function cod(ByVal str As String, ByVal key As String) As String
        On Error Resume Next
        trip.Key = utf(key)
        trip.Mode = System.Security.Cryptography.CipherMode.ECB
        Dim Buffer As Byte() = System.Text.ASCIIEncoding.UTF8.GetBytes(str)
        Return Convert.ToBase64String(trip.CreateEncryptor().TransformFinalBlock(Buffer, 0, Buffer.Length))
    End Function
    Public Shared Function uncod(ByVal str As String, ByVal key As String) As String
        On Error Resume Next
        trip.Key = utf(key)
        trip.Mode = System.Security.Cryptography.CipherMode.ECB
        Dim byt() As Byte = Convert.FromBase64String(str)
        Return System.Text.ASCIIEncoding.UTF8.GetString(trip.CreateDecryptor().TransformFinalBlock(byt, 0, byt.Length))
    End Function
End Class

ايضآآ ممكن تغير من نوع التشفير
الفكرة تعتمد على الكلمة الي تريد تشفرها+كلمة السر لفك تشفير الكلمة ضع زر بوتون وضع هذا الكود

كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim a As String = Security.cod("فيجوال بيسك", "123")
        MsgBox(a)
        Dim b As String = Security.uncod(a, "123")
        MsgBox(b)
    End Sub



RE: استفسار بخصوص دوال التشفير وفك التشفير - mazen55 - 21-11-13

جزاك اللة كل خير اخي ولكن يحدث مشكلة بالرغم من استدعائي لهذة الدوال


كود :
Imports System.IO
Imports System.Text
Imports System.Security.Cryptography

المشكلة بهذا الجزء خصوصا
GetString(trip.CreateDecryptor().TransformFinalBl​ock(byt, 0, byt.Length)

وهل يشفر النص بالغة العربية


RE: استفسار بخصوص دوال التشفير وفك التشفير - 3booody - 21-11-13

هل يمكن ان تضع صورة الخطأ


RE: استفسار بخصوص دوال التشفير وفك التشفير - mazen55 - 21-11-13

[attachment=714]هذة صورة بالخطا


RE: استفسار بخصوص دوال التشفير وفك التشفير - mamas1 - 21-11-13

- هذا مثال على ذلك
- تحياتي Angel