اطلاعیه

Collapse
No announcement yet.

رمزنگاری AES و DES

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

    رمزنگاری AES و DES

    این موضوع رو ایجاد کردم تا ببینم AES و DES دقیقا چیه و چجوری میشه ازش استفاده کرد اینکه گفته میشه که برای انتقال اطلاعات امن هستش خوب انتقال اطلاعات باهاش چجوریه؟
    با تشکر از جواب هاتون :smile:

    #2
    پاسخ : رمزنگاری AES و DES

    فرض کنید مجموعه ای از اطلاعات در عملیات انتقال یا ذخیره سازی در معرض دید ناظران غیر مجاز قرار داشته باشد( مانند اطلاعات بانکی که بوسیله ماهواره منتقل می شود و هر کس می تواند با قرار دادن یک dish آن را دریافت کند). در این شرایط لازم است ماهیت اطلاعات به گونه ای تغییر کند که برای ناظران غیرمجاز قابل درک نباشدو فقط گیرنده ای که از شیوه تغییر گاهی دارد بتواند به اصل اطلاعات دسترسی داشته باشد. به عنوان مثال دیگر فرض کنید که از یک سیستم میکروکنترلری هزاران عدد تولید شده و قرار است به هر دلیلی نرم افزار این سیستم ها ارتقا یابد. اگر سازنده این دستگاه ها برای انتقال نرم افزار بخواهد تمام دستگاه ها را به محل خود منتقل کند و یا کسانی را برای این تغییر به محل دستگاه ها بفرستد، این کار در عمل ممکن نیست. اگر هم این تولید کننده بخواهد نرم افزار را در اختیار دیگران قرار دهد، به دلیل اینکه سورس نرم افزار باید محفوظ بماند، چنین کاری عملی نیست. یک روش ممکن این است که سورس نرم افزار به نحوی کد شود که برای دیگران قابل استفاده نباشد و از طریق BootLoader موجود در حافظه میکروکنترلر که به کلید رمز اطلاعات مورد نظر دسترسی دارد، برنامه به حافظه منتقل می شود و کسی هم نمی تواند به اصل نرم افزار کد شده دست یابد.
    در خانواده XMEGA برای این پروسه کد کردن و تغییر اطلاعات و پروسه معکوس آن که عملیات مفصل و پرحجمی است، سخت افزار لازم پیش بینی شده و به همین دلیل این عملیات می تواند با سرعت بسیار بالاتری نسبت به میکروکنترلرهایی که فاقد این امکان هستند، انجام بگیرد.
    ممکن است در کاربردهایی لازم باشد به صورت مداوم روی اطلاعات تولید یا دریافت شده تغییر انجام بگیرد و در این شرایط یکی از ویژگی های XMEGA که کمتر رقیبی برای آن یافت می شود، خود را نشان می دهد.
    اوژن: به معنای افکننده و شکست دهنده است
    دانایی، توانایی است-Knowledge is POWER
    برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
    وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
    قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
    اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
    ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

    دیدگاه


      #3
      پاسخ : رمزنگاری AES و DES

      مطابق متن زیر، صادرات XMEGA از آمریکا به کشور های کوبا، ایران، لیبی، کره شمالی، سوریه وسودان به دلیل قابلیت رمزنگاری آن ممنوع می باشد:

      http://www.atmel.com/dyn/resources/p...mcu_10_27.html
      اوژن: به معنای افکننده و شکست دهنده است
      دانایی، توانایی است-Knowledge is POWER
      برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
      وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
      قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
      اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
      ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

      دیدگاه


        #4
        پاسخ : رمزنگاری AES و DES

        پس تا میتونیم بخریمش تا مشکلی نداشته باشیم(مثل AVR نشه)
        راستی با این AES و DES دیتا معمولی هم میشه فرستاد؟

        دیدگاه


          #5
          پاسخ : رمزنگاری AES و DES

          البته تا جایی که یادم هست یک بوت لودر برای AVR مبتنی بر DES 128 بیتی با حجم کمی روی اینترنت موجود هست. فکر کنم در سایت AVRFREAK دیدم.

          دیدگاه


            #6
            پاسخ : رمزنگاری AES و DES

            نوشته اصلی توسط reza_agha
            البته تا جایی که یادم هست یک بوت لودر برای AVR مبتنی بر DES 128 بیتی با حجم کمی روی اینترنت موجود هست. فکر کنم در سایت AVRFREAK دیدم.
            الگوریتم های رمزنگاری را به صورت نرم افزاری و به وسیله میکروکنترلرهای مختلف می توان انجام داد. اما مهم این است که در XMEGA اینکار بصورت سخت افزاری و با فرمان نرم افزار انجام می شود و بنابراین در مدت زمان بسیار سریعی قابل انجام است. چنانکه رمزنگاری DES با 16 بار اجرای این دستور که جمعا 17 سیکل طول می کشد، قابل انجام است و برای یک کلاک 32 مگاهرتز این زمان معادل تقریبا 0.5 میکرو ثانیه می شود(به غیر از زمان لازم برای Load کردن اطلاعات و کلید رمز). در کاربردهایی که حجم زیادی از اطلاعات باید به سرعت رمز نگاری یا رمز گشایی شوند، این قابلیت سخت افزاری قابل جایگزینی با روتین های نرم افزاری نیست.
            اوژن: به معنای افکننده و شکست دهنده است
            دانایی، توانایی است-Knowledge is POWER
            برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
            وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
            قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
            اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
            ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

            دیدگاه


              #7
              پاسخ : رمزنگاری AES و DES

              کامپایلر بسکام v2.0.5.0 قابلیت کار با رمزنگاری AES را فراهم کرده.
              اطلاعات بیشتر
              http://avrhelp.mcselec.com/index.html
              |
              |
              V
              AESDECRYPT
              AESENCRYPT

              دیدگاه


                #8
                پاسخ : رمزنگاری AES و DES

                این قابلیت به نوعی لایه نرم افزاری است درسته؟
                مثلا میشه بروی سریال از این روش استفاده کرد
                هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
                بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
                میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

                تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

                دیدگاه


                  #9
                  پاسخ : رمزنگاری AES و DES

                  قبل از قرار دادن اطلاعات ارسالی در بافر سریال می توان ابتدا عملیات Encryption را با کلید رمز دلخواه روی اطلاعات انجام داد و بعد آن را ارسال کرد. در مقصد هم با در اختیار بودن کلید رمز نگاری می توان اطلاعات را مجددا بازیابی کرد. اما اصل انجام عملیات بصورت سخت افزاری است. یعنی اطلاعاتی به واحد DES یا AES به همراه کد رمز تحویل داده میشود و اطلاعات Encrypte یا Decrypte شده تحویل گرفته می شود که بعد می توان آن را ذخیره سازی یا ارسال یا ... کرد.
                  اوژن: به معنای افکننده و شکست دهنده است
                  دانایی، توانایی است-Knowledge is POWER
                  برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                  وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                  قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                  اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                  ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                  دیدگاه


                    #10
                    پاسخ : رمزنگاری AES و DES

                    اگه اشتباه نکنم دقیقا مثل یک تابعی در php است db5 که خروجی رشته ای 30 کاراکتره و هیچ جور نمیشه استخراجش کرد
                    2تا سوال
                    اول اینکه توابع اماده کاری داره یا باید نوشته بشه (البته برای string )
                    دوم اینکه مثلا من میخوام abcd رو اینکود کنم چه مقدار فضا لازم دارم برا ی اینکود adcd یا بهتر بگم خروجی چندبرابر مقدار اولیه است(مقدار حجم اشغالی)
                    هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
                    بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
                    میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

                    تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

                    دیدگاه


                      #11
                      پاسخ : رمزنگاری AES و DES

                      نوشته اصلی توسط طراح
                      فرض کنید مجموعه ای از اطلاعات در عملیات انتقال یا ذخیره سازی در معرض دید ناظران غیر مجاز قرار داشته باشد( مانند اطلاعات بانکی که بوسیله ماهواره منتقل می شود و هر کس می تواند با قرار دادن یک dish آن را دریافت کند). در این شرایط لازم است ماهیت اطلاعات به گونه ای تغییر کند که برای ناظران غیرمجاز قابل درک نباشدو فقط گیرنده ای که از شیوه تغییر گاهی دارد بتواند به اصل اطلاعات دسترسی داشته باشد. به عنوان مثال دیگر فرض کنید که از یک سیستم میکروکنترلری هزاران عدد تولید شده و قرار است به هر دلیلی نرم افزار این سیستم ها ارتقا یابد. اگر سازنده این دستگاه ها برای انتقال نرم افزار بخواهد تمام دستگاه ها را به محل خود منتقل کند و یا کسانی را برای این تغییر به محل دستگاه ها بفرستد، این کار در عمل ممکن نیست. اگر هم این تولید کننده بخواهد نرم افزار را در اختیار دیگران قرار دهد، به دلیل اینکه سورس نرم افزار باید محفوظ بماند، چنین کاری عملی نیست. یک روش ممکن این است که سورس نرم افزار به نحوی کد شود که برای دیگران قابل استفاده نباشد و از طریق BootLoader موجود در حافظه میکروکنترلر که به کلید رمز اطلاعات مورد نظر دسترسی دارد، برنامه به حافظه منتقل می شود و کسی هم نمی تواند به اصل نرم افزار کد شده دست یابد.
                      در خانواده XMEGA برای این پروسه کد کردن و تغییر اطلاعات و پروسه معکوس آن که عملیات مفصل و پرحجمی است، سخت افزار لازم پیش بینی شده و به همین دلیل این عملیات می تواند با سرعت بسیار بالاتری نسبت به میکروکنترلرهایی که فاقد این امکان هستند، انجام بگیرد.
                      ممکن است در کاربردهایی لازم باشد به صورت مداوم روی اطلاعات تولید یا دریافت شده تغییر انجام بگیرد و در این شرایط یکی از ویژگی های XMEGA که کمتر رقیبی برای آن یافت می شود، خود را نشان می دهد.

                      سلام
                      اگه میشه پروژه یا طرز کارشم بگید
                      ممنون

                      دیدگاه


                        #12
                        پاسخ : رمزنگاری AES و DES

                        نوشته اصلی توسط fsd2070
                        اگه میشه پروژه یا طرز کارشم بگید
                        برای پیاده سازی رمزنگاری DES و AES می توانید به کتابخانه های آماده Atmel مراجعه کنید:

                        http://atmel.com/dyn/resources/prod_...ts/AVR1317.zip

                        http://atmel.com/dyn/resources/prod_...ts/AVR1318.zip
                        اوژن: به معنای افکننده و شکست دهنده است
                        دانایی، توانایی است-Knowledge is POWER
                        برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                        وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                        قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                        اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                        ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                        دیدگاه


                          #13
                          پاسخ : رمزنگاری AES و DES

                          نوشته اصلی توسط طراح
                          برای پیاده سازی رمزنگاری DES و AES می توانید به کتابخانه های آماده Atmel مراجعه کنید:

                          http://atmel.com/dyn/resources/prod_...ts/AVR1317.zip

                          http://atmel.com/dyn/resources/prod_...ts/AVR1318.zip

                          میشه یه توضیح بدید که چطوری باید این فایلها رو تو کدویژن استفاده کرد؟
                          چون کتابخانه ها پسوند .lib دارن ولی تو این فایلها نبود. باید متن داخل فایلها رو تو برنامه اصلی کپی کرد؟

                          دیدگاه


                            #14
                            پاسخ : رمزنگاری AES و DES

                            این کتابخانه ها بر مبنای IAR و با توجه به امکان سخت افزاری پیاده سازی AES و DES در XMEGA نوشته شده اند. امکان استفاده در محیط کدویژن هم با تغییراتی میسر است. اما مستلزم تسلط شما به برنامه نویسی c و تفاوت های کدویژن با IAR است.
                            اوژن: به معنای افکننده و شکست دهنده است
                            دانایی، توانایی است-Knowledge is POWER
                            برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                            وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                            قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                            اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                            ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                            دیدگاه


                              #15
                              پاسخ : رمزنگاری AES و DES

                              سلام
                              آیا امکان خواندن کدهای رمزی که بوسیله XMEGA AES تولید میشه تو یکی از نرم افرارهای برنامه نویسی ( VB.NET و ...) وجود داره؟
                              هدف من ارسال و دریافت اطلاعات رمز شده از طریق پورت سریال به کامپیوتر هست

                              کد:
                              $regfile = "xm16a4def.dat"
                              $crystal = 32000000                     '32MHz
                              $hwstack = 200
                              $swstack = 200
                              $framesize = 200
                              
                              $lib "xmega.lib" : $external _xmegafix_clear : $external _xmegafix_rol_r1014
                              Config Osc = Disabled , 32mhzosc = Enabled         '32MHz
                              Config Sysclock = 32mhz , Prescalea = 1 , Prescalebc = 1_1
                              
                              
                              Open "comD.2:115200,8,n,1" For Output As #1
                              
                              
                              Dim Text As String * 32
                              
                              
                              
                              Do
                              
                              
                                 Text = "test AES"
                              
                              
                                 Print #1 , "main text =>    " ; Text
                                 Print #1 ,
                              
                              
                                 Aesencrypt Keydata , Text , 32
                                 Print #1 , "after encrypt =>  " ; Text
                                 Print #1 ,
                              
                              
                              
                              
                                 Aesdecrypt Keydata , Text , 32
                                 Print #1 , "after decrypt =>  " ; Text
                                 Print #1 ,
                              
                              
                                 Wait 1
                              
                              Loop
                              
                              
                              
                              End
                              
                              
                              
                              Keydata:
                              Data &H0AA , &H011 , &H022 , &H033 , &H044 , &H055 , &H066 , &H077 , &H088 , &H099 , &H0AA , &H0BB , &H0CC , &H0DD , &H0EE , &H0FF

                              دیدگاه

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