ش | ی | د | س | چ | پ | ج |
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
در الگوریتمهای رمزنگاری متقارن در صورتی که کلید رمزنگاری به سرقت رود محرمانگی اطلاعات نیز از بین خواهد رفت.الگوریتمهای رمزنگاری با کلید نامتقارن از کلیدهای مختلفی برای رمزنگاری و رمزگشایی استفاده میکنند. فرستنده پیام، متن را با کلید عمومی گیرنده، کد میکند و گیرنده آن را با کلید اختصاصی خود رمزگشایی میکند. بعبارتی تنها با کلید خصوصی گیرنده میتوان متن کد شده را به متن اولیه صحیح تبدیل کرد. یعنی حتی فرستنده نیز اگرچه از محتوای اصلی پیام مطلع است اما نمی تواند از متن کدشده به متن اصلی دست یابد، بنابراین پیام کدشده برای هر گیرندهای، به جز گیرنده مورد نظر فرستنده، بی معنی خواهد بود.
معمول ترین سیستم نامتقارن به عنوان RSA شناخته میشود. (این حروف اول نام پدید آورندگان آن یعنی Rivest ،Shamir و Adlemen است) این الگوریتم در سال 1978 در دانشگاه MIT ایجاد شده است و تأیید هویت (روشی برای مطمئن شدن از هویت ارسال کننده پیغام) را به خوبی رمزنگاری انجام میدهد.
خیلی ساده بخوام توضیح بدم (e,n) کلید عمومیه و P حرفی که باید رمز بشه و رمز عبارت است از C=(P)^e mod nرمز گشایی با کلید خصوصی (d,n) به این صورت P=(C)^d mod n
روش به دست آوردن e,n,d
اول q و p دو عدد اول ترجیحا خیلی بزرگ
n=pq
z=(p-1)(q-1)
d را به گونه ای انتخاب کنید که نسبت به z اول باشد و e را به گونه ای که در رابطه زیر صدق کند
ed mod z=1
البته n>p>0
به همین راحتی اما خوب قابل کشفه و برای این باید کلید عمومی در پریودهای زمانی عوض شود اما در هر صورت کد های قبلی فاش میشوند