
تحقیق در مورد امضا های دیجیتال و کاربرد ان با word دارای 35 صفحه می باشد و دارای تنظیمات در microsoft word می باشد و آماده پرینت یا چاپ است
فایل ورد تحقیق در مورد امضا های دیجیتال و کاربرد ان با word کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه و مراکز دولتی می باشد.
این پروژه توسط مرکز مرکز پروژه های دانشجویی آماده و تنظیم شده است
توجه : در صورت مشاهده بهم ریختگی احتمالی در متون زیر ،دلیل ان کپی کردن این مطالب از داخل فایل ورد می باشد و در فایل اصلی تحقیق در مورد امضا های دیجیتال و کاربرد ان با word،به هیچ وجه بهم ریختگی وجود ندارد
بخشی از متن تحقیق در مورد امضا های دیجیتال و کاربرد ان با word :
1 – چکیده
در جهان امروز مدیریت اسناد الکترونیکی و ارسال ودریافت اطلاعات الکترونیکی بخش بزرگی از تبلیغات و فعالیتهای اجرایی را شامل میشود. هنوز انتظار میرود که استفاده از اطلاعات مبتنی بر کامپیوتر در سطح جهان به طرز قابل توجهی در حال گسترش میباشد. یکی از تکنولوژیهایی که موجب افزایش اعتماد گردیده، امضای دیجیتالی میباشد. این تکنیک مبتنی بر رمزنگاری باعث به رسمیت شناسی اطلاعات الکترونیکی شده به طوریکه هویت پدیدآورنده سند و جامعیت اطلاعات آن، قابل بازبینی و کنترل میباشد.
2 – مقدمه
کاغذ به عنوان حامل اطلاعات مهم جای خود را کمکم به دیگر راههای تبادل اطلاعات میدهد. در واقع کاغذ دارای معایبی از قبیل انتقال آهسته و پرهزینه اسناد میباشد. همچنین شیوههای ذخیرهسازی اطلاعات نیز بسرعت در حال تغییر است و بجای بایگانی انبوه دستههای کاغذ از روشهای الکترونیکی استفاده میشود. فنآوریهای جدید انتقال اطلاعات، مانند EDI و پست الکترونیک و استفاده از سیستمهای مدیریت اسناد کامپیوتری نگارش، ارسال و ذخیره اطلاعات را سادهتر، سریعتر و حتی ایمنتر ساخته است.
بخاطر ساختار غیرفیزیکی واسطه (وسیله حامل داده)، روشهای سنتی علامتگذاری فیزیکی واسطه توسط مهر یا امضاء (برای مقاصد تجاری و حقوقی) غیرقابل استفاده میباشند.
هنگام کار با اسناد الکترونیکی، باید علامتی برای تشخیص اصل بودن و سندیت بخشیدن به محتوی آن، به اطلاعات اضافه شود. بعضی شیوههای جدید تنها برای سندیت بخشیدن به یک موجودیت جهت مجوزدهی به دسترسی استفاده میشوند، برای مثال نباید یک سیستم تشخیص هویت انگشتنگاری کامپیوتری، یک امضای دستی اسکن شده یا وارد کردن اسم شخص در انتهای یک E-mail را بعنوان یک جایگزین معتبر برای امضاهای دستی پذیرفته زیرا همه عملکردهای یک امضای دستی را نخواهد داشت.
با امضا کردن در پای یک نوشته امضا کننده هویت خود را بعنوان نویسنده مشخص میکند، جامعیت سند را تایید نموده و بیان میدارد که به محتویات آن متعهد و پایبند میباشد.
3 – برخی از خواص مهم امضاهای دستی عبارتند از:
1- امضاء یک شخص برای تمام مدارک یکسان است.
2- به راحتی تولید میشوند.
3- به راحتی تمیز داده میشوند.
4- باید به گونهای باشند که حتیالامکان به سختی جعل شوند.
5- به طور فیزیکی تولید میشوند.
4 – ویژگیهای مهم امضاهای دیجیتال عبارتند از:
1- در تولید آنها از اطلاعاتی که به طور منحصر بفرد در اختیار امضا کننده است استفاده میشود.
2- به طور خودکار و توسط رایانه تولید میشوند.
3- امضاء هر پیام وابسته به کلیه بیتهای پیام است و هر گونه دستکاری و تغییر در متن سند موجب مخدوش شدن امضاء پیام میگردد.
4- امضاء هر سندی متفاوت با امضاء اسناد دیگر است.
5- باید به راحتی قابل بررسی و تایید باشد تا از جعل و انکار احتمالی آن جلوگیری شود.
یک امضای دیجیتالی یک ابزار سندیت بخشیدن الکترونیکی میباشد، که منجر به سندیت بخشیدن به یک رکورد الکترونیکی از طریق رمزنگاری با کلید همگانی میشود.
5 – ساختار کلی امضای دیجیتالی
ساختار اصلی امضای دیجیتالی بدین صورت است که نویسنده اطلاعات الکترونیکی این اطلاعات را توسط کلید رمزنگاری محرمانه خود امضاء میکند. این کلید باید توسط کاربر برای همیشه مخفی نگهداشته شود. امضاء توسط کلید همگانی مربوطه امضا کننده سند قابل کنترل میباشد. این کلید همگانی توسط عموم قابل رؤیت و دسترسی میباشد.
6 – آشنائی با امضای دیجیتال
شاید تاکنون نامه های الکترونیکی متعددی را دریافت داشته اید که دارای مجموعه ای از حروف و اعداد در انتهای آنان می باشند . در اولین نگاه ممکن است اینگونه تصور گردد که اطلاعات فوق بی فایده بوده و شاید هم نشاندهنده بروز یک خطاء در سیستم باشد! در حقیقت ما شاهد استفاده از امضای دیجیتال در یک نامه الکترونیکی می باشیم . به منظور ایجاد یک امضای دیجیتال از یک الگوریتم ریاضی به منظور ترکیب اطلاعات در یک کلید با اطلاعات پیام ، استفاده می شود . ماحصل عملیات ، تولید یک رشته مشتمل بر مجموعه ای از حروف و اعداد است .یک امضای دیجیتال صرفا” به شما نخواهد گفت که ” این شخص یک پیام را نوشته است ” بلکه در بردارنده این مفهوم مهم است که : “این شخص این پیام را نوشته است ” .
علت استفاده از یک امضای دیجیتال چیست ؟
اجازه دهید برای پاسخ به سوال فوق ، سوالات دیگری را مطرح کنیم !
برای تشخیص و تائید هویت فرد ارسال کننده یک نامه الکترونیکی از چه مکانیزمهائی استفاده می شود فرض کنید یک نامه الکترونیکی را از یکی از دوستان خود دریافت داشته اید که از شما درخواست خاصی را می نماید ، پس از مطالعه پیام برای شما دو سوال متفاوت مطرح می گردد : الف ) آیا این نامه را واقعا” وی ارسال نموده است ؟ ب ) آیا محتوای نامه ارسالی واقعی است و وی دقیقا” همین درخواست را داشته است ؟
آیا وجود هر نامه الکترونیکی در صندوق پستی ، نشاندهنده صحت محتوا و تائید هویت فرد ارسال کننده آن است ؟
همانگونه که در مطلب ” مراقب ضمائم نامه های الکترونیکی باشید ” ، اشاره گردید ، سوءاستفاده از آدرس های Email برای مهاجمان و ویروس ها به امری متداول تبدیل شده است و با توجه به نحوه عملکرد آنان در برخی موارد شناسائی هویت فرد ارسال کننده یک پیام بسیار مشکل و گاها” غیرممکن است . تشخیص غیرجعلی بودن نامه های الکترونیکی در فعالیت های تجاری و بازرگانی دارای اهمیت فراوانی است
یک نامه الکترونیکی شامل یک امضای دیجیتال، نشاندهنده این موضوع است که محتوای پیام از زمان ارسال تا زمانی که به دست شما رسیده است ، تغییر نکرده است . در صورت بروز هر گونه تغییر در محتوای نامه ، امضای دیجیتال همراه آن از درجه اعتبار ساقط می شود .
امضای دیجیتالی یا همان قفل کردن اطلاعات، یک روش کاملاً ریاضی است. چیزی که در این باره لازم است شماره های رمزی است که یکطرفه عمل میکنند.
رمزهای یکطرفه رمزهایی هستند که فقط از یک جهت خوانده میشوند. اگر یک عدد جا به جا شود کل رمز باطل میشود.
مطمئناً در مورد مسائل شخصی به همین راحتی با کسی صحبت نمیکنید؛ در مورد بعضی مسائل هم نه تنها صحبت نمیکنید؛ بلکه محتاط هم هستید، مثلاً در مورد حساب بانکی!
شماره کردیت کارت را آدم به هر کسی نمی دهد! ولی گاهی اوقات چارهای نیست، در همه شرایط نمیتوان پول نقد پرداخت کرد. مثلاً خریدهای اینترنتی، مثل بلیطهای ارزان قیمت برخی شرکتهای هواپیمایی که فقط فروش اینترنتی دارند. در این شرایط باید مطمئن بود که کس دیگری به این اطلاعات دسترسی پیدا نمیکند.
شرکتهای معتبری که خدماتی مثل خریدهای اینترنتی ارائه میدهند به سیستم محافظت کنندهای مطمئنی هم مجهز هستند، مثلاً امضاهای دیجیتالی.
کلاوس پتر اشنور (Claus Peter Schnorr) یکی از طراحان امضاهای دیجیتالی است. او میگوید: این امضاها مثل رمزنویسی است. از طریق امضای دیجیتالی اطلاعات را قفل میکنید و مطمئن میشوید که کس دیگری به آنها دسترسی پیدا نمیکند. این اطمینان تضمین شده است.
وب سایتهای اینترنتی که این قفلهای مطمئن را در اختیار دارند به راحتی قابل تشخیصاند. وقتی وارد این سایتها میشوید یک کلید زرد رنگ کوچک در سمت چپ صفحه میبینید. این یعنی اینکه اطلاعاتی که فرستنده ارسال میکند قفل شده به گیرنده میرسند،
اطلاعات را کس دیگری نمیتواند بخواند و یا تغییر بدهد. گیرنده برنامه مخصوصی در اختیار دارد که قفل اطلاعات فرستاده شده را باز میکند. برنامه پیچیدهای که به راحتی هک شدنی نیستند. امضا کننده نیازی ندارد از اطلاعات پس زمینه نرم افزاری سر در بیاورد، فقط باید بداند روی کدام دکمه باید کلیک کند تا امضا تایید شود. این روزها معمول ترین نوع امضاهای اینترنتی، امضاهایی هستند که شما اصلاً نمیدانید امضا کردهاید
. مثلاً وقتی یک برنامه نرم افزاری را دانلود میکنید باید مطمئن باشید که نرم افزاری که دارید دانلود میکنید ارژینال است. این هم وقتی شدنی است که این نرم افزار با کلید امضا همراه باشد که آن هم توسط فرستنده کنترل میشود.
امضای دیجیتالی یا همان قفل کردن اطلاعات یک روش کاملاً ریاضی است. چیزی که لازم است شمارههای رمزی است که یکطرفه عمل میکنند. رمزهای یکطرفه رمزهای هستند که فقط از یک جهت خوانده میشوند. اگر یک عدد جا به جا شود کل رمز باطل میشود. اکثر این اعداد هم عددهای فرد هستند. این هم یکی از رازهای دنیای ریاضی برنامهنویسهاست. از قرار معلوم هک کردن اعداد فرد مشکلتر است. هرچه اعداد این رمزهای یکطرفه بیشتر باشند ضریب اطمینان قفل بالاتر میرود، چون باز کردنش سخت تر میشود، و یا آنطور که اشنور معتقد است با تکنیک امروزی اصلاً شدنی نیست.
در مورد ضریب اطمینان این امضاها باید به این نکته توجه کرد که هر روش مطمئنی دست کم تا مدت زمان مشخصی مطمئن است. تا زمانی که قفل هک نشده، اطلاعات محفوظ میماند. البته هنوز کسی نتوانسته این نوع قفلها را که در خریدهای اینترنتی از آنها استفاده میشود باز کند، اما نمیتوان صددرصد مطمئن بود.
برای اشنور که ریاضدان و برنامهنویس است، بعضی از این قفل و امضاها به سادگی باز شدنی هستند. هر چند که شکستن قفل یک برنامه برای کاربرهای اینترنتی که به آن اطمینان کردهاند فاجعه است، اما برای یک ریاضیدان نکته جالبی است که نشان میدهد نقطه ضعف برنامه کجا بوده که هکرها توانستهاند آن را باز کنند.
کلاوس پتر اشنور یکی از معروفترین برنامه نویسان کامپیوتری، پروفسور ریاضیات و اینفورماتیک دانشگاه گوته در فرانکفورت آلمان است. او طراح امضای دیجیتالی است به نام امضا اشنور که یکی از معروفترین و مطمئن ترین قفلهای اینترنتی است که در تمام دنیا از ان استفاده میشود.
اشنور پیش از این، برای این طرح جایزه یک ونیم میلیون مارکی لابنیز (Leibniz) را دریافت کرده است. لابنیز یکی از مطرحترین جوایزی است که از سوی جامعه دانشمندان آلمانی به خلاقترین طرحهای علمی اهدا میشود.
7 – علت استفاده از یک امضای دیجیتال چیست ؟
تشخیص هویت واقعی اشخاص از مهمترین نیازهای امنیتی در فضای سایبر و دنیای دیجیتالی است.
با استفاده از امضای دیجیتالی میتوان هویت واقعی افراد را در دنیای سایبر تشخیص داد.
تامین امنیت E-mail ها در وبسایتها در هنگام تبادل اطلاعات مهم از جمله بیشترین موارد کاربرد امضای دیجیتالی است.
مرکز صدور گواهی دیجیتالی اقدام به صدور گواهی دیجیتالی میکند. بدین صورت که بر اساس اطلاعاتی که در اختیار دارد کلیدهای اختصاصی را برای متقاضی به وجود میآورد و برای او ارسال میکند. احراز هویت، امضای دیجیتالی، مخفیسازی نامهها (رمزنگاری)، کنترل مجوز نرمافزار، هویتشناسی کامپیوترها و امنیت کانالهای ارتباطی از جمله کاربردها و مزایای CA هستند.
امروزه سوءاستفاده از آدرسهای Email بسیار متداول شده و با توجه به نحوه عملکرد آنها در برخی موارد شناسایی هویت فرد ارسالکننده یک پیام بسیار مشکل است. (در حالی که تشخیص هویت نامههای الکترونیکی در فعالیتهای تجاری و بازرگانی حائز اهمیت است.)
یک نامه الکترونیکی دارای امضای دیجیتالی علاوه بر اینکه هویت ارسالکننده را نشان میدهد نشاندهنده این موضوع نیز است که محتوای پیام از زمان ارسال تا زمانی که به دست گیرنده برسد، تغییر نکرده است زیرا در صورت بروز هرگونه تغییر در محتوای نامه، امضای دیجیتالی آن از درجه اعتبار ساقط میشود. رمزنگاری اطلاعات را به صورت رمز در میآورد و این امکان را فراهم میکند که نامه
فرستاده شده توسط فرد دیگری گشوده نشود و امضای دیجیتالی نشان میدهد که حتما نامه دریافت شده توسط فرد موردنظر ارسال شده است.
کنترل مجوز نرمافزار یکی دیگر از کاربردهای گواهی دیجیتالی است. مثلا از طریق این گواهی میتوان فهمید که آیا نرمافزار موجود گواهینامه دارد و یا تولید آن مجاز بوده است و یا وقتی شرکتی ادعا میکند که نرمافزارش متعلق به Micro Soft است، از طریق گواهی دیجیتالی و با کنترل مجوز نرمافزار میتوان پی به صحت و سقم این ادعا برد.
کاربرد رمزنگاری درهویتشناسی کامپیوترها نیز زمانی رخ میدهد که یک سرویسدهنده به یک سرویس گیرنده وصل شود، در این صورت اطلاعات را به صورتی میان خود تبادل میکنند که همدیگر را بشناسند.
8 – اصطلاحات در امضای دیجیتالی
قبل از آشنائی با نحوه عملکرد یک امضای دیجیتال ، لازم است در ابتدا با برخی اصطلاحات مرتبط با این موضوع بیشتر آشنا شویم :
• کلیدها ( Keys ) . از کلیدها به منظور ایجاد امضاهای دیجیتال استفاده می گردد . برای هر امضای دیجیتال ، یک کلید عمومی و یک کلید خصوصی وجود دارد :
کلید خصوصی ، بخشی از کلید است که که شما از آن به منظور امضای یک پیام استفاده می نمائید . کلید خصوصی یک رمزعبور حفاظت شده بوده و نمی بایست آن را در اختیار دیگران قرار داد .
کلید عمومی ، بخشی از کلید است که امکان استفاده از آن برای سایر افراد وجود دارد . زمانی که کلید فوق برای یک حلقه کلید عمومی ( public key ring ) و یا یک شخص خاص ارسال می گردد ، آنان با استفاده از آن قادر به بررسی امضای شما خواهند بود .
• حلقه کلید ( Key Ring ) ، شامل کلید های عمومی است . یک حلقه کلید از کلید های عمومی افرادی که برای شما کلید مربوط به خود را ارسال نموده و یا کلیدهائی که از طریق یک سرویس دهنده کلید عمومی دریافت نموده اید، تشکیل می گردد . یک سرویس دهنده کلید عمومی شامل کلید افرادی است که امکان ارسال کلیدعمومی در اختیار آنان گذاشته شده است .
• اثرانگشت : زمانی که یک کلید تائید می گردد ، در حقیقت منحصربفرد بودن مجموعه ای از حروف و اعداد که اثرانگشت یک کلید را شامل می شوند . تائید می گردد .
• گواهینامه های کلید : در زمان انتخاب یک کلید از روی یک حلقه کلید ، امکان مشاهده گواهینامه ( مجوز ) کلید وجود خواهد داشت . دراین رابطه می توان به اطلاعات متفاوتی نظیر صاحب کلید ، تاریخ ایجاد و اعتبار کلید دست یافت .
نحوه ایجاد و استفاده از کلید ها :
• تولید یک کلید با استفاده از نرم افزارهائی نظیر PGP اقتباس شده از کلمات Pretty Good Privacy و یا GnuPG ( اقتباس شده از کلمات GNU Privacy Guard )
• معرفی کلید تولید شده به سایر همکاران و افرادی که دارای کلید می باشند .
• ارسال کلید تولید شده به یک حلقه کلید عمومی تا سایر افراد قادر به بررسی و تائید امضای شما گردند .
• استفاده از
امضای دیجیتال در زمان ارسال نامه های الکترونیکی . اکثر برنامه های سرویس دهنده پست الکترونیکی دارای پتانسیلی به منظور امضاء یک پیام می باشند
9 – حملات ممکن علیه امضاهای دیجیتالی
• حمله Key-only – در این حمله، دشمن تنها کلید عمومی امضاءکننده را میداند و بنابراین فقط توانایی بررسی صحت امضاهای پیامهایی را که به وی داده شدهاند، دارد.
• حمله Known Signature – دشمن، کلید عمومی امضاءکننده را میداند و جفتهای پیام/امضاء که بهوسیله صاحب امضاء انتخاب و تولید شده است را دیده است. این حمله در عمل امکانپذیر است و بنابراین هر روش امضایی باید در مقابل آن امن باشد.
• حمله Chosen Message – به دشمن اجازه داده میشود که از امضاءکننده بخواهد که تعدادی از پیامهای به انتخاب او را امضاء کند. انتخاب این پیامها ممکن است به امضاهای از قبل گرفته شده بستگی داشته باشد. این حمله در غالب حالات، ممکن است غیرعملی به نظر برسد، اما با پیروی از قانون احتیاط، روش امضایی که در برابر آن ایمن است، ترجیح داده میشود.
• حمله Man-in-the-middle – در این حمله، شخص از موقعیت استفاده کرده در هنگام
مبادله کلید عمومی، کلید عمومی خود را جایگزین کرده و برای گیرنده میفرستد و بدینگونه میتواند به پیامها دسترسی داشته باشد بدون اینکه فرستنده و گیرنده، مطلع باشند. در سیستمهای کلید ـ عمومی (نامتقارن) اغلب مدیریت کلید مورد حمله قرار میگیرد تا الگوریتم رمزنگاری.
10 – امضای دیجیتال و امنیت کدها
امضای دیجیتال مبتنی بر الگوریتم های رمزنگاری و الگوریتم های Hashing است. به عنوان نمونه ای از الگوریتم های رمزنگار می توان به RSA و EL Gamal و الگوریتم های Hashing، MD5 و SHA اشاره کرد.
روال کار در امضای دیجیتال به این شکل است که پیش از ارسال داده ها، آنها را با استفاده از الگوریتم های Hashing به یک کد فشرده Hash تبدیل می کنند که این کد در حقیقت حاوی اطلاعات شما می باشد. مقادیر هک شده همگی طول یکسانی دارند و در صورت تغییر در اطلاعات ورودی Hash Code جدیدی تولید می شود.
این الگوریتم ها همگی یک طرفه هستند، یعنی پس از کد شدن اطلاعات نمی توان از روی این کدها اطلاعات اصلی را به دست آورد و تنها در صورتی می توان آن را کدگشایی کرد که کلید این کدها را در اختیار داشت.
دغدغه دیگر کدهای Hash شده این است که امنیت این کدها چگونه تأمین خواهد شد . در جواب این سوال باید گفت که امنیت کدهای Hash شده با دو کلید عمومی و خصوصی تضمین می شود. کلید عمومی در اختیار همگان قرار دارد و همگی امکان دسترسی به آن را دارند اما بر خلاف کلید عمومی
، کلید خصوصی تنها به دارنده Hashcodeتعلق دارد. در عمل نیز اگر اطلاعاتی را با کلید خصوصی(private key) به حالت قفل درآورید با همه کلید های عمومی (publickey) باز می شود، اما نمی توان با استفاده از هیچ کلید عمومی اطلاعات را مانند کلیدهای خصوصی به حالت کد شده تبدیل کرد. در جریان ارسال اطلاعات کد Hash به دست آمده از الگوریتم محاسباتی توسط کلید خصوصی به حالت رمز تبدیل می شود و همراه با کلید عمومی به انتهای داده ها اضافه شده و برای گیرنده ارسال می شود
به علاوه کد Hash واقعی داده ها نیز محاسبه شده و در انتها این دو کد باهم مقایسه می شوند. اگر این دو کد همخوانی داشتند بیانگر این است که داده های ارسال شده دستکاری نشده اند و قابلیت اعتماد دارند اما در صورتی که Hash کدهای ارسالی و واقعی یکسان نباشند به معنای دستکاری در اطلاعات است و این اطلاعات دیگر قابل اطمینان نیستند. حلقه کلید را می توان مجموعه ای از کلیدها دانست، یک حلقه کلید از کلید های عمومی همه افرادی که برای شما اطلاعاتی در قالب Hashcode ارسال کرده اند است.
11 – چگونه یک امضای دیجیتالی درست کنیم؟
بوجود آوردن یک امضای دیجیتالی مراحل محاسباتی پیچیده ای دارد. در حالیکه این مراحل توسط کامپوتر انجام می شود، درست کردن امضای دیجیتالی دیگر حتی از یک امضای دستی هم آسان تر است.
مراحل زیر نشان دهنده اعمالی است که در حین ساخته شدن یک امضای دیجیتالی صورت می گیرد:
a) آلیس دکمه singرا در نرم افزار ایمیل خود کلیک میکند و یا فایلی را که نیاز به امضا دارد انتخاب می کند.
b) کامپیوتر آلیس رمزگذاری را محاسبه می کند. (پیغام به یک تابع عمومی جهت رمزگذاری برده می شود). این تابع توسط کلید خصوصی آلیس رمزگذاری شده است (در این حالت آنرا کلید امضا می خوانیم).
c) پیغام آلیس و امضای دیجیتالی آن برای باب ارسال می شود.
d) باب پیغام امضا شده رادریافت می کند. در آنجا مشخص شده است که پیغام امضا شده است، و نرم افزار ایمیل باب می داند که چگونه آن امضا را تایید کند.
d) کامپیوتر باب امضای دیجیتالی آلیس را توسط کلید عمومی آلیس رمزگشایی می کند.
e) کامپیوتر باب کد رمزگذاری را از امضای دیجیتالی استخراج می کند. سپس کامپیوتر باب کد رمزگذاری را که استخراج کرده است با کدی که با پیغام آلیس ارسال شده است مطابقت می کند.
f) اگر پیغام آلیس صحیح انتقال یافته باشد و در طول راه مورد دستبرد واقع نشده باشد هر دو کلید استخراج شده یکسان می باشند. اگر دو کد رمزگذاری که استخراج شده اند با یکدیگر مطابقت نداشته باشد صلاحیت نامه منتفی است.
g) اگر پیغام اصلی مورد سرقت قرار گرفته باشد کد رمزگذاری که در کامپیوتر باب استخراج می شود متفاوت خواهد بود و در این صورت کامپیوتر باب به او اطلاع خواهد داد.
12 – امضاهای دیجیتالی: مرحله به مرحله
یک امضای دیجیتالی مطابق روند زیر ایجاد میشود:
– مرحله اول ایجاد واحد دادهایست که باید امضاء شود. برای مثال یک شیء اطلاعاتی بصورت دیجیتالی که میتواند متن، شکل و یا هر نوع دیگری از اطلاعات دیجیتالی باشد.
– مرحله دوم ایجاد یک مقدار درهم (Hash Value) از داده که معمولاً چکیده پیام نامیده میشود، میباشد. این عمل نتیجه پردازشهای ریاضی یک الگوریتم میباشد که شکل دیجیتالی فشردهای را ایجاد مینماید. در صورتیکه حتی یک بیت از واحد داده تغییر کند، مقدار درهم مربوطه دستخوش تغییرات وسیع میگردد. این تکنیک، باعث ایجاد امضای دیجیتالی با طول ثابت و قابل پیشبینی از قبل داده میشود.
– در مرحله سوم امضاءکننده مقدار درهم را با کلید محرمانه خود رمزگذاری میکند و امضای دیجیتالی خود برای واحد داده را ایجاد میکند که مقداری منحصر به فرد بوده و میبایست به واحد داده متصل یا الحاق گردد.
– بعنوان مرحله آخر، کنترل امضای دیجیتالی با تولید مجدد مقدار درهم همان واحد داده توسط الگوریتم قبلی، آغاز می شود .سپس امضای دیجیتالی ضمیمه سند توسط کلید همگانی امضا کننده رمزگشایی می شود و در نهایت نتایج حاصل مطابقت داده میشوند. چنانچه نتیجه یکسان بود، امضاء پذیرفته و در غیر اینصورت رد می شود.هدف از به کار گیری روشهای رمزنگاری در اینجا، اطمینان از یکپارچگی دادهها و معتبر بودن و اصالت امضاء کننده، جدا از کاربرد آن برای اطمینان از محرمانگی دادهها میباشد.
13 – امضاهای دیجیتال استاندارد
در این بخش ابتدا به معرفی مختصر و مقایسه اجمالی سه روش استاندارد امضاء دیجیتال می پردازیم.
الف: امضاء دیجیتال مبتنی بر RSA
این روش امضاء مبتنی بر الگوریتم رمز کلید همگانی RSA بوده و درسال 1991 توسط ANSI به عنوان استاندارد پذیرفته شد. روندهای تولید کلید، تولید امضاء و تصدیق امضاء در زیر آمده است.
تولید کلید :
هر کاربر مانند A، اعداد اول P و q را تولید و سپس عدد e را به گونهای تولید میکند که gcd (e, pq) = 1 باشد. در این صورت e دارای وارون ضربی d به پیمانه e است که در رابطه صدق میکند که در آن n=pq است. در این صورت زوج اعداد(e, n) کلید همگانی کاربر و اعداد (d, p, q) کلیدهای خصوصی (محرمانه) کاربر را تشکیل میدهند.
تولید امضاء :
1- کاربر A ابتدا با بکارگیری یکی از توابع درهمساز، چکیده پیام را بدست میآورد. در صورتیکه تابع درهمساز را h بنامیم چکیده پیام عبارت است از h(m). (در روش استاندارد استفاده از الگوریتمهای MD5 یا MD2 توصیه شده است).
2- سپس برای تولید امضاء مقدار modn s=(h(m))d را محاسبه مینماید. s امضاء A بر روی پیام m خواهد بود.
تصدیق امضاء :
برای بررسی صحت امضاء کاربر A بر روی پیام m، کاربر B اعمال زیر را انجام میدهد:
1- ابتدا یک کپی قابل اعتماد از کلید عمومی A یعنی (e, n) را بدست میآورد.
2- با بکارگیری تابع در همساز، چکیده پیام را بدست میآورد، یعنی f = h(m) را تشکیل میدهد.
3- با استفاده از کلید عمومی مقدار f1 = se mod n را محاسبه مینماید.
4- امضاء را میپذیرد اگر و تنها اگر f و f1 برابر باشند.
ب: استاندارد امضای دیجیتال DSS :
روش امضای DSS بر اساس سیستم رمزنگاری کلید همگانی الجمال استوار است. DSS در آگوست سال 1991 توسط مؤسسه ملی استاندارد و تکنولوژی آمریکا پیشنهاد شد و در سال 1993 به عنوان یک استاندارد پردازش اطلاعات فدرال دولت آمریکا پذیرفته گردید ((FIPS 186. DSS اولین روش امضای دیجیتالی بود که به صورت قانونی رسمیت یافت. در این روش به منظور کاهش اندازه امضاءها از زیرگروههای کوچک در Zp استفاده میشود. روشهای تولید کلید، تولید امضاء و تصدیق امضاء این روش در زیر آمدهاند:
