تبلیغات
بانک مقالات emaster

Site Meter

 
بانک مقالات emaster
 
 
punto_vert.gif (43 byte)
[فناوری اطلاعات , ]

پنجشنبه 7 مهر 1384

 

الگوریتم RSA

 

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

 

الگوریتم RSA پس از آنکه ران ریوست (Ron Rivest)، آدام شامیر (Adam Shamir) و لن ادلمن (Len Adleman) در سال 1977 آنرا بدست آوردند به این نام مشهور شد، هرچند تکنیک های اولیه آن پیشتر در سال 1973 توسط فردی بنام کلیفورد کوکس (Clifford Cocks) بدست آمده بود اما تا سال 1977 اولا" الگورتیم کاملا" محرمانه بود و ثانیا" به سادگی آنچه در زیر بیان خواهیم کرد نبود.

 

تهیه کلید های عمومی و خصوصی

بطور خلاصه روش کار برای تهیه کلیدها به شرح زیر است :

 

1- دو عدد بزرگ (هر چه بزرگتر بهتر) اول به نام های p و q را انتخاب می کنیم، بهتر است این اعداد از لحاظ سایز نزدیک به یکدیگر باشند.

 

2- عدد دیگری بنام n را معادل با حاصلضرب p در q تعریف می کنیم : n = p x q

 

3- عدد چهارم یعنی m را معادل حاصلضرب p-1 در q-1 تعریف می کنیم : (m = (p-1) x (q-1

 

4- عدد e را که از m کوچکتر است آنگونه پیدا می کنیم که بزرگترین مقسوم علیه مشترک این دو یک باشد به عبارتی نسبت به هم اول باشند.

 

5- عددی مانند d را پیدا کنید که باقیمانده حاصلضرب d در e تقسیم بر m مساوی عدد 1 باشد، یعنی :  d x e) mod m = 1)

 

حال پس از طی این مراحل شما می توانید از e و n بعنوان کلید عمومی و از d و n بعنوان کلید اختصاصی استفاده کنید.

 

روش پنهان کردن و آشکار کردن

برای کد کردن اطلاعات کافی است عدد منتصب به هر کاراکتر - مثلا" ASCII - را که در اینجا M می نامیم در فرمول زیر قرار دهید و بجای ارسال آن عدد C = Me mod n را ارسال کنید. در واقع دراینجا شما توانسته اید با کمک کلید عمومی، کاراکتر M را به C تبدیل کنید.

 

حال گیرنده برای آشکار سازی کافی است عدد دریافتی یعنی C را با استفاده از کلید خصوصی به M تبدیل کند. برای اینکار کافی است از این فرمول استفاده کنید : M = Cd mod n ، بنابراین شما با دریافت کاراکتر کد شده C و در دست داشتن کلید خصوصی توانسته اید کاراکتر اصلی را مشخص نمایید.

 

حامد غفاری  « منبع: Ipnetsecurity.com  »

 

نوشته شده توسط میثم نظریانی در  پنجشنبه 7 مهر 1384  و ساعت 11:09 ق.ظ

ویرایش شده در -  و ساعت -

 نوشته شده توسط میثم نظریانی در  پنجشنبه 7 مهر 1384  و ساعت 11:09 ق.ظ  (نظر
   

http://emaster-src.mihanblog.com - All Rights Reserved

Copyright @  http://emaster-src.mihanblog.com Design By webir.mihanblog.com Powered by mihanblog.com
آمار سایت
امروز :

بازدید های امروز :

بازدید های دیروز :

كل مطالب :

كل نظرها :

كل بازدید ها :

افراد آنلاین : [online]

کپی رایت

طراح قالب:
http://webir.net.tf

punto_vert.gif (43 byte)
[[cb:blog_category_name]]

پنجشنبه 7 مهر 1384

 

الگوریتم RSA

 

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

 

الگوریتم RSA پس از آنکه ران ریوست (Ron Rivest)، آدام شامیر (Adam Shamir) و لن ادلمن (Len Adleman) در سال 1977 آنرا بدست آوردند به این نام مشهور شد، هرچند تکنیک های اولیه آن پیشتر در سال 1973 توسط فردی بنام کلیفورد کوکس (Clifford Cocks) بدست آمده بود اما تا سال 1977 اولا" الگورتیم کاملا" محرمانه بود و ثانیا" به سادگی آنچه در زیر بیان خواهیم کرد نبود.

 

تهیه کلید های عمومی و خصوصی

بطور خلاصه روش کار برای تهیه کلیدها به شرح زیر است :

 

1- دو عدد بزرگ (هر چه بزرگتر بهتر) اول به نام های p و q را انتخاب می کنیم، بهتر است این اعداد از لحاظ سایز نزدیک به یکدیگر باشند.

 

2- عدد دیگری بنام n را معادل با حاصلضرب p در q تعریف می کنیم : n = p x q

 

3- عدد چهارم یعنی m را معادل حاصلضرب p-1 در q-1 تعریف می کنیم : (m = (p-1) x (q-1

 

4- عدد e را که از m کوچکتر است آنگونه پیدا می کنیم که بزرگترین مقسوم علیه مشترک این دو یک باشد به عبارتی نسبت به هم اول باشند.

 

5- عددی مانند d را پیدا کنید که باقیمانده حاصلضرب d در e تقسیم بر m مساوی عدد 1 باشد، یعنی :  d x e) mod m = 1)

 

حال پس از طی این مراحل شما می توانید از e و n بعنوان کلید عمومی و از d و n بعنوان کلید اختصاصی استفاده کنید.

 

روش پنهان کردن و آشکار کردن

برای کد کردن اطلاعات کافی است عدد منتصب به هر کاراکتر - مثلا" ASCII - را که در اینجا M می نامیم در فرمول زیر قرار دهید و بجای ارسال آن عدد C = Me mod n را ارسال کنید. در واقع دراینجا شما توانسته اید با کمک کلید عمومی، کاراکتر M را به C تبدیل کنید.

 

حال گیرنده برای آشکار سازی کافی است عدد دریافتی یعنی C را با استفاده از کلید خصوصی به M تبدیل کند. برای اینکار کافی است از این فرمول استفاده کنید : M = Cd mod n ، بنابراین شما با دریافت کاراکتر کد شده C و در دست داشتن کلید خصوصی توانسته اید کاراکتر اصلی را مشخص نمایید.

 

حامد غفاری  « منبع: Ipnetsecurity.com  »

 

نوشته شده توسط میثم نظریانی در  پنجشنبه 7 مهر 1384  و ساعت 11:09 ق.ظ

ویرایش شده در -  و ساعت -

 نوشته شده توسط میثم نظریانی در  پنجشنبه 7 مهر 1384  و ساعت 11:09 ق.ظ  (نظر

 

 

مطالب پیشین...

 ? گزیده غزل های حکیم فیاض لاهیجی(۳)

 صفحات :

   

http://emaster-src.mihanblog.com - All Rights Reserved

Copyright @  http://emaster-src.mihanblog.com Design By webir.mihanblog.com Powered by mihanblog.com