کامپیوترایمنی

RSA-رمزگذاری. توضیحات و اجرای الگوریتم RSA

RSA-رمزگذاری یکی از اولین سیستم های رمزنگاری کلید عمومی عملی است که به طور گسترده ای برای انتقال داده ها امن استفاده می شود. تفاوت اصلی آن از خدمات مشابه این است که کلید رمزنگاری باز و متفاوت از کلید رمزگشایی، که مخفی نگه داشته است. فن آوری RSA ، این عدم تقارن بر مشکل عملی از مقاطعه پخش دو عدد اول بزرگ (مشکل از مقاطعه) است.

تاریخچه ایجاد

RSA نام متشکل از حروف اول نام خانوادگی Rivest، شامیر و آدلمن - دانشمندانی که اولین بار این توصیف الگوریتم های رمزنگاری در سال 1977. Klifford KOKS، ریاضیدان انگلیسی، که برای سرویس های اطلاعاتی انگلیس کار می کرد، برای اولین بار به توسعه یک سیستم معادل در سال 1973 بود، اما آن را تا سال 1997 از حالت محرمانه خارج نمی

کاربران RSA ایجاد می کند و پس از آن منتشر کلید عمومی بر اساس دو عدد اول بزرگ همراه با ارزش کمکی. اعداد اول باید مخفی نگه داشته. هر کسی می تواند کلید عمومی برای رمزگذاری پیام استفاده کنید، اما اگر به اندازه کافی بزرگ است، پس از آن تنها کسی با دانش از اعداد اول می توانید پیام را رمزگشایی. RSA افشای رمزگذاری به عنوان مشکل اصلی امروز شناخته شده بحث باز در مورد چگونه یک مکانیسم قابل اعتماد است.

الگوریتم RSA نسبتا آهسته است، به همین دلیل آن را به عنوان به طور گسترده ای مورد استفاده قرار نمی به طور مستقیم رمزگذاری کاربر. در اغلب موارد، این روش برای انتقال در کلید مشترک رمزگذاری برای یک کلید رمزنگاری متقارن، که به نوبه خود می تواند عملیات با سرعت بسیار بالاتر انجام رمزگذاری فله و رمزگشایی استفاده می شود.

هنگامی که یک سیستم رمزنگاری در شکل فعلی آن وجود دارد؟

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

Rivest به، آدی شامیر، و آدلمن در MIT چندین تلاش در طول سال ها برای ایجاد یک تابع یک طرفه است که به سختی برای رمزگشایی کرده اند. Rivest و شامیر (به عنوان دانشمندان کامپیوتر) بسیاری از توابع پتانسیل پیشنهاد کرده اند، در حالی که آدلمن (مانند ریاضیات) به جستجو برای "نقاط ضعف" از الگوریتم. آنها بسیاری از رویکردهای مورد استفاده و در نهایت توسعه یک سیستم نهایی، در حال حاضر به عنوان RSA در آوریل 1977 شناخته شده است.

امضای الکترونیکی و کلید عمومی

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

این سیستم رمزنگاری (RSA رمزگذاری) ارائه می دهد کلید عمومی، بر خلاف متقارن. اصل آن از عمل است که دو کلید متفاوت استفاده می شود - بسته (رمزگذاری) و فضای باز. اولین مورد استفاده برای تولید امضای دیجیتالی و پس از آن قادر به رمزگشایی متن. دوم - برای رمزگذاری واقعی و امضای الکترونیکی.

با استفاده از امضاهای برای درک بهتر رمزنگاری RSA، نمونه ای از است که می تواند به عنوان یک راز طبیعی کاهش می یابد سند "از چشم کنجکاو، بسته".

الگوریتم چیست؟

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

به دلایل ایمنی، اعداد صحیح به طور تصادفی انتخاب شده و در اندازه یکسان باشد، اما در طول توسط چند اعداد را به مقاطعه سخت تر متفاوت است. همان تعداد همان را می توان به طور موثر توسط آزمون در سادگی خود را یافت، به طوری که رمزگذاری اطلاعات لزوما باید پیچیده باشد.

کلید عمومی شامل مدول و توان عمومی است. داخلی واحد و متشکل از یکی از چهره های خصوصی، که باید مخفی نگه داشته.

رمزنگاری RSA از فایل ها و نقاط ضعف

با این حال، تعدادی از هک مکانیزم های ساده RSA وجود دارد. هنگامی که رمزنگاری با ارزش کم و کوچک از اعداد کد را می توان به راحتی باز، اگر متن رمزشده ریشه انتخاب بیش از اعداد صحیح.

از آنجا که RSA-رمزنگاری یک الگوریتم تعیین است (یعنی، هیچ جزء تصادفی)، یک مهاجم می تواند با موفقیت راه اندازی متن انتخاب شده حمله علیه سیستم رمزنگاری توسط رمزنگاری متون ساده به احتمال زیاد تحت کلید عمومی و چک به اینکه آیا آنها متن رمزی برابر است. از لحاظ معنایی رمز امن است در صورتی که یک مهاجم نمی تواند بین دو رمزگذاری از یکدیگر تشخیص داد، حتی اگر او می داند متون مربوطه در شکل گسترده به نام. همانطور که در بالا توضیح داده شد، RSA خدمات دیگر بدون بالشتک است معنایی امن نیست.

الگوریتم های اضافی برای رمزگذاری و حفاظت

برای جلوگیری از مشکلات فوق، در اجرای عملی RSA معمولا به نوعی از ساختار، پر کردن تصادفی قبل از رمزگذاری وارد می شود. این تضمین می کند که محتوا در طیف وسیعی از متون ساده نا امن نمی افتد، و این که این پیام می تواند با انتخاب تصادفی حل نمی شود.

امنیت رمز RSA و رمزگذاری بر اساس دو مسائل ریاضی: مشکل از مقاطعه اعداد بزرگ و مشکل RSA واقعی. افشای کامل از متن رمزی و امضا در RSA نظر گرفته شده است قابل پذیرش نیست در این فرض که هر دو از این مشکلات نمی تواند جمعی حل و فصل شود.

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

اتوماسیون

ابزار، به نام Yafu، می توان برای بهینه سازی فرآیند. اتوماسیون در YAFU ویژگی های پیشرفته است که ترکیبی از الگوریتم فاکتور در روش فکری و تطبیقی که زمان برای پیدا کردن عوامل از اعداد ورودی دلخواه به حداقل می رساند. بسیاری از پیاده سازی الگوریتم اجازه می دهد Yafu استفاده کامل از چند و یا بسیاری از multi پردازنده های چند هسته (از جمله SNFS، SIQS و ECM). اول از همه، آن است که توسط ابزار خط فرمان کنترل می شود. ساعت را صرف جستجو برای عامل رمزگذاری Yafu با استفاده از یک کامپیوتر معمولی، آن را ممکن است به ثانیه 103.1746 کاهش می یابد. ابزار پردازش باینری ظرفیت 320 بیت یا بیشتر است. این یک نرم افزار بسیار پیچیده است که نیاز به یک مقدار مشخصی از مهارت های فنی به نصب و پیکربندی است. بنابراین، RSA-رمزگذاری ممکن است آسیب پذیر C.

هک در زمان های اخیر

در سال 2009، Bendzhamin Mudi با استفاده از کلید RSA-512 بیتی بر روی رمزگشایی kriptoteksta برای 73 روز کاری، با استفاده از نرم افزار تنها به خوبی شناخته شده است (GGNFS) و دسکتاپ متوسط (دو هسته ای Athlon64 می با سرعت 1900 مگاهرتز). همانطور که توسط تجربه نشان داده، مورد نیاز کمی کمتر از 5 گیگابایت دیسک و حدود 2.5 گیگابایت حافظه برای روند "الک."

در سال 2010، بیشترین تعداد درنظر گرفته شده بود RSA 768 بیت طول (232 رقم اعشار یا RSA-768). افشای خود را دو سال در چند صد کامپیوتر در یک بار به طول انجامید.

در عمل، کلیدهای RSA طولانی - به طور معمول 1024-4096 بیت است. برخی از کارشناسان معتقدند که کلیدهای 1024 بیتی ممکن است در آینده نزدیک غیر قابل اعتماد تبدیل و یا حتی دیگر می توان ترک خورده مهاجمان بسیار خوبی تامین می شود. با این حال، چند استدلال می کنند که کلید 4096 بیتی نیز ممکن است در آینده نزدیک فاش شود.

چشم انداز

بنابراین، به عنوان یک قاعده، فرض بر این است که RSA امن است اگر تعداد به اندازه کافی بزرگ هستند. اگر تعداد پایه 300 بیتی یا کوتاه تر، و امضای دیجیتالی متن رمزی می تواند در عرض چند ساعت بر روی یک کامپیوتر شخصی با استفاده از نرم افزار های موجود در حال حاضر در مالکیت عمومی تجزیه می شود. کلید طول 512 بیت، به عنوان نشان داده شده است، می تواند به عنوان اوایل به عنوان 1999 افتتاح شد، با استفاده از چند صد کامپیوتر. امروزه آن را در چند هفته با استفاده از یک سخت افزار در دسترس عموم امکان پذیر است. بنابراین، ممکن است که در buduschembudet به راحتی فاش RSA رمزگذاری بر روی انگشتان دست، و سیستم تبدیل خواهد شد به طرز ناامید کننده منسوخ شده است.

رسما در سال 2003، به سوال امنیتی کلید 1024 بیتی نامیده می شد. در حال حاضر، توصیه می شود که حداقل طول 2048 بیت است.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 fa.birmiss.com. Theme powered by WordPress.