منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

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


لدي نص مكون من ارحف وارقام بينهم علامة =

النص هذا مشفر 

"=D8=A7=D9=84=D8=B3=D8=B9=D8=A7=D8=AF=D9=87"

هذه الكلمة (الساعدة)
اي D8 A7 تعني حرف ا
و  D9 84 تعني حرف ل
و  D8 B3 تعني حرف س
و  D8 B9 تعني حرف ع
و  DB A7 تعني حرف ا
و D8 AF تعني حرف د
و  D9 B7 تعني حرف هـ

وإذا جاء بعد علامة = رقم 20 تعني مسافة

والارقام من 31 الى 39 
تعني الارقم من 1 الى 9

هل من كود يتم من خلاله استبعاد علامة ال = و تبديل كل 4 عناصر بحرف حتى يأتي رقم 20 يبدله بمسافة
PHP كود :
Dim txt "=D8=A7=D9=84=D8=B3=D8=B9=D8=A7=D8=AF=D9=87"
txt txt.Replace("="""' = حذف الرمز

Dim byt((txt.Length / 2) - 1) As Byte ' 
إنشاء مصفوفة بعدد البايتات المشفرة

For 0 To byt.Length 1
    
' تحويل الشفرة السداسيعشري إلى بايت ووضعها في المصفوفة
    byt(i) = Val("&h" & txt.Substring(i * 2, 2))

Next

UTF8 تحويل مصفوفة البيانات إلى نص على أساس الترميز
txt 
System.Text.Encoding.UTF8.GetString(byt)

MsgBox(txt
الف شكر اخي العزيز

لكن ممكن شرح للكود
تم تغيير الكود إلى كود أسهل لفهم آلية العملية، مع تضمين الشرح بداخله
الف شكر اخي العزيز لكن هناك بعض العض الاحيان
يكون هناك عدد 2 اشارة (=)

فيتم حذ واحدة ويترك الاخرى وهذا يسبب وجود فراغ
فيظهر النص مخالف
أنت تقصد فك تشفير  سلسلة تم ترميزها للإرسال في عنوان ويب
مثل بعض الروابط التي تظهر في شريط العنوان في المتصفح


هذا الأمر يقوم بما تطلب :  System.Web.HttpUtility.UrlDecode
وهي من فضاء الأسماء : System.Web.HttpUtility
PHP كود :
    Dim decodedUrl As String System.Web.HttpUtility.UrlDecode("%D8%A7%D9%84%D8%B3%D8%B9%D8%A7%D8%AF%D8%A9")
 
      MsgBox(decodedUrl





ملاحظة : علامة % مهمة لعملية فك التشفير .
والترميز يستخدم : Encoding.UTF8 هذا على حسب مشاركتك الأولى

السعادة = %D8%A7%D9%84%D8%B3%D8%B9%D8%A7%D8%AF%D8%A9