امضای دیجتال چیست
ما اکنون در حال سپري کردن عصر اطلاعات هستیم. تعداد افراد و تجارت هایی که هر روز به اینترنت ملحق می شوند به طور بی سابقه اي در حال رشد است. هر روز دسترسی به اینترنت آسان تر و سرعت آن سریع تر می شود وقیمت آن ارزانتر می شود. بسیاري از افراد میزان زیادي از وقت خود را بر روي اینترنت به تبادل اطلاعات و همچنین به تبادلات مالی می پردازند. اینترنت یک شبکه اطلاعاتی باز است. هر کسی می تواند از اینترنت استفاده کند و امکان دارد که از آن براي استخراج اطلاعات از مناطق آسیب پذیر، براي مقاصد سودجویانه و غیر قانونی استفاده کند. در جهان امروز مدیریت اسناد الکترونیکی و ارسال و دریافت اطلاعات الکترونیکی بخش بزرگی از تبلیغات و فعالیت هاي اجرایی را شامل میشود. هنوز انتظار می رود که استفاده از اطلاعات مبتنی بر کامپیوتر در سطح جهان به طرز قابل توجهی در حال گسترش باشد. یکی از تکنولوژیهایی که موجب افزایش اعتماد گردیده، امضاي دیجیتالی می باشد. این تکنیک مبتنی بر رمزنگاري باعث به رسمیت شناسی اطلاعات الکترونیکی می شود به طوري که هویت پدیدآورنده سند و جامعیت اطلاعات آن، قابل بازبینی و کنترل میباشد.
اجراي تجارت وبانکداري الکترونيک مستلزم بسترهاي مختلفي ازجمله بسترهاي نرم افزاري است. وابسته نبودن برنامه هاي تحت وب وقابل اجرا بودن آن دراينترنت درتمام نقاط موجب كاهش هزينه هاي سربارناشي ازمجازي سازي سيستمها است.رونق برنامه هاي سرويس دهنده وسرويس گيرنده وهمچنين گسترش بانک هاي اطلاعاتي قدرتمند درسرويس دهنده ها باتواناييي كپارچه سازي وبه كارگيري روش هاي رمزنگاري پيشرفته وهمچنين استفاده پروتكل هاي امن وفايروال ها جهت امنيت اطلاعات وقابليت هاي تهيه پشتيبان خودکارازاطلاعات،موجب آسودگي مشتريان وبانکداران شده است . شركت هاي بزرگ نرمافزاري بيش ازپيش به مقوله امنيت درتوليد سيستم هاي عامل وبرنامه هاي تحت وب انديشيده اند،به طوري كه در قرن۲۱به جاي افزايش كمّي نرم افزارها ارتقاي كيفي مدّنظرقراربوده است . آنچه كه درسال هاي اخيرموردتوجه توليدكنندگان نرم افزارهاي تجارت وبانكداري الكترونيك قرار گرفته، رعايت استانداردهاي بين المللي است، به طوري كه بتوان نرم افزارها را با كمترين هزينه هاي سرما يه گذاري توسعه داد و يا اينكه قابليتهاي تعاملي دوسويه و يا چند سويه را با ساير سيستمهاي اطلاعاتي فراهم نمود . طرح و استفاده از استانداردهاي عمومي از زمينه هاي مهم جهاني شدن كسب و كارها است و در عملكرد سيست مبانكداري ايران اين نگرش در حركت آغازين طرحهاي جامع مكانيزاسيون تعامل و يكپارچه سازي در معماري سيستم هاي اطلاعاتي كمتر مورد توجه قرار گرفته و در اكثر حالات بانكها به رغم دولتي بودن مانند جزايري جدا از هم در جهت بهبود و توسعه سيستم هاي بانكداري الكترونيك خود كوشيده اند . ضروري است جهت هماهنگي نظام مند و تدوين و اجراي سياستهاي يكپارچه سازي استانداردهاي اطلاعات بانكي يك اتاق مشترك بين بانكي فعال جهت انجام اين مهم ايجاد شود.
در حال حاضر از امضای دیجیتال در کشورهای دیگر چه استفاده هایی می شود؟
در حال حاضر در دنیا در کشورهای متعددی از امضای دیجیتال در کاربردهای گوناگون استفاده می شود از صدور یک ایمیل گرفته تا نقل و انتقالات مالی و امضای اسناد تعهد آور. بنابراین حوزه کاربرد آن گسترده است. تاکنون مقتضیات قانونی آن در بیشتر نظام های حقوقی فراهم آمده است این موضوع تا حدی است که در برخی از کشورهای مثل آلمان قانون امضای دیجیتال به تصویب رسیده است.
طرح امضاي دیجیتال معمولاً سه الگوریتم را شامل میشود:
1-الگوریتم تولید کلید را که کلید خصوصی را بطور یکسان و تصادفی از مجموعه کلیدهاي ممکن انتخاب میکند.خروجی هاي این الگوریتم کلید خصوصی و کلید عمومی مطابق با آن است.
2- الگوریتم امضا که توسط آن با استفاده از کلید خصوصی و پیام امضا شکل میگیرد.
3- الگوریتمی که با استفاده از پیام دریافتی و کلید عمومی صحت امضا را بررسی میکند و با مطابقتی که انجام می دهد یا امضا را می پذیرد یا آن را رد میکند.
دو ویژگی اصلی که در امضاي دیجیتال مورد نیاز است:
اول , امضاي تولید شده از پیام مشخص و ثابت هنگامی که توسط کلید عمومی مورد بررسی قرار می گیرد فقط در مورد همان پیام ارسالی میتواند عمل تطبیق را صورت دهد و در مورد هر پیام متفاوت و خاص می باشد.
ثانیا،امضاي دیجیتال می بایست قابلیت اجرا توسط الگوریتم را داشته باشد و بتواند فایل امضاي معتبر براي مهمانی که کلید خصوصی را دارا نمی باشد ایجاد نماید.
تاریخچه بر اساس اسناد معتبر "دیدگاههاي جدید در رمزنگاري" در سال 1976 توسط ویتفید دیفیه و مارتین هلمن براي تشریح ایده هاي اولیه طرح فایل امضاي دیجیتال ارائه شد. البته به نظر می رسد طرح هاي اولیه دیگري نیز در آن زمان وجود داشته است. مدت کوتاهی پس از آن جمع دیگري از محققین به نام هاي ریوست ، شمیر وآدلمن ، الگوریتم آر اس اي را ابداع کردند که می توانست براي تولید امضاي دیجیتال اولیه به کار رود .
اول بسته نرم افزاري امضاي دیجیتال با عنوان لوتوس نت در سال 1989 بر مبناي همین الگوریتم به بازار عرضه شد. در سال 1984 میشلی ،گلدواسر و ریوست با تمام دقت موارد مورد نیاز را براي برقراري امنیت در طرح امضاي دیجیتال بررسی کردند. آنها با بررسی مدل هاي مختلف حمله براي امضاي دیجیتال توانستند طرح فایل امضاي دیجیتال جی ام آر را ارائه کنند که می تواند در مقابل حمله به پیام و جعلی بودن آن مقاومت کند.
طرح هاي ابتدایی امضاي دیجیتال مشابه همدیگر بودند:
آنها از جایگشت(تبدیل) دریچه اي استفاده می کردند، مانند تابع آر اس اي و یا در برخی موارد از طرح امضاي رابین بهره می گرفتند. جایگشت دریچه اي نوعی از مجموعه جایگشت هاست که به وسیله پارامترها مشخص می شود که در محاسبه هاي رو به جلو سریع عمل میکند ولی در محاسبه هاي بازگشتی با مشکل مواجه می شود. با این وجود براي هر پارامتر یک دریچه وجود دارد که حتی محاسبه هاي بازگشتی را آسان می کند. جایگشت هاي دریچه اي می توانند مانند سیستم هاي رمزگذاري با کلید عمومی باشند. در جایی که پارامتر به عنوان کلید عمومی و جایگشت دریچه اي به عنوان کلید پنهان است رمزگذاري مانند محاسبه جایگشت در جهت رو به جلوست و رمز گشایی مانند محاسبه در جهت معکوس است. همچنین جایگشت هاي دریچه اي می توانند مانند طرح فایل امضا دیجیتال باشند، به این صورت که محاسبه در جهت معکوس با کلید پنهان مانند امضا کردن است و محاسبه در جهت پیش رو مانند بررسی صحت امضاست. به دلیل این همخوانی امضاهاي دیجیتال اغلب بر پایه سامانه رمزنگاري با کلید عمومی تشریح می شوند اما این تنها روش پیاده سازي امضاي دیجیتال نیست. ولی این نوع طرح امضاي دیجیتال در برابر حملات آسیب پذیر است و شخص مهاجم می تواند با دست کاري در روش بررسی صحت امضا، یک امضاي دیجیتال جعلیبراي خود ساخته و شبکه را با مشکل مواجه سازد. هرچند این نوع امضا به شکل مستقیم به کار گرفته نمی شود ولی ترجیحا ابتدا پیام را با استفاده از روش هاي درهم سازي خلاصه میکنند و سپس خلاصه پیام را امضا می کنند و در نتیجه استفاده از همین ترفند شخص مهاجم فقط میتواند یک امضاي دیجیتال جعلی براي خود درست کند که این امضا با محتویات مربوط به خروجی تابع درهم سازي از پیام خلاصه شده تطابق ندارد و شخص مهاجم نمی تواند به محتویات پیام خدشه اي وارد کند.
همچنین دلایل متنوعی وجود دارد تا افرادي که می خواهند از امضاي دیجیتال استفاده کنند از خلاصه پیام و خروجی تابع درهم سازي براي امضا استفاده کنند. اولین دلیل ایجاد بازدهی مناسب براي طرح امضاي دیجیتال است زیرا فایل امضا خیلی کوتاه تر خواهد بود و در نتیجه زمان کمتري صرف می شود. دومین دلیل براي سازگاري بیشتر است زیرا با استفاده از تابع درهم سازي شما می توانید خروجی مطابق با نوع الگوریتمی که به کار گرفته اید داشته باشید. سومین دلیل براي درستی اجراي امضاي دیجیتال است : بدون استفاده از تابع درهم سازي ممکن است پیام شما در هنگام امضا به دلیل مشکل فضا به بخشهاي مختلف تقسیم شود و شخص دریافت کننده نتواند به درستی منظور فرستنده را دریافت کند بنابراین از این تابع استفاده می کند تا خود پیام را به شکل خلاصه و بدون ایجاد مشکل ارسال کند. نظریه هاي امنیتی در تحقیقات میشلی، گلدواسر و ریوست مراتب متفاوت حمله به امضاهاي دیجیتال را براي ایجاد دیوار دفاعی مناسب بررسی کردند و نتایج زیر به دست آمد:
1- در حمله کلید یگانه، مهاجم فقط روند بررسی و تایید کلید عمومی را بدست میآورد و از این طریق سامانه را مورد تهاجم قرار میدهد.
2- در حمله با پیام آشکار، مهاجم یک کلید کارآمد براي مجموعهاي از پیامهاي آشکار و مشخص در اختیار دارد و فقط با استفاده از پیام مشخص می تواند حمله کند و توانایی انتخاب پیام براي مورد حمله قرار دادن نخواهد داشت.
3- در انطباق پیام انتخاب شده، مهاجم ابتدا امضا را بر روي یک پیام دلخواه که مورد انتخاب مهاجم است یاد می گیرد و از آن امضا استفاده می کند. در ادامه مراحل نتایج حمله به سامانه امضاي دیجیتال از طریق روشهاي مذکور مطرح می شود:
- در مرحله اول امکان ترمیم و استفاده مجدد از امضاي دیجیتال را از بین خواهد برد.
- توانایی جعل امضا در یک سطح گسترده از دیگر نتایج حمله به امضاي دیجیتال است. در این مرحله شخص مهاجم توانایی جعل امضا براي هر پیامی را به دست خواهدآورد.
- جعل در مورد پیامهاي انتخابی؛ در این مورد مهاجم میتواند جعل امضا را در مورد پیام انتخابی خود انجام دهد.
- در این مورد از نتایج حمله به امضاي دیجیتال شخص مهاجم فقط می تواند از طریق امضاي در دسترس خود و برخی پیامها به محتویات آنها دست پیدا کند و دیگر شخص مهاجم توانایی انتخاب ندارد و انتخاب هاي او محدودمی شود.
روش توليد امضای دیجیتالی
- امضاهای دیجیتالی مبتنی بر چکیده پیام: در این روش متن پیام دست نخورده باقی می ماند و تنها یک امضای چند بایتی به آن اضافه می شود.
- امضاهای دیجیتالی کلید متقارن: این امضاها مبتنی بر یک مرکز گواهی امضا هستند.
- امضاهای مبتنی بر روش های رمز نگاری کلید عمومی
- امضاهای مبتنی بر تبدیل های مستقل از سیستم های رمز نگاری
امنیت
درخرده فروشي سنتي،خريداران ريسك استفاده ازكارت هاي اعتباري خود را درفروشگاههاي معمولي ميپذيرند زيرا آنها مي توانند كالاي مورد معامله را ببينند ولمس كنند وراجع به فروشگاه درنزد خود داوري كنند.امادراينترنت بدون آن نشانه هاي فيزيكي، براي خريداران خيلي مشكلتر است تا امنيت سيستم تجاري شما را تشخيص دهند.همچنين دراينترنت خطرات امنيتي مهمي نيزخود نمايي ميكنند.
كلاهبرداري- هزينه پايين ساخت يك وبسايت وسادگي كپي كردن صفحات موجود به روي سايت،به سادگي امكان ساخت سايت هاي غيرقانوني را كه به نظرتوسط يك شركت ثبت شده ومعتبرهدايت ميشوند،ايجادميکند.درحقيقت هنرمندان جنايتكاربصورت نامشروع اطلاعات كارت هاي اعتباري ديگران را بوسيله ايجاد وبسايت هاي به نظرحرفه اي كه ازشركت هاي قانوني تقليدكرده اند بدست مي آورند.
افشاي غيرمجازوقتي تراكنش معامله بصورتبازوبدون امنيت وكدگذاري مناسب به اينترنت ارسال ميشود،هكرها خواهند توانست اين تراكنش راجهت بدست آوردن اطلاعات حساس مشتريان ازجمله اطلاعات شخصي ويا شماره هاي كارت اعتباری استراق سمع كنند.
سیر پیشرفت فناوری اطلاعات و ارتباطات و نوآوری های حاصل از آن موجب افزایش چشمگیر بهره وری و پیدایش انواع جدیدی از کالاها و خدمات شده است اما فراهم شدن امکانات فنی جدید تنها باعث پیدایش محصولات نوین و را ه های بهتر و کارامدتر برای انجام امور نشده بلکه در کنار آن امکان سوء استفاده از فناوری را نیز افزایش داده است.
حجم خرابکاری در کسب و کارهای الکترونیکی در سال های اخیر به قدری افزایش یافته است که مقوله امنیت از یک موضوع حاشیه ای و فرعی به یک موضوع زیر ساختی و سپس به موضوعی که در پیش زمینه تمامی مسائل دیگر قرار دارد بدل شده است.
در یک تعریف ساده، امنیت اطلاعات یعنی حفاظت اطلاعات و سیستم های اطلاعاتی از فعالیت های غیرمجاز. این فعالیت های غیر مجاز عبارتند از دسترسی، استفاده، افشا،خواندن، نسخه برداری یا ضبط، خراب کردن، تغییر و دستکاری.
دستكاري غيرمجاز يك رقيب يا يك مشتري ناراضي ممكن است بتواند وب سايت شما را تغييردهد،بنابراين باعث ازكارافتادن سرويس دهي بهمشتريان بالقوه سایت شما می گردد.
تغييراطلاعات - محتويات يك تراكنش نه تنها ممكن است مورد استراق سمع واقع شود بلكه ممكن است درمسيرنقل و انتقال تغييرنمايدچه بصورت كينه جويانه چه بطور اتفاقي اسامي كاربران،شماره هاي كارت هاي اعتباري، وميزان پرداخت هاكه بدون امنيت لازم و كدگذاري مناسب ارسال شده باشند همه آمادگي پذيرفتن چنين تغييراتي را دارند.
شرکت Yankee Group مستقر در بوستون امريكا در نتيجه نظرسنجي از 700 نفر كه متخصص در زمينه امنيت بودند متوجه شد كه 55 درصد تجاوزها به اطلاعات شبكه ، توسط افراد داخل شركت بوده و در مقابل تنها 25 درصد تجاوزها توسط افراد خارج سازمان گزارش شده است.
شركت ها بايد كامپيوترهاي سرويس دهنده وب تجارت الكترونيك خود را در مقابل دسترسي غيرمجاز ايمن سازند و بايد توجه كرد كه دسترسي غيرمجاز ممكن است از طريق اينترنت باشد يا از طريق داخل شركت.
حفاظت درمقابل تخريب كامپيوتر سرويس دهنده وب:
صفحه اولیه (HOME PAGE) سايت شركت،تصويرآن شركت درمقابل دنيااست .براي خيلي ها صفحه اولي سايت یعنی شركت. متجاوزان بادستكاري اين صفحه شركتها راتخريب ميکنند.
نقطه آغاز فعاليتهاي غيرقانوني :براي شركت هاي كوچك و متوسط كه درگير رقابت بازار نيستند احتمال اين كه خرابكاران به فكرحمله به آنها بيفتند خيلي كم است .چنانچه سيستمهاي متصل به اينترنت ازلحاظ امنيتي براي متجاوزان ضعيف باشد متجاوزان ميتوانند اين سايت ها رابه عنوان محل ذخيره اطلاعات سرقتي انتخاب كرده وتبديل به نقطه آغازحمله به سايت هاي باارزش ديگركنند.
جلوگيري ازارائه خدمات : نوع ديگرحمله اقدام به تعطيلي يك كامپيوتر سرويس دهنده به وسيله مواجه ساختن آن با انبوه درخواست هاست كه در واقع پيشگيري از آن نسبتا دشوار است.
انواع فناوري حفاظت و ايمني
مطلوبترين فن آوري هاي امنيتي عبارتند از :
1- مسیر یاب (Routers)
2- دیواره های آتش (Internet Firewalls)
3- سیستم های کشف تجاوز (Intrusion Detection System)
4- رمزنگاری امضاء دیجیتالی ((Public Key Infrastructure PKI
5- شناسایی (Authentication)
6- رمزنگاری (Encryption)
مدیریت کلید
یک سیستم امن شامل اجزا و قسمت هایی همچون الگوریتم رمزنگاری، پروتکل های قرارداری و ... می باشد. با فرض اینکه تمامی این اجزا قابلیت اطمینان لازم و کافی را داشته باشند هنوز یک مسئله باقی است و آن کلیدهای بکار رفته در مبادلات صورت گرفته است.
با توجه به اینکه در صورت غیر قابل شکست بودن الگوریتم های رمزنگاری و پروتکل های مورد استفاده به کارگیری کلیدهای ضعیف و یا استفاده نامناسب از کلیدهای مورد نیاز می تواند نقاط ضعف بسیاری را برای تحلیل امنیت باقی بگذارد.
در دنیای واقعی مدیریت کلید سخت ترین قسمت رمزنگاری محسوب می شود طراحی الگوریتم های رمزنگاری امن ساده نیست اما با تکیه بر تحقیقات آکادمیک بسیار می توان به نتایج قابل اطمینانی رسید. اما از آنجا که امنیت تمامی ارتباطات باید تنها با کلیدهای بکار رفته داشته باشد نگاه داشتن سری کلیدها بسیار سخت تر خواهد بود. بطوریکه بسیاری از تحلیل گرها و رمز شکن ها به سیستم های رمز کلیدهمگانی و الگوریتم های متقارن از طریق مدیریت کلید نقش بسزایی در امنیت تبادل ها دارد.
مواردی که در یک پروسه مدیریت کلید باید در نظر گرفته شود قسمت های مختلفی را شامل می شود که هرکدام می تواند معیارهایی برای اجرای یک روند مناسب در اختیار بگذارند.
تولید کلید
تولید کلید روند تولید کلیدها برای رمز نگاری است . یک کلید رمزنگاری را انجام میدهد و یک کلید رمزگشایی میکند. سیستمهای رمزنگاری جدید، سیستم رمزنگاری متقارن مانند الگوریتمهای DES و AES و سیستم رمزنگاری با کلید عمومی مانند الگوریتم آر اس اِی را شامل میشوند.
الگوریتمهای متقارن از یک کلید به اشتراک گذاشته شده استفاده میکنند و الگوریتمهای کلید عمومی از کلید عمومی و کلید خصوصی بهره میگیرند که کلید عمومی دسترسی عمومی دارد و وقتی فرستنده دادهها را با کلید عمومی رمزگذاری میکند، گیرنده تنها با داشتن کلید خصوصی میتواند دادهها را رمزگشایی کند.
الگوریتم تولید کلید می بایست شرایط مناسبی را برقرار نمایدتا کلیدهای ضعیف تولید نشود. بر همین مبنا روند تولید کلیدها باید به گونه ای باشد که فضای کلید کاهش یافته به وجود نیاید و از تمامی بیت های کلید در نظر گرفته شده استفاده شود. به طور مثال اگر الگوریتمی از یک کلید 56 بیتی استفاده می نماید و برنامه ای برای تولید کلیدها از قالب ASCII استفاده نماید به طور طبیعی بیت مرتبه بالاتر هر بایت صفر در نظر گرفته می شود که موجب کاهش فضای کلید و در نتیجه امکان تحلیل رمز مورد استفاده شاید تا هزاران بار سریعتر می گردد.
همچنین انتخاب کلیدهای ضعیف می تواند منافذی را برای تحلیل امنیت الگوریتم رمز ایجاد نماید از آنجا که حملات جستجوی فضای کلید در ابتدا کلیدهای ملموس تر را مورد نظر قرار می دهد، تحلیل گر می تواند لغتنامه ای از کلیدهای معمول در نظر گرفته و به اصطلاح حمله لغتنامه ای انجام دهد.
کلیدهای خوب معمولا رشته اعداد تصادفی تولید شده توسط یک پروسه اتوماتیک می باشند. تولید این کلیدها باید توسط یک منبع تصادفی قابل اطمینان و یا یک مولد بین شبه تصادفی امن صورت بگیرد. همچنین کلیدهای ضعیف الگوریتم رمزنگاری مورد استفاده باید تا حد امکان حذف شود و یا مشخص باشند تا در هنگام تولید و انتخاب کلیدها استفاده نگردند.
کلید هاي عمومی و خصوصی:
کلید خصوصی، بخشی از کلید است که شما از آن به منظور امضاي یک پیام استفاده می نمایید. کلید خصوصی یک رمز عبور حفاظت شده بوده و نمی بایست آن را در اختیار دیگران قرار داد.
کلید عمومی، بخشی از کلید است که امکان استفاده از آن براي سایر افراد وجود دارد. زمانی که کلید فوق براي یک حلقه کلید عمومی (public key ring) ویایک شخص خاص ارسال میگردد، آنان با استفاده ازآن قادربه بررسی امضاي شما خواهند بود.
رمزنگاری مبتنی بر کلید عمومی بر پایه یک مقدار Hash استوار است مقدار فوق براساس یک مقدار ورودی که در اختیار الگوریتم Hashing گذاشته می گردد،ایجاد می شود. در حقیقت مقدار hash فرم خلاصه شده ای از مقدار اولیه خود است.بدون آگاهی از الگوریتم استفاده شده تشخیص عدد ورودی اولیه بعید به نظر می رسد.
مقدار عدد ورودی الگوریتم Hash
Input#X143 1,525,381 10,667
تشخیص اینکه عدد 1،525،381 (مقدارHash) از ضرب دو عدد 10،667 و 143 بدست آمده است کار مشکلی است. در صورتی که بدانیم یکی از اعداد 143 است تشخیص عدد دوم بسیار ساده خواهد بود.
رمزنگاری مبتنی بر کلید عمومی به مراتب پیچیده تر از مثال فوق می باشد مثال فوق صرفا ایده اولیه در این خصوص می باشد.
کلیدهای عمومی عموما از الگوریتم های پیچیده و مقادیر Hash بسیار بزرگ برای رمزنگاری استفاده می نمایند. در چنین مواردی اغلب از اعداد 40 و یا حتی 128 بیتی استفاده می شود. یک عدد 128 بیتی دارای 2128 حالت متفاوت است.
روش هاي رمز نگاري کلید عمومی
رمزنگاري با استفاده از کلید عمومی روشی است براي ایجاد یک ارتباط پنهان میان دو شخص بدون اینکه نیازي به تعویض کلیدهاي خصوصی باشد. همچنین با استفاده از این روش میتوان امضاهاي دیجیتال را ایجاد کرد. رمز نگاري با کلید عمومی اساس و بنیاد تبادل اطلاعات در تکنولوژيهاي امروز در جهان گسترده اینترنت است.همچنین این روش به عنوان رمزنگاري نامتقارن نیز مطرح است زیرا کلیدي که براي رمزنگاري به کار میرود با کلیدي که براي رمز گشایی به کار میرود متفاوت است. در رمزنگاري با کلید عمومی، هر کاربر یک جفت کلید براي رمزنگاري شامل یک کلید عمومی و یک کلید خصوصی است. کلید خصوصی به عنوان یک راز از سوي کاربر باید نگهداري شود و همه کاربران امکان استفاده از کلید عمومی را داردند و در اختیار همه قرار میگیرد. از رمز نگاري نامتقارن هم براي رمزنگاري استفاده میشود هم براي رمز گشایی استفاده میشود. پیام هایی که باکلید عمومی رمزنگاري میشوند فقط با کلید خصوصی مطابق قابلیت رمزگشایی را دارند. هرچند که کلیدهاي عمومی و خصوصی مطابق با یکدیگر هستند ولی با استفاده از کلید عمومی نمیتوان کلید خصوصی را به دست آورد. در طرح رمزنگاري متقارن فرستنده و گیرنده باید یک کلید مشترك اضافه باشند تا بتوانند عملیات رمزگشایی و رمزنگاري را انجام دهند و به همین دلیل این طرح قابلیت اجرایی شدن کمتري نسبت به روش نامتقارن دارند زیرا روش متقارن یک پهناي باند ویژه جهت تبادل کلید اضافی نیاز دارد به همین دلیل از کارایی مناسبی برخوردار نیستند.
رمزگذاري کلیدي عمومی: پیامی که با کلید عمومی رمزگذاري شده باشد فقط به وسیله صاحب کلید خصوصی مطابق با آن رمزگشایی میشود و این موضوع به همکاري فرستنده و گیرنده بستگی دارد و میتواند اعتماد را تا اندازه زیادي در این سیستم تامین کند.
رمزنگاری مبتنی بر کلید عمومی بر پایه یک مقدار Hash استوار است مقدار فوق براساس یک مقدار ورودی که در اختیار الگوریتم Hashing گذاشته می گردد،ایجاد می شود. در حقیقت مقدار hash فرم خلاصه شده ای از مقدار اولیه خود است.بدون آگاهی از الگوریتم استفاده شده تشخیص عدد ورودی اولیه بعید به نظر می رسد.
مقدار عدد ورودی الگوریتم Hash
Input#X143 1,525,381 10,667
تشخیص اینکه عدد 1،525،381 (مقدارHash) از ضرب دو عدد 10،667 و 143 بدست آمده است کار مشکلی است. در صورتی که بدانیم یکی از اعداد 143 است تشخیص عدد دوم بسیار ساده خواهد بود.
رمزنگاری مبتنی بر کلید عمومی به مراتب پیچیده تر از مثال فوق می باشد مثال فوق صرفا ایده اولیه در این خصوص می باشد.
کلیدهای عمومی عموما از الگوریتم های پیچیده و مقادیر Hash بسیار بزرگ برای رمزنگاری استفاده می نمایند. در چنین مواردی اغلب از اعداد 40 و یا حتی 128 بیتی استفاده می شود. یک عدد 128 بیتی دارای 2128 حالت متفاوت است.
(طاهر خرمالی،SSL امنیت دیجیتال،1394،28)
تصدیق کلید
در تمامی تبادل های کلید در مبادلات امن می بایست کلیدهای ارسال شده مورد بررسی و تصدیق قرار گیرند. به طور مثال اگر کلید جلسه ارتباطی توسط کلید رمزنگاری کلید رمز شده باشد گیرنده می تواند به این واقعیت اعتماد نماید که کلید رمزگذاری کلید جلسه تنها در اختیار فرستنده است.
یک روش مطمئن برای تصدیق و احراز اصالت کلیدها می تواند استفاده از پروتکل های امضا دیجیتال برای امضا کلید باشد و یا استفاده از مرکز توزیع و خدمات کلید امن برای انتقال کلیدهای عمومی بکار گرفته شده باشد که در این صورت باید اطمینان کافی به این مرکز وجود داشته باشد.
در این میان ممکن است خطاهایی در ارسال کلید به وجود آید و از آنجایی کلیدها ممکن است برای رمزگشایی چندین مگابایت از متون رمز شده بکار رود لذا لزوم بررسی و تصحیح خطاها وجود دارد که لزوما این خطاها باید آشکارسازی شوند.
یکی از پرکاربردترین روش های بکاررفته برای این کار رمز نمودن یک مقدار ثابت با کلید دریافت شده و ارسال 2 تا 4 بایت متون رمز شده با کلید می باشد و در سمت دیگر نیز همین عمل انجام می شودو سپس با انطباق مقادیر رمز شده مشخص می شود که کلید صحیح ارسال شده و یا نیاز به تصحیح و ارسال مجدد دارد.
طول عمر کلیدها
هیچ یک از کلیدهای رمزنگاری برای مدت نا معینی به کار گرفته نمی شوند. برای هر کاربرد رمزنگاری می بایست یک سیاست امنیتی بر مبنای مدل های امنیتی تعریف شده در سیستم در نظر گرفته شود که در آن طول عمر کلیدها نیز مشخص شده باشد کلیدهای متفاوت طول عمرهای متفاوتی دارند. در سیستم هایی که بر روی کانال های مخابراتی خاص و حساس عمل می نمایند کلیدها بسته به ارزش و مقدار داده های اصلی و مقادیر رمز شده و اعتبار آن ها در طول مدت تعیین شده باید نسبتا طول عمرهایی کوتاه داشته باشند. برای سیستم هایی که در هر ثانیه چندیدن گیگابایت اطلاعات را مبادله می نمایند نیز نسبت به خطوط کم ترافیک تر تغییر کلیدها بیشتر صورت می گیرد. کلیدهای رمز گذاری کلید معمولا به طور متناوب تغییر نمی کنند . این کلیدها به منظور تبادل کلید بکار می روند کلیدهای خصوصی رمزهای کلید عمومی نیز طول عمرهای متفاوتی وابسته به کاربردهایشان دارند.
از جمله موارد دیگری که در مدیریت کلید باید مورد نظر قرار گیرد مسائل مربوط به انهدام کلیدهای مصرف شده،ذخیره نمودن و Backup گرفتن از آنها می باشد.
پروتکل رمزنگاري
یک پروتکل امنیت (پروتکل رمزنگاري) یک مفهوم انتزاعی است و در واقع تضمینی براي امنیت سیستم به شمار می رود و امنیت سیستم رمزنگاري به برقراري این قواعد وابسته است. پروتکل تعیین میکند که الگوریتمها چگونه می بایست به کار روند تا همراه با کارآیی لازم، امنیت خود را نیز حفظ کنند. پروتکلها به اندازه کافی و به صورت مفصل جزئیات را درباره ساختارهاي دادهها و شکل استفاده از آنها را تعیین میکنند. اجراي کامل و درست پروتکل می تواند این اطمینان را در کاربر ایجاد کند که امنیت سیستم تا میزان مورد نیاز تامین میشود.
پروتکل رمزنگاري معمولاً در ابتدایی ترین حالت موارد زیر را شامل می شوند:
بررسی و تایید صحت کلید؛ تعیین اعتبار موجود بودن کلید در سیستم؛ در مورد روش متقارن اعتبار لازم را به یک پیام میدهد؛ حفظ امنیت داده در سطح برنامه؛ روش هایی که اجازه نمیدهد کاربر امضاي خود را تکذیب کند(ویژگی غیرقابل انکار بودن). به عنوان مثال؛ پروتکل امنیت لایه هاي حمل اطلاعات یک پروتکل رمزنگاري است است .که براي حفظ امنیت اتصالات در سطح وب را تامین میکند. طرز کار این پروتکل بر مبناي سیستم X509 است که یک مرحله تولید کلید و با استفاده از کلید عمومی و روش رمزنگاري با کلید عمومی داده ها را در سطح برنامه ها حمل میکند . ولی این پروتکل نمی تواند ویژگی غیرقابل انکار بودن رمزنگاري را تامین کند. انواع دیگري از پروتکل هاي رمزنگاري وجود دارند که برخی از آنها خود شامل چندین پروتکل مختلف دیگر میشوند امروزه تنوع گسترده اي در زمینه پروتکل ها به وجود آمده است و شرکت هاي مختلف براي رفع معایب امضاي دیجیتال و ایجاد امنیت هر چه بیشتر در این ساختار تلاش هاي چشمگیري انجام داده اند.
پروتکل رمزنگاری معمولاً در ابتداییترین حالت موارد زیر را شامل میشوند:
- بررسی و تایید صحت کلید.
- تعیین اعتبار موجود بودن کلید در سیستم.
- در مورد روش متقارن اعتبار لازم را به یک پیام میدهد.
- حفظ امنیت داده در سطح برنامه.
- روش هایی که اجازه نمیدهد کاربر امضای خود را تکذیب کند(ویژگی غیرقابل انکار بودن).