تحليل امنيت rsa :
· امتحان كردن تك تك كليد ها اگر طول كليد بين 1024 تا 2048 باشد غير ممكن است.
· بهترين انتخاب اين است كه سعي كنيم تا n را به عواملش كه pوq باشند تجزيه كنيم وسپس d را بدست بياوريم.
· اين عمل تجزيه چقدر مشكل مي باشد؟كسي ميداند؟براي يك كليد 200 رقمي زمان اين تجزيه هزاران سال تخمين زده شده است.
· اما هيچ كس اثبات نكرده است كه نمي شود در زمان معقولي اين عمل را انجام داد.
· هر كسي كه بخواهد d را بدست بياورد بايد ابتدا j(n) را بدست آورد اما براي دانستن آن نيز نياز به دانستن pوq مي باشد.كه براي بدست آوردنشان بايد n را تجزيه كرد.كه اين كار يك تابع يك طرفه است آيا به خاطر داريد؟ما ميدانيم ضرب اعداد اول بزرگ مي تواند يك تابع يك طرفه باشد. ما نياز به چيز ساده اي براي تفهيم اين واقعيت داريم.
عيب هاي RSA :
· امروزه كليد هاي 512 بيتي ضعيف فرض مي شوند.كليد هاي 1024 بيتي تقريبا براي اكثر اهداف به اندازه ي كافي ايمن است.و كليد 2048 بيتي ميتواند تا براي دهه هاي آينده ايمن فرض شود.
· چيزي كه بايد گفته شود اين است كه rsa نسبت به حملات متن ساده ي انتخابي بسيار ضعيف عمل مي كند.اين روش نيز يكي از روش هاي جديد ووقت گير حمله است.كه مي تواند براي موارد مختلف rsa استفاده شود.الگوريتم rsa الگوريتمي مورد قبول و ايمن است اگر از آن به درستي استفاده شود.بايد به دقت از اين الگوريتم استفاده شود.
اعداد اول بزرگ:
پيدا كردن كليد بر اين اساس است كه ما بتوانيم دو عدد اول بزرگ را انتخاب كنيم.ما عدد اول خود را از مجموعه ي بي كراني از اعداد اول انتخاب مي كنيم.براي اثبات اين كه ما بي نهايت عدد اول داريم فرض ميكنيم كه تعداد محدودي عدد اول داريم.سپس تمام اين اعداد را در يك ليست مي نويسيم و در هم ضرب مي كنيم و يكي به آن اضافه مي كنيم. اين عدد بر هيچ كدام از اعداد واقع در ليست قابل قسمت نيست پس يا اول است يا بر عدد اولي بزرگ تر از اعداد درون ليست بخش پذير است. واين مهم نيست كه ليست ما چه اندازه باشد هميشه عدد ديگري يافت مي شود. كه اين خود ثابت مي كند بي نهايت عدد اول وجود دارد.پس ما عدد اول مان را از يك مجموعه ي بي كران انتخاب مي كنيم.
اعداد اول در چه حد بزرگ باشند؟
دو عدد اول pوq كه پيمانه را مي سازند بايد به طرز فجيعي بلند باشند.اين سبب مي شود كه پيمانه بسيار سخت تر از حالتي كه يكي از اعداد اول كوچك باشد تجزيه شود.به همين دليل اگر كسي از پيمانه 768 بيتي استفاده كرد اعداد اول هر كدام بايد طولي به طور تقريبي برابر 384 داشته باشند.اگر دو عدد اول خيلي نزديك هم باشند (در حد 100 تا 200 بيت اشكالي ايجاد نمي كند) يك ريسك امنيتي بالقوه ايجاد شده است.ولي احتمال اين كه اين دو عدد بسيار نزديك به هم باشند ناچيز است.
امضاي دجيتالي باRSA :
· براي اين كه الگوريتم كار كند داريم: DKPvt(EKPub(P))=P
· rsa اين قابليت را نيز دارد : DKPub (EKPvt (P))=P
وقتي كه متن را بتوان با KPvt رمز كرده و سپس با Kpub رمز گشايي كرد.اين به rsa اين امكان را مي دهد كه از امضا ها براي تائيد استفاده كند.وقتي كه يك بلاك از داده با كليد خصوصي رمز شده باشد.هر كسي مي تواند با كليد عمومي آن را باز كند و گيرنده مي تواند اعتبار فرستنده را از طريق امضاي او شناسايي كند.
موارد استفاده فعلي rsa :
RSA در حال حاضر در گستره ي گوناگوني از محصولات ، پلت فرم ها و صنايع در سراسر جهان مورد استفاده قرار مي گيريد.اين الگوريتم در نرم افزار هاي مختلف قالب ريزي شده و براي برنامه هاي زيادي نيز در دست ايجاد است.rsa توسط سيستم هاي عامل رايجِ ساخته شده توسط ميكروسافت،اپل،سان. ناول مورد استفاده قرار گرفته شده است.در سخت افزار نيز rsa در سيستم هاي ايمن تلفن ، بر روي كارت هاي اترنت شبكه و بر روي كارت هاي هوشمند بكار گرفته شده است.
همچنين rsa با تمام پروتكل هاي اصلي شبكه براي ايجاد ارتباط هاي اينترنتي ايمن تركيب شده است . به عنوان مثال S/MIME, SSL and S/WAN همچنين از آن در داخل بسياري از سازمان هاي حقوقي نيز استفاده شده است مثلا در دولت ايالات متحده،شركت هاي بزرگ،آزمايشگاه هاي ملي و دانشگاه ها.حق امتياز RSA را بيش از 350 شركت گرفته اند.همچنين تخمين زده مي شود كه ماشين هاي ايجاد شده بر مبناي RSA در حدود350 ميليون است.واين نشان مي دهد كه RSA به سرعت و متناسب با سرعت رشد اينترنت و وب گسترش ميابد.
Rsa چقدر سريع است؟
در مقام مقايسه ؛DES وديگر الگوريتم هاي متقارن بسيار سريع تر از rsa عمل مي كند.در نرم افزار DES معمولا 100 برابر سريع تر از RSA است.در سخت افزار نيز DES 1000 تا 10000 برابر سريع تر است.البته بستگي به نحوي اجرا دارد.در عمل rsa ممكن است تبديل به يك گلوگاه شود ولي DES به خوبي و با سرعت عمل مي نماي
علاقه مندی ها (بوک مارک ها)