Posted on: ژانویه 18, 2019 Posted by: 92 Comments: 0

الگوریتم کليد نامتقارن:/پایان نامه درباره امضای الکترونیکی

الگوریتم کليد نامتقارن

در ابتدا رمزنگاری کلید نامتقارن[1]، با هدف حل مشکل انتقال کلید در روش متقارن ابداع گردید و در قالب پروتکل تبادل کلید دیفی-هلمن پیشنهاد شد. در این نوع از رمزنگاری، به جای یک کلید مشترک، از یک زوج کلید به نام‌های کلید عمومی [2]و کلید خصوصی[3]  استفاده می‌شود. کلید خصوصی تنها در اختیار دارنده آن قرار دارد و امنیت رمزنگاری به محرمانه بودن کلید خصوصی بستگی دارد. کلید عمومی در اختیار کلیه کسانی که با دارنده آن در ارتباط هستند قرار داده می‌شود. این دو کلید به لحاظ فنی مکمل و در عین حال متناظر با یکدیگر هستند؛ به این معنا که اگر پیامی با کلید عمومی رمزنگاری شود، رمزگشایی آن تنها با کلید خصوصی مرتبط با آن امکانپذیر است و برعکس، در صورت رمزنگاری پیام با کلید خصوصی، رمزگشایی صرفا با کلید عمومی آن ممکن است. بنابراین این دو کلید در عین حال که با هم متفاوت هستند، تکمیل کننده ی یکدیگر نیز هستند. عموما از كليد عمومي براي رمزگذاري اطلاعات استفاده مي‌شود. طرفي كه قصد انتقال اطلاعات را به صورت رمزگذاري شده دارد اطلاعات را رمزگذاري كرده و براي طرفي كه مالك اين جفت كليد است ارسال می کند. مالك كليد، كليد خصوصي را پيش خود به صورت محرمانه حفظ مي‌‌كند. در اين دسته، کليد هاي رمزنگاري و رمزگشايي متمايزند و يا اينکه چنان رابطه پيچيده اي بين آنها حکم فرماست که کشف کليد رمزگشايي با در اختيار داشتن کليد رمزنگاري، عملا ناممکن است، به عبارت بهتر می توان گفت دو کلید عمومی و خصوصی با یکدیگر متفاوت هستند و با استفاده از روابط خاص ریاضی محاسبه می‌گردند. رابطه ریاضی بین این دو کلید به گونه‌ای است که کشف کلید خصوصی با در اختیار داشتن کلید عمومی، عملاً ناممکن است.

مطابق منابع رمزنگاری سيستمهاي کليد نامتقارن از کليدهای مختلفي براي رمزنگاري و رمزگشايي استفاده مي‌کنند. سيستمها اجازه مي‌دهند که يک جزء (کليد عمومي يا public key) منتشر شود در حاليکه جزء ديگري (کليد اختصاصي يا private key) توسط صاحبش حفظ شود. فرستنده پيام، متن را با کليد عمومي گيرنده کد مي‌کند و گيرنده آن را با کليد اختصاصي خودش رمزگشایی ميکند. بعبارتي تنها با کليد اختصاصي گيرنده مي‌توان متن کد شده را به متن اوليه صحيح تبديل کرد. يعني حتي فرستنده نيز اگرچه از محتواي اصلي پيام مطلع است اما نمي‌تواند از متن کدشده به متن اصلي دست يابد، بنابراين پيام کدشده براي هرگيرنده‌اي بجز گيرنده مورد نظر فرستنده بي‌معني خواهد بود. معمولترين سيستم نامتقارن بعنوان [4]RSA‌ شناخته مي‌شود. هرچند که چندين طرح ديگر نیز وجود دارد.[5]

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

 

[1] Asymmetric

[2] Public key

[3] Private key

[4] (این نامگذاری براساس حروف اول نام پديدآورندگان آن يعني Rivest ، Shamir و Adlemen است).

[5] مي‌توان از يک سيستم نامتقارن براي نشاندادن اينکه فرستنده پيام همان شخصي است که ادعا مي‌کند استفاده کرد که اين عمل اصطلاحا امضاء نام دارد. RSA شامل دو تبديل است که هرکدام احتياج به بتوان‌رساني ماجولار با توانهاي خيلي طولاني دارد:

امضاء، متن اصلي را با استفاده از کليد اختصاصي رمز مي‌کند؛ رمزگشايي عمليات مشابه‌اي روي متن رمزشده اما با استفاده از کليد عمومي است. براي تاييد امضاء بررسي مي‌کنيم که آيا اين نتيجه با ديتاي اوليه يکسان است؛ اگر اينگونه است، امضاء توسط کليد اختصاصي متناظر رمزشده است.

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

اساس سيستم RSA اين فرمول است: X = Yk (mod r)

که X متن کد شده، Y متن اصلي، k کليد اختصاصي و r حاصلضرب دو عدد اوليه بزرگ است که با دقت انتخاب شده‌اند. براي اطلاع از جزئيات بيشتر مي‌توان به مراجعي که در اين زمينه وجود دارد رجوع کرد. اين شکل محاسبات روي پردازنده‌هاي بايتي بخصوص روي ۸ بيتي‌ها که در کارتهاي هوشمند استفاده مي‌شود بسيار کند است. بنابراين، اگرچه RSA هم تصديق هويت و هم رمزنگاري را ممکن مي‌سازد، در اصل براي تاييد هويت منبع پيام از اين الگوريتم در کارتهاي هوشمند استفاده مي‌شود و براي نشاندادن عدم تغيير پيام در طول ارسال و رمزنگاري کليدهاي آتي استفاده مي‌شود.

ساير سيستمهاي کليد نامتقارن شامل سيستمهاي لگاريتم گسسته مي‌شوند مانند Diffie-Hellman، ElGamal و ساير طرحهاي چندجمله‌اي و منحني‌هاي بيضوي. بسياري از اين طرحها عملکردهاي يک‌ـ‌طرفه‌اي دارند که اجازه تاييدهويت را مي‌دهند اما رمزنگاري ندارند. يک رقيب جديدتر الگوريتم RPK‌ است که از يک توليدکننده مرکب براي تنظيم ترکيبي از کليدها با مشخصات مورد نياز استفاده مي‌کند. RPK يک پروسه دو مرحله‌اي است: بعد از فاز آماده‌سازي در رمزنگاري و رمزگشايي (براي يک طرح کليد عمومي) رشته‌هايي از ديتا بطور استثنايي کاراست و مي‌تواند براحتي در سخت‌افزارهاي رايج پياده‌سازي شود. بنابراين بخوبي با رمزنگاري و تصديق‌هويت در ارتباطات سازگار است.

طولهاي کليدها براي اين طرحهاي جايگزين بسيار کوتاهتر از کليدهاي مورد استفاده در RSA‌ است که آنها براي استفاده در چيپ‌کارتها مناسب‌تر است. اما ‌RSA‌ محکي براي ارزيابي ساير الگوريتمها باقي مانده است؛ حضور و بقاي نزديک به سه‌دهه از اين الگوريتم، تضميني در برابر ضعفهاي عمده بشمار مي‌رود.

 

[6]  مظاهری ، رسول؛ ناظم،علیرضا، مطالعه تطبیقی امضای الکترونیکی در حقوق ایران و مقررات آنسیترال، انتشارات جنگل ، سال 1393، ص 58

لینک جزییات بیشتر و دانلود این پایان نامه:

مطالعه تطبیقی امضای الکترونیکیدر حقوق ایران با سیستم های حقوقی کامن لا و رومی – ژرمنی

Categories: