آراسای
از ویکیپدیا، دانشنامهٔ آزاد
در بحث رمزنگاری، آراساِی (RSA) شیوهای برای رمزنگاری به روش کلید عمومی (Public Key) است. این روش نخستین روش مورد اعتماد در بین روش های رمزنگاری دیگر است و یکی از بزرگترین پیشرفت ها در زمینه ی رمزنگاری به حساب میآید. آراسای همچنان به صورت وسیعی در تبادلات الکترونیکی استفاده میشود و در صورت استفاده درست با کلید های طولانی کاملاً امن به نظر میرسد.
فهرست مندرجات |
[ویرایش] تاریخچه
این روش نخستین بار در سال ۱۹۷۷ توسط رونالد ریوست، آدی شامیر و لئونارد آدلمن در دانشگاه ام آی تی مطرح شد. اصطلاح آراسآ نیز از حروف ابتدای نام آنها گرفته شده است. دانشگاه امآیتی حق اختراع[۱] این روش را به نام خود ثبت کرد. این حق اختراع در ۲۱ سپتامبر سال ۲۰۰۰ میلادی منقضی شد.
[ویرایش] توضیحات کارکرد
[ویرایش] کلیات
آراسای به طور کلی از دو کلید تشکیل میشود. کلید عمومی و کلید خصوصی. کلید عددی ثابت است که در محاسبات رمزنگاری استفاده میشود. کلید عمومی برای همه معلوم بوده و برای رمز کردن پیام استفاده میشود. این پیام فقط توسط کلید خصوصی باز میشود. به عبارتی دیگر همه میتوانند یک پیام را رمز کنند اما فقط صاحب کلید خصوصی میتواند پیام را باز کند و بخواند.
[ویرایش] تولید کلید
مراحل زیر برای تولید کلید طی میشود:
- دو عدد اول بزرگ p و q را به صورت تصادفی بیابید به طوری که
. - عدد n را محاسبه کنید به طوری که n = pq.
- تابع فی را محاسبه کنید به طوری که

- عدد e را انتخاب کنید به طوری که
و نسبت به
اول باشد.
- عدد e به عنوان توان کلید عمومی منتشر میشود.
- عدد d را طوری بیابید که
(باقیمانده ضرب دو عدد d و e نسبت به
برابر ۱ باشد، به صورت:
به ازای kهای طبیعی)
- عدد d به عنوان توان کلید خصوصی محافظت میشود.
- دو عدد اول میتوانند توسط روش پیدا کردن اعداد اول احتمالی پیدا شوند.
- معمولاً عدد عمومی (e) را در حدود ۲۱۶ انتخاب میکنند. البته بعضی برنامه اعداد کوچکی را انتخاب میکنند که باعث سریعتر شدن و البته خطرات امنیتی در رمزنگاری میشود.
- کلید عمومی تشکیل میشود از :
- عدد n (عدد مشترک)
- عدد e (عدد عمومی)
- کلید خصوصی تشکیل میشود از :
- عدد n (عدد مشترک)
- عدد d (عدد خصوصی)
- کلید خصوصی به صورتهای دیگری غیر از d ممکن است نگداری شود.
و
: اعداد اول برای ساختن کلید.
و
,
.
- در تمام مراحل باید اجزای کلید خصوصی سری نگه داشته شود، دو عدد p و q اگر به عنوان صورتی از کلید خصوصی نگهداری نشود بهتر است به شیوهای امن نابود شوند. زیرا با این دو عدد تمام اعداد n و e، d قابل محاسبه خواهند بود.
[ویرایش] رمز کردن پیام
فرض کنید می خواهید پیامی را رمزنگاری کرده و به فردی دیگر بفرستید. شما می بایست کلید عمومی آن فرد را از او دریافت کرده و پیام خود را در قالب یک عدد (m) در بیاورید به طوری که این فرآیند برگشت پذیر بوده و عدد شما از n کوچکتر باشد. بدیهی است اگر پیام بزرگتر حد معمول باشد آن را در بستههای جداگانه می فرستیم. شما اکنون عدد C را محاسبه می کنید به طوری که
حال اگر پیام رمزنگاری شده ی C را برای فرد مذکور بفرستید او میتواند توسط کلید خصوصی اش آن را باز کند.
[ویرایش] باز کردن پیام
فرض کنید شما پیام رمز نگاری شده ی C را دریافت کرده اید و کلید خصوصی خود را در دسترس دارید. حال شما میتوانید عدد m را که معادل پیام اصلی است از C,n,d بازیابی کنید. 
[ویرایش] پانویس
- ↑ (Patent)
[ویرایش] منابع
- R. Rivest, A. Shamir, L. Adleman. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Communications of the ACM, Vol. 21 (2), pp.120–126. 1978. Previously released as an MIT "Technical Memo" in April 1977. انتشار اولیه روش رمز نگاری آر اس ای.
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN 0-262-03293-7. Section 31.7: The RSA public-key cryptosystem, pp.881–887.

