PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : شاه كليد براي قفل گذاري در شبکه



Shαhαβ
08-06-2009, 12:02 AM
شاه كليد براي قفل گذاري
پيش از اين روش هاي متعارف رمزنگاري براي برقراري امنيت روي داده هاي ارسالي در شبكه ها صحبت كرديم. در روش هاي متعارف گاهي با استفاده از يك روش، شكل ظاهري داده ها را تغيير مي دهيم. زماني كه صرفا از يك روش استفاده شود، به محض لو رفتن روش، هر كسي مي تواند به متن اصلي دست يابد. به همين منظور در مراحل بعد، از يك كليد نيز به همراه روش رمزنگاري استفاده شد. در اين سبك رمزنگاري، روش، ثابت است و كليد مي تواند هر بار تغيير كند.
بنابراين تلاش براي محرمانه نگه داشتن كليد صورت مي گيرد و اگر روش رمز نگاري فاش شود، مي توان هنوز اميدوار بود كه متن داده هاي اصلي فاش نشود چون كليد فاش نشده است. اما به يك مساله بايد توجه شود. در اين روش ها، عمل رمزنگاري و رمز گشايي، با يك كليد صورت مي گيرد. يعني كسي كه مي خواهد متن رمز شده را بخواند، حتما بايد همان كليدي را كه متن با آن رمز نگاري شده است، در اختيار داشته باشد. بنابراين مبدا و مقصد بايد از قبل براي تعيين كليد با هم توافق كرده باشند. اما اگر اين توافق صورت نگرفته باشد، بايد كليد نيز به شكلي از طريق شبكه به مقصد ارسال شود كه اين كار، امنيت داده ها را به خطر مي اندازد. زيرا اگر نفوذ گر، به كليد در حال ارسال دسترسي پيدا كند، ديگر همه شرايط مهياست تا با سرقت داده هاي رمز شده، به اصل اطلاعات نيز دسترسي پيدا كند. اما آيا براي رفع اين مساله، راه حلي وجود دارد يا خير؟

كليد عمومي و خصوصي

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

فرض كنيد مبدا a قصد دارد براي مقصدb، داده هايي را به صورت محرمانه ارسال كند. براي اين كار، مقصدb در رايانه خود با توجه به روش هاي در نظر گرفته شده، دو كليد توليد مي كند. يكي از كليدها را كه به كليد عمومي معروف است از طريق شبكه در اختيار a يا ساير اعضاي شبكه قرار مي دهد. در اينجا اهميتي ندارد كه نفوذگر به اين كليد دسترسي پيدا كند. زيرا اين كليد در اختيار همه قرار مي گيرد. حال هر كس بخواهد براي b داده خود را به صورت محرمانه ارسال كند، آن را با كليد عمومي b قفل مي كند. اما داده رمزشده با كليد عمومي b نمي تواند مجددا با همان كليد باز شود. براي باز كردن آن به كليدي نياز است كه به كليد خصوصي معروف است و b آن را در زمان توليد كليد عمومي توليد كرده اما نزد خود نگه داشته است.

داده هاي رمز شده تنها با آن كليد قابل رمزگشايي خواهند بود. همان طور كه مشاهده مي شود كليد رمزگشايي در يك سيستم محفوظ مانده و اصلا وارد شبكه نشده است تا نفوذگر بتواند از طريق شنود خطوط، آن را سرقت كند. بنابراين اين روش بسيار توانمندتر از روش هاي متعارف رمزنگاري است.

شاه كليد

براي درك بهتر مساله سارقي را در نظر بگيريد كه با در اختيار داشتن شاه كليد، هر قفلي را مي تواند باز كند، يعني درهاي متعدد كه با كليدهاي خصوصي مختلف قفل شده اند، با كليد عمومي يا شاه كليد سارق باز مي شوند.
مساله مطرح شده رمزنگاري درست عكس اين مساله است. يعني از شاه كليد براي قفل كردن هر متني استفاده مي شود و تنها كسي مي تواند آن را باز كند كه كليد خصوصي را در اختيار داشته باشد.

براي يك نمونه واقعي، بانكي را در نظر بگيريد كه از طريق شبكه به مشتريان خدمات مي دهد. اگر قرار بود هر كس با استفاده از يك روش خاص خود، اطلاعات شخصي اش را براي بانك ارسال كند، آنگاه كار بانك مشكل و پيچيده بود. زيرا بايد هر داده را با كليد مخصوص خودش باز كند. اما با استفاده از روش كليد عمومي و خصوصي، يك كليد عمومي توسط بانك توليد شده و در اختيار همه مشتريان گذاشته مي شود. آنها نيز اطلاعات خصوصي خود را با آن رمزنگاري كرده و ارسال مي كنند. در مقصد نيز، بانك تنها با استفاده از يك كليد (كليد خصوصي خود) مي تواند همه داده هاي دريافتي را رمزگشايي كند.