اطلاعیه

Collapse
No announcement yet.

الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

    عرض سلام و ادب
    برای سیستمی نیاز به استفاده از ارتباط بیسیم دارم.
    از اونجایی که امنیت اطلاعات ارسالی و دریافت صحیح در گیرنده خیلی مهم هست ، خواستم از دوستان برای کد گذاری و همچنین الگوریتم های خطایابی راهنمایی بگیرم.
    هدف ترکیب ، رمز گذاری و ارسال دو داده 48 بیتی و 24 بیتی هست.
    و در گیرنده دریافت بدون خطا و دیکد کردن.
    حالا سوال اینه که از چه الگوریتمی برای این کار میشه استفاده کرد؟
    با تشکر.
    تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

    #2
    پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

    سلام

    در هر ارتباطی امکان بروز خطا وجود داره و این مورد غیر قابل اجتناب هست ولی خوب میشه با روشهای خیلی ساده خطا رو کشف و درخواست ارسال دوباره رو کرد
    بهترین حالتی که من تاحالا با اون کار کردام ( برای کشف خطا) crc16 هست که تو بسکام ساپورت میشه
    برای رمز گذاری روی دیتا هم به این تاپیک یه سر بزنید تو قسمت های آخر نمونه کدی برای vb.net هست که روش کد و دیکد کردن رو روی کامپیوتر نشون میده . من اطلاعات رمز شده رو با xmega از طریق پورت سریال به کامپیوتر ارسال میکردام
    http://www.eca.ir/forum2/index.php?topic=43130.15
    توی این تاپیک یه کتابخونه برای AES128 که آقای طراح قرار دادن شاید به کارتون بخوره




    دیدگاه


      #3
      پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

      این ماژول های آماده که رمز نگاری میکنن همشون Backdoor دارن پس بهتون پیشنهاد میکنم که اصلا ازشون استفاده نکنید.
      سعی کنید خودتون الگوریتم رمز نگاری رو توسط FPGA یا CPLD پیاده سازی کنید.
      در ضمن این رو هم در نظر بگیرید که اگر خطا رخ بده اطلاعات رمزنگاری شده کاملا از دست میره.

      دیدگاه


        #4
        پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

        ممنون از پاسختون.
        در مورد رمز گذاری داده ها راستش به یه نتایجی رسیدم.
        اینقدر تو این زمینه میشه مانرو داد که ماهیت دیتا هیچ ربطی به اصلش نداشته باشه.

        اما در مورد خطایابی:
        بیشتر منظورم تصحیح خطا هست.
        یعنی نیازی به ارسال مجدد داده نباشه.
        و براساس همون داده های ارسالی مرتبه اول سیستم بتونه با وجود از دست رفتن یکی دو بیت از اطلاعات ، باز هم عملکرد صحیحی داشته باشه.
        همچین چیزی امکان پذیره؟
        تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

        دیدگاه


          #5
          پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

          نوشته اصلی توسط mehdi_nxp
          ممنون از پاسختون.
          در مورد رمز گذاری داده ها راستش به یه نتایجی رسیدم.
          اینقدر تو این زمینه میشه مانرو داد که ماهیت دیتا هیچ ربطی به اصلش نداشته باشه.

          اما در مورد خطایابی:
          بیشتر منظورم تصحیح خطا هست.
          یعنی نیازی به ارسال مجدد داده نباشه.
          و براساس همون داده های ارسالی مرتبه اول سیستم بتونه با وجود از دست رفتن یکی دو بیت از اطلاعات ، باز هم عملکرد صحیحی داشته باشه.
          همچین چیزی امکان پذیره؟
          سلام
          ممنون از پاسخ های دوستان و پیگیری شما

          در مورد رمز نگاری، جدای از روش های آماده، خود شما هم میتونی به راحتی رمز بذاری!
          الگوریتمهای رمزگذاری برخی هاشون پیچیده و برخی هاشون معمولین

          در مورد تصحیح خطا، در دروس تئوری اطلاعات و کدینگ
          به روش هایی اشاره میشه که قابلیت تشخیص خطا رو دارن
          بعدش روش هایی مطرح میشن که قابلیت تصحیح خطا هم دارن!
          مثلا در یک پکت 1024 بیتی، 880 بایت اطلاعات اصلیه و بقیه، داده هایی برای تصحیح و تشخیص
          معمولا تعداد بیتهای تشخیص از تصحیح بیشتره
          مثلا در مثال فوق 144 بیت اضافه موجوده
          که به کمک اینا میشه مثلا (این اعداد واقعی نیستن) 100 بیت خطا رو تشخیص داد و 80 تاش رو هم تصحیح کرد!
          یعنی اگه در روش مذکور (مثاله، واقعی نیست)، 81 ای خطا داشته باشیم
          پکت باید دوباره ارسال بشه
          اما اگه حداکثر 80 تا خطا داشته باشه، میشه اصلاح بشه
          و دیگه نیازی به ارسال مجدد نیست!
          (این مقدار، به روش کدگذاری بستگی داره)
          روش های بسیار متنوعی برای کدینگ وجوود داره

          نکته ی دیگه اینکه:
          به نظر میرسه بهتر باشه که شما ابتدا داده هات رو رمز کنی
          بعد روش های کدینگ رو اعمال کنی

          ...
          :read:
          1: اللهم صل علي محمد و آل محمد و عجل فرجهم و ...
          2: دانش بهتره يا ثروت؟ بدون شعور هيچکدوم!
          3: دلا معاش چنان کن که گر بلغزد پاي *** فرشته‌ات به دو دست دعا نگه دارد (حافظ)

          دیدگاه


            #6
            پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

            ممنون
            مطالبی که فرمودید کاملا درست.
            اما بیشتر کلیات بود ، بنده دنبال الگوریتم های این کار هستم.
            تو همین مثالی که فرمودید این 80 بیت دقیقا چیه از چه قسمت هایی از دیتا تهیه میشه و به چه صورت با دیتای اصلی ترکیب میشن؟
            روش های بسیار متنوعی برای کدینگ وجوود داره
            اگه ممکنه در مورد یکیش که خیلی هم پیچیده نباشه توضیح مختصری بدید ممنون میشم.
            نکته ی دیگه اینکه:
            به نظر میرسه بهتر باشه که شما ابتدا داده هات رو رمز کنی
            بعد روش های کدینگ رو اعمال کنی
            اینو که بله حتما.

            با تشکر
            تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

            دیدگاه


              #7
              پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

              http://users.cis.fiu.edu/~downeyt/cop3402/hamming.html
              این لینک راجع به سیستم خطایابی و تصحیح کد همینک توضیح داده. و برای سیستم ارسال بهترین سیستمی که من خودم دیدم سیستم منچستر کد بوده. manchester.
              یک پروژه رو با تلفیقی از این دو به صورت بیسیم راه اندازی کردم و بدون خطا کار میکنه. یا دیتا هست یا از بین میره و نیست. دیتای غلط وارد نمیشه.

              دیدگاه


                #8
                پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                نوشته اصلی توسط mehdi_nxp
                ممنون از پاسختون.
                در مورد رمز گذاری داده ها راستش به یه نتایجی رسیدم.
                اینقدر تو این زمینه میشه مانرو داد که ماهیت دیتا هیچ ربطی به اصلش نداشته باشه.

                اما در مورد خطایابی:
                بیشتر منظورم تصحیح خطا هست.
                یعنی نیازی به ارسال مجدد داده نباشه.
                و براساس همون داده های ارسالی مرتبه اول سیستم بتونه با وجود از دست رفتن یکی دو بیت از اطلاعات ، باز هم عملکرد صحیحی داشته باشه.
                همچین چیزی امکان پذیره؟
                بله
                از کد همینگ میتونید استفاده کنید.
                با استفاده از این کد و با سرباری نسبتا کم (۳ بیت به ازای هر ۸ بیت) میتونید تا یک بیت خطا رو کشف و اصلاح کنید. همچنین میتونید ۲ بیت خطا رو تشخیص بدید ولی دیگه نمیتونید درستش کنید.
                با زیاد کردن فاصله همینگ تعداد بیت های قابل اصلاح زیادتر میشن ولی سربارتون هم افزایش پیدا میکنه.

                دیدگاه


                  #9
                  پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                  نوشته اصلی توسط Mahdi_Vaziri
                  http://users.cis.fiu.edu/~downeyt/cop3402/hamming.html
                  این لینک راجع به سیستم خطایابی و تصحیح کد همینک توضیح داده. و برای سیستم ارسال بهترین سیستمی که من خودم دیدم سیستم منچستر کد بوده. manchester.
                  یک پروژه رو با تلفیقی از این دو به صورت بیسیم راه اندازی کردم و بدون خطا کار میکنه. یا دیتا هست یا از بین میره و نیست. دیتای غلط وارد نمیشه.
                  تا جایی که من به یاد میارم منچستر ماجولاتوره.
                  برای خطایابی و اصلاح همون کد همینگ از همه چیز بهتره.

                  دیدگاه


                    #10
                    پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                    نوشته اصلی توسط Mahdi_Vaziri
                    http://users.cis.fiu.edu/~downeyt/cop3402/hamming.html
                    این لینک راجع به سیستم خطایابی و تصحیح کد همینک توضیح داده. و برای سیستم ارسال بهترین سیستمی که من خودم دیدم سیستم منچستر کد بوده. manchester.
                    یک پروژه رو با تلفیقی از این دو به صورت بیسیم راه اندازی کردم و بدون خطا کار میکنه. یا دیتا هست یا از بین میره و نیست. دیتای غلط وارد نمیشه.
                    آقای وزیری خیلی ممنون.
                    بسیار مفید و خیلی جالب بود.
                    برنامشو بنویسم ببینم در عمل چه جوری جواب میده.
                    از کد همینگ میتونید استفاده کنید.
                    با استفاده از این کد و با سرباری نسبتا کم (۳ بیت به ازای هر ۸ بیت) میتونید تا یک بیت خطا رو کشف و اصلاح کنید. همچنین میتونید ۲ بیت خطا رو تشخیص بدید ولی دیگه نمیتونید درستش کنید.
                    با زیاد کردن فاصله همینگ تعداد بیت های قابل اصلاح زیادتر میشن ولی سربارتون هم افزایش پیدا میکنه.
                    طبق توضیحات لینکی که آقای وزیری قرار دادند به ازای هر 8 بیت 4 بیت اضافه میشه.
                    اونی که شما گفتید چطوریه که 3 تا اضافه میشه؟
                    تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

                    دیدگاه


                      #11
                      پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                      سلام مجدد
                      ممنون از پاسخ دوستان
                      کد همینگ از یک لحاظ دو نوع داره:
                      سیستماتیک و غیر سیستماتیک
                      در حالت اول، بیت های اضافه شده بعد از داده اصلی قرار میگیرن
                      در حالت دوم بین داده ها پخش هستن اما طبق الگوریتم جاشون معلومه
                      به صورت (n,k) نشون میدن
                      که n تعداد کل بیت ها و k تعداد بیتهای داده ی اصلیه
                      کدهای همینگ توسعه یافته و کوتاه شده هم داریم
                      روشش هم نسبتا ساده و از نظر برنامه نویسی براحتی قابل پیاده سازیه
                      هرچه n بزرگتر یا k کوچکتر باشه کد قوی تره
                      اطلاعات بیشتر در آینده انشالله ...
                      :read:
                      1: اللهم صل علي محمد و آل محمد و عجل فرجهم و ...
                      2: دانش بهتره يا ثروت؟ بدون شعور هيچکدوم!
                      3: دلا معاش چنان کن که گر بلغزد پاي *** فرشته‌ات به دو دست دعا نگه دارد (حافظ)

                      دیدگاه


                        #12
                        پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                        نوشته اصلی توسط mehdi_nxp
                        آقای وزیری خیلی ممنون.
                        بسیار مفید و خیلی جالب بود.
                        برنامشو بنویسم ببینم در عمل چه جوری جواب میده.طبق توضیحات لینکی که آقای وزیری قرار دادند به ازای هر 8 بیت 4 بیت اضافه میشه.
                        اونی که شما گفتید چطوریه که 3 تا اضافه میشه؟
                        تعداد بیت اضافه شده وابسته به فاصله همینگی مد نظر شماست.
                        عرض کردم که ۳ بیت برای کشف ۲ بیت خطا و اصلاح ۱ بیت خطاست.
                        اگر بخواید تعداد کشف و اصلاحتون رو زیادتر کنید قاعدتا تعداد بیت های سربارتون هم زیاد تر میشه.

                        دیدگاه


                          #13
                          پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                          نوشته اصلی توسط hamidreza.nayeri
                          تعداد بیت اضافه شده وابسته به فاصله همینگی مد نظر شماست.
                          عرض کردم که ۳ بیت برای کشف ۲ بیت خطا و اصلاح ۱ بیت خطاست.
                          اگر بخواید تعداد کشف و اصلاحتون رو زیادتر کنید قاعدتا تعداد بیت های سربارتون هم زیاد تر میشه.
                          ولی لینکی که داده شد با 4 بیت اضافه کردن فقط میتونه 1 بیت خطا رو تصحیح کنه که!

                          و اگه دو بیت خطا رخ بده علاوه بر این که نمیتونه تشخیص بده دیتای غلط هم میده!
                          برای این مشکل راه حلی دارید؟
                          تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

                          دیدگاه


                            #14
                            پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                            نوشته اصلی توسط hamidreza.nayeri
                            تا جایی که من به یاد میارم منچستر ماجولاتوره.
                            برای خطایابی و اصلاح همون کد همینگ از همه چیز بهتره.
                            این دو دو مبحث کاملا جدا از هم هستند. منچستر سیستم ارسال دیتا و همینک سیستم کد گذاری و خطایابی هستش. منظورتونم از کلمه ماجولاتور باز بکنید ممنون میشم. حداقل یاد میگیریم معنیشو

                            دیدگاه


                              #15
                              پاسخ : الگوریتم های رمزگذاری و خطایابی در ارتباط بیسیم

                              نوشته اصلی توسط Mahdi_Vaziri
                              این دو دو مبحث کاملا جدا از هم هستند. منچستر سیستم ارسال دیتا و همینک سیستم کد گذاری و خطایابی هستش. منظورتونم از کلمه ماجولاتور باز بکنید ممنون میشم. حداقل یاد میگیریم معنیشو
                              ببخشید آقای وزیری یه سوال دارم از اونجایی که شما کار کردین میگم.
                              توی این سیستم همینگ اگه 2 تا بیت با خطا دریافت بشه چه طور باید فهمید؟
                              این جوری که من فهمیدم اگه دو تا بیت با خطا دریافت بشه علاوه براین که نمیتونه تشخیص بده اطلاعات اشتباهی به خروجی میده!
                              این مشکل رو چه طور میشه حل کرد؟؟
                              تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

                              دیدگاه

                              لطفا صبر کنید...
                              X