Byte array to Long array

تم تحميل الصفحة في 1,8991112 ثانية
Byte array to Long array
إنضم
4 نوفمبر 2013
المشاركات
75
الإعجابات
112
النقاط
33
العمر
19
الإقامة
لــــيــــبــــيــــا
السلام عليكم ورحمة الله وبركاته

فكرة جديدة لتشفير البايتات :)

شرح بسيط :-

الفكرة هي تحويل البيتات الى سلاسل رقمية طويلة ضمن جدول ضرب 3 (6,9,12,15,18...)

طبعا بتاوجنها مشلكة اولا البايتات الصفرية استحالة تضع صفر على الشمال هههه لو جي في بداية الرقم لن تكون له قيمة وهكدا ينعطب الملف
+
المشكلة الثانية عند استرجاع الباتات كيف افصلهم من الرقم لان البات محصور بين 0 الى 255
هنا قلت ليش ما اخلي اي بايت طولة اقل من خانتين يبداء بي 3 مثال (50) اضيف ثلاثة على الشمال (350)خارج حدود البايت :)
وادا كان الرقم خانة واحدة فقط نضيف مثلا
(40):) وهكدا
في النهاية نقوم بتحويل الارقام الى سترنق ونعمل حلقة تاخد كل
3 كركترز وترجعهم الى قيمة رقمية وادا كان (أكبر من 300 واصغر من 400) نطرح منه 300
وادا كان اكبر من 400 نطرح منه 400:)

المهم نأتي للاكواد:637483:

فنكشن التشفير خليت الناتج منظم أحسن ما يجي كله في سطر واحد :222:


C#:
  static string Crypint(byte[] b)
        {

            var output = new StringBuilder();
            string tempp = "";
            int timew = 0;
            int r = 0;
            int co = 0;
            for (int i = 0; i < b.Length; i++)
            {
                if ((b[i] < 100) && (b[i] > 9)) { tempp = "3" + b[i]; };//
                if (b[i] < 10) { tempp = "40" + b[i]; };
                if (b[i] > 99) { tempp = "" + b[i]; };
                output.Append(tempp);

                if ((output.Length - co) > 15)
                {
                  output.Append(", ");
                    if (r == 6)
                    {
                       output.Append( System.Environment.NewLine);
                        r = 0;
                    }
                    r++;
                    co = output.ToString().Length;
                }
           
              
            }
            return "long[] Dev = { " + output.ToString() + "};";
        }
طبعا انا اخترت اخلي الطول 15 عشان ما تحصل اخطاء بسبب كبر الرقم :(172)[1]:


و هنا نسترجع البايتات :13:


C#:
            var b = new List<byte>();
            string assm = "";
            foreach (long s in Dev)
            {
                assm += s;
            }

            for (int i = 0; i < assm.Length ; i += 3)
            {
                if ((int.Parse(assm.Substring(i, 3)) > 299) && (int.Parse(assm.Substring(i, 3)) < 400))
                {
                 b.Add ((byte)(int.Parse(assm.Substring(i+1, 2))));
          
                }
                else if (int.Parse(assm.Substring(i, 3)) > 399)
                 {
                     b.Add((byte)(int.Parse(assm.Substring(i + 2, 1))));
                

                 }
                else
                {
                    b.Add((byte)(int.Parse(assm.Substring(i, 3))));
                }

            }
يمكن كتابة الاكواد بشكل افظل بس انا كسول شوي ههههه:24:


النتيجة @long.exe | 0/34 | NoDistribute


أتمنى ان كل شيء كان واضح
والى اللقاء :]d (5):
 
التعديل الأخير:
إنضم
4 نوفمبر 2013
المشاركات
75
الإعجابات
112
النقاط
33
العمر
19
الإقامة
لــــيــــبــــيــــا
إنضم
26 أكتوبر 2012
المشاركات
12,507
الإعجابات
16,359
النقاط
215
الإقامة
In YouR MinD
فكرة جميلة اخي العزيز و تفيد في الكثير من الاشياء بالاضافة للتشفير ,,

يعطيك الف عافية واصل ابداعك يا طيب :38:

تحياتي
 
إنضم
4 نوفمبر 2013
المشاركات
75
الإعجابات
112
النقاط
33
العمر
19
الإقامة
لــــيــــبــــيــــا
بارك الله بك اخي، بس سؤال


في هذا البراميتر هل المطلوب فقط تمرير مسار السيرفر في جهازنا؟ او كيف؟
لا جيب البايتات من الملف ثم ممرها للفنكشن:244:

C#:
var b = System.IO.File.ReadAllBytes;("مسار الملف")
    MessageBox.Show( Crypint(b));//example
فكرة جميلة اخي العزيز و تفيد في الكثير من الاشياء بالاضافة للتشفير ,,

يعطيك الف عافية واصل ابداعك يا طيب :38:

تحياتي
تسلم أخي جميل ان اعلم ان هناك استخدامات اخرى :)
:637475::637475::637475:
 

SiCaRiO

Beginner Developer
rank
إنضم
28 يوليو 2011
المشاركات
101
الإعجابات
77
النقاط
28
الإقامة
MOROCCO
شكرا على الموضوع تشفيرة ممتازة
لكن عندي سؤال انا مبتدأ
ماذا ساكتب بعد الحصول على b
 
إنضم
4 نوفمبر 2013
المشاركات
75
الإعجابات
112
النقاط
33
العمر
19
الإقامة
لــــيــــبــــيــــا
يعطيك العافية يغالي
الله يعافيك أخي تسلم :38::38::38:
شكرا على الموضوع تشفيرة ممتازة
لكن عندي سؤال انا مبتدأ
ماذا ساكتب بعد الحصول على b
نقطة ادخال فقط
System.Reflection.Assembly.Load(b.ToArray()).EntryPoint.Invoke(null,null);
تسلم أخي يعطيك العافية
الله يسلمك أخي نورت :1 (226)::1 (226)::1 (226):
 

الأعضاء النشطين حاليآ الذين يشاهدون هذا الموضوع (1 عضو و 0 ضيف)

خيارات الاستايل

نوع الخط
مودك
اخفاء السايدر بار OFF
توسيط المنتدى OFF
فصل الأقسام OFF
الأقسام الفرعية OFF
عرض المشاركات
حجم الخط
معلومات العضو OFF
إخفاء التوقيع OFF

إرجاع خيارات الإستايل