امضای دیجیتال چیست؟
شاید تاکنون نامههای الکترونیکی متعددی را دریافت داشتهاید که دارای مجموعهای از حروف و اعداد در انتهای آنان میباشند. در اولین نگاه ممکن است اینگونه تصور گردد که اطلاعات فوق بی فایده بوده و شاید هم نشان دهنده بروز یک خطا در سیستم باشد!
در حقیقت ما شاهد استفاده از امضای دیجیتال در یک نامه الکترونیکی میباشیم. به منظور ایجاد یک امضای دیجیتال از یک الگوریتم ریاضی به منظور ترکیب اطلاعات در یک کلید با اطلاعات پیام، استفاده میشود. ماحصل عملیات، تولید یک رشته مشتمل بر مجموعهای از حروف و اعداد است. یک امضای دیجیتال صرفاً به شما نخواهد گفت که «این شخص یک پیام را نوشته است» بلکه در بردارنده این مفهوم مهم است که: «این شخص این پیام را نوشته است».
کاغذ به عنوان حامل اطلاعات مهم جای خود را کمکم به دیگر راههای تبادل اطلاعات میدهد. در واقع کاغذ دارای معایبی از قبیل انتقال آهسته و پرهزینه اسناد میباشد. همچنین شیوههای ذخیرهسازی اطلاعات نیز به سرعت در حال تغییر است و به جای بایگانی انبوه دستههای کاغذ از روشهای الکترونیکی استفاده میشود. فناوریهای جدید انتقال اطلاعات، مانند EDI و پست الکترونیک و استفاده از سیستمهای مدیریت اسناد کامپیوتری نگارش، ارسال و ذخیره اطلاعات را سادهتر، سریعتر و حتی ایمنتر ساخته است.
به خاطر ساختار غیر فیزیکی واسطه (وسیله حامل داده)، روشهای سنتی علامتگذاری فیزیکی واسطه توسط مهر یا امضا (برای مقاصد تجاری و حقوقی) غیر قابل استفاده میباشند. هنگام کار با اسناد الکترونیکی، باید علامتی برای تشخیص اصل بودن و سندیت بخشیدن به محتوای آن، به اطلاعات اضافه شود.
بعضی شیوههای جدید تنها برای سندیت بخشیدن به یک موجودیت جهت مجوزدهی به دسترسی، استفاده میشوند؛ برای مثال نباید یک سیستم تشخیص هویت انگشتنگاری کامپیوتری، یک امضای دستی اسکن شده یا وارد کردن اسم شخص در انتهای یک E-mail را به عنوان یک جایگزین معتبر برای امضاهای دستی پذیرفته زیرا همه عملکردهای یک امضای دستی را نخواهد داشت.
با امضا کردن در پای یک نوشته امضا کننده هویت خود را به عنوان نویسنده مشخص میکند، جامعیت سند را تأیید نموده و بیان میدارد که به محتویات آن متعهد و پایبند میباشد. برخی از خواص مهم امضاهای دستی عبارت است از:
1- امضای یک شخص برای تمام مدارک یکسان است.
2 - به راحتی تولید میشوند.
3 - به راحتی تمیز داده میشوند.
4 - باید به گونهای باشند که حتیالامکان به سختی جعل شوند.
5 - به طور فیزیکی تولید میشوند. یک امضای دیجیتالی یک ابزار سندیت بخشیدن الکترونیکی میباشد، که منجر به سندیت بخشیدن به یک رکورد الکترونیکی از طریق رمزنگاری با کلید همگانی میشود.
ویژگیهای مهم امضاهای دیجیتال عبارت است از:
1 - در تولید آنها از اطلاعاتی که به طور منحصربهفرد در اختیار امضاکننده است، استفاده میشود.
2 - به طور خودکار و توسط رایانه تولید میشوند.
3 - امضای هر پیام وابسته به کلیه بیتهای پیام است و هر گونه دستکاری و تغییر در متن سند موجب مخدوش شدن امضای پیام میگردد.
4 - امضای هر سندی متفاوت با امضای اسناد دیگر است.
5 - باید به راحتی قابل بررسی و تأیید باشد تا از جعل و انکار احتمالی آن جلوگیری شود. ساختار اصلی امضای دیجیتالی بدین صورت است که نویسنده اطلاعات الکترونیکی این اطلاعات را توسط کلید رمزنگاری محرمانه خود امضا میکند. این کلید باید توسط کاربر برای همیشه مخفی نگهداشته شود. امضا توسط کلید همگانی مربوطه امضا کننده، سند قابل کنترل میباشد. این کلید همگانی توسط عموم قابل رؤیت و دسترسی میباشد.
علت استفاده از یک امضای دیجیتال چیست؟
بهتر است برای پاسخ به سؤال فوق، سؤالات دیگری را مطرح کنیم! - برای تشخیص و تأیید هویت فرد ارسال کننده یک نامه الکترونیکی از چه مکانیزمهایی استفاده میشود؟ فرض کنید یک نامه الکترونیکی را از یکی از دوستان خود دریافت داشتهاید که از شما درخواست خاصی را مینماید، پس از مطالعه پیام برای شما دو سؤال متفاوت مطرح میگردد:
الف ) آیا این نامه را واقعاً وی ارسال نموده است؟ ب ) آیا محتوای نامه ارسالی واقعی است و وی دقیقاً همین درخواست را داشته است؟
- آیا وجود هر نامه الکترونیکی در صندوق پستی، نشان دهنده صحت محتوا و تأیید هویت فرد ارسال کننده آن است؟ امروزه سوء استفاده از آدرسهای Email برای مهاجمان و ویروسها به امری متداول تبدیل شده است و با توجه به نحوه عملکرد آنان در برخی موارد شناسایی هویت فرد ارسال کننده یک پیام بسیار مشکل و در برخی موارد غیر ممکن است. تشخیص غیر جعلی بودن نامههای الکترونیکی در فعالیتهای تجاری و بازرگانی دارای اهمیت فراوانی است. یک نامه الکترونیکی شامل یک امضای دیجیتال، نشان دهنده این موضوع است که محتوای پیام از زمان ارسال تا زمانی که به دست شما رسیده است، تغییر نکرده است. در صورت بروز هر گونه تغییر در محتوای نامه، امضای دیجیتال همراه آن از درجه اعتبار ساقط میشود.
نحوه عملکرد یک امضای دیجیتال
قبل از آشنایی با نحوه عملکرد یک امضای دیجیتال، لازم است در ابتدا با برخی اصطلاحات مرتبط با این موضوع بیشتر آشنا شویم: کلیدها (Keys): از کلیدها به منظور ایجاد امضاهای دیجیتال استفاده میگردد. برای هر امضای دیجیتال، یک کلید عمومی و یک کلید خصوصی وجود دارد: کلید خصوصی، بخشی از کلید است که شما از آن به منظور امضای یک پیام استفاده مینمایید. کلید خصوصی یک رمز عبور حفاظت شده بوده و نمیبایست آن را در اختیار دیگران قرار داد. کلید عمومی، بخشی از کلید است که امکان استفاده از آن برای سایر افراد وجود دارد.
زمانی که کلید فوق برای یک حلقه کلید عمومی (public key ring) و یا یک شخص خاص ارسال میگردد، آنان با استفاده از آن قادر به بررسی امضای شما خواهند بود. حلقه کلید (Key Ring): شامل کلیدهای عمومی است. یک حلقه کلید از کلیدهای عمومی افرادی که برای شما کلید مربوط به خود را ارسال نموده و یا کلیدهایی که از طریق یک سرویس دهنده کلید عمومی دریافت نمودهاید، تشکیل میگردد. یک سرویس دهنده کلید عمومی شامل کلید افرادی است که امکان ارسال کلید عمومی در اختیار آنان گذاشته شده است.
اثرانگشت: زمانی که یک کلید تأیید میگردد، در حقیقت منحصربهفرد بودن مجموعهای از حروف و اعداد که اثر انگشت یک کلید را شامل میشوند. تأیید میگردد.
گواهینامههای کلید: در زمان انتخاب یک کلید از روی یک حلقه کلید، امکان مشاهده گواهینامه (مجوز) کلید وجود خواهد داشت. در این رابطه میتوان به اطلاعات متفاوتی نظیر صاحب کلید، تاریخ ایجاد و اعتبار کلید دست یافت.
نحوه ایجاد و استفاده از کلیدها
- تولید یک کلید با استفاده از نرمافزارهایی نظیر PGP (اقتباس شده از کلمات Pretty Good Privacy ) و یا GnuPG (اقتباس شده از کلمات GNU Privacy Guard )
- معرفی کلید تولید شده به سایر همکاران و افرادی که دارای کلید میباشند.
- ارسال کلید تولید شده به یک حلقه کلید عمومی تا سایر افراد قادر به بررسی و تأیید امضای شما گردند.
- استفاده از امضای دیجیتال در زمان ارسال نامههای الکترونیکی. اکثر برنامههای سرویس دهنده پست الکترونیکی دارای پتانسیلی به منظور امضای یک پیام میباشند.
حملات ممکن علیه امضاهای دیجیتالی
• حمله Key-only – در این حمله، دشمن تنها کلید عمومی امضاکننده را میداند و بنابراین فقط توانایی بررسی صحت امضاهای پیامهایی را که به وی داده شدهاند، دارد.
• حمله Known Signature – دشمن، کلید عمومی امضاکننده را میداند و جفتهای پیام/امضا که به وسیله صاحب امضا انتخاب و تولید شده است را دیده است. این حمله در عمل امکانپذیر است و بنابراین هر روش امضایی باید در مقابل آن امن باشد.
• حمله Chosen Message – به دشمن اجازه داده میشود که از امضاکننده بخواهد که تعدادی از پیامهای به انتخاب او را امضا کند. انتخاب این پیامها ممکن است به امضاهای از قبل گرفته شده بستگی داشته باشد. این حمله در غالب حالات، ممکن است غیر عملی به نظر برسد، اما با پیروی از قانون احتیاط، روش امضایی که در برابر آن ایمن است، ترجیح داده میشود.
• حمله Man-in-the-middle – در این حمله، شخص از موقعیت استفاده کرده در هنگام مبادله کلید عمومی، کلید عمومی خود را جایگزین کرده و برای گیرنده میفرستد و بدینگونه میتواند به پیامها دسترسی داشته باشد بدون اینکه فرستنده و گیرنده، مطلع باشند.
منبع: ماهنامه تخصصی فناوری اطلاعات و ارتباطات