منظور از امضای دیجیتال، تصویر دیجیتالی امضای دست نویس نیست بلکه شکلی از رمزنگاری است که برای اعتبارسنجی ارائه شده است. ایجاد امضای دیجیتال باعث جلب بیشتر مشتری شده و حرکتی به سوی محیط بدون کاغذ بازی است. در دوره ریاست جمهوری کلینتون قانونی تصویب شد که استفاده از امضای دیجیتالی را قانونی کرد. با این حال مفهوم امضای دیجیتال برای اکثر مردم هنوز ناشناخته است.

امضای دیجیتالی چیست؟

چنانچه گفتیم منظور از امضای دیجیتال تصویر امضای دست نویس نیست بلکه روشی برای اعتبارسنجی اطلاعات الکترونیکی است که توسط رمزنگاری استفاده می شود. چنانچه یک نفر با استفاده از کلید اختصاصی اطلاعات را رمزنگاری کرده باشد، فقط و فقط اوست که می تواند اطلاعات را رمزنگاری کرده باشد. بنابراین اگر رمزگشایی اطلاعات به درستی و با استفاده از کلید عمومی آن فرد انجام شود، خواهیم فهمید که اطلاعات از جانب آن فرد خاص آمده است. اگر عمل رمزنگاری بدرستی کار کند می توان از عدم تغییر اطلاعات در طول انتقال مطمئن شد بنابراین تمامیت اطلاعات تضمین می شود. می خواهیم با استفاده از امضای دیجیتال این حفاظت را یک قدم بجلو ببریم و اطلاعات را بعد از آنکه دریافت و رمزگشایی شد در برابر دستکاری حفاظت نماییم.در ابتدا اطلاعات وارد بلوک خردکننده پیام (Hash function) می شود. تابع خردکننده با استفاده از کلید از اطلاعات یک Checksum ایجاد می کند. Checksum بدست آمده اختصاصی رمزنگاری می شود. اطلاعات و Checksum رمز شده برای گیرنده اطلاعات فرستاده می شود. با دریافت اطلاعات توسط گیرنده، آنرا داخل همان تابع خردکننده قرار می دهد و Checksum اطلاعات یکبار دیگر و اینبار توسط گیرنده محاسبه می شود. از طرفی Checksum رمز شده دریافتی (که همراه پیام آمده است) رمزگشایی می شود و با Checksum محاسبه شده تطبیق داده می شود. در صورتیکه دو Checksum با هم یکسان باشند اطلاعات تغییر نکرده است. میزان امنیت و مفید بودن امضای دیجیتال به دو المان حیاتی زیر وابسته است:

  • حفاظت از کلید اختصاصی کاربر.
  • تابعی خردکننده ای که امن باشد.

اگر کاربر از کلید اختصاصی اش محافظت نکند نمی تواند مطمئن باشد فقط خودش آن را بکار می برد. اگر فرد دیگری کلید اختصاصی او را استفاده کند، تضمینی وجود ندارد که اطلاعات درخواستی فقط توسط کاربر امضاء شده باشد.

تابع خردکننده امن

برای امضای دیجیتال به تابع خردکننده(Hash function) نیاز داریم. این تابع را در صورتی امن می دانیم که :

  • تابع یک طرفه باشد، به عبارت دیگر تابع از روی اطلاعات Checksum را محاسبه می کند اما شما از روی Checksum اطلاعات را بازیابی نمایید.
  • ساختن دو قطعه اطلاعات که به هنگام عبور از این تابع، Checksum یکسان ایجاد نمایند بسیار سخت باشد.

برآورده کردن شرط دوم آسان نیست. Checksum باید از اطلاعات کوتاهتر شود تا امضاء ذخیره و ارسال آن آسانتر شود. از طرف دیگر برآورده کردن این شرط باعث می شود تعداد زیادی از قطعات مختلف اطلاعات داشته باشیم که به Checksumها نگاشته می شوند، آنچه تابع را امن می سازد روشی است که بر طبق آن بیت های اطلاعات اصلی به تمام بیت های موجود در Checksum نگاشته می شوند. به همین دلیل در صورت عوض کردن یک بیت اطلاعات، تعداد بیت های زیادی در Checksum عوض می شود. تابع خردکننده امن باید Checksum با حداقل طول 128 بیت تولید کند. دو تا از عمومی ترین توابع خردکننده امن عبارتند از MD5 که Checksum با128 بیت تولید می کند و SHA که Checksum با 160 بیت تولید می کند. توابع خردکننده بسیاری وجود دارد، اما اکثر آنها غیر امن می باشند. MD5 دارای نقطه ضعفی است که بروز حمله محاسباتی را ممکن می سازد. در این حمله امکان دارد قطعه دومی از اطلاعات پیدا شود که دارای همان Checksum باشد. SHA توسط دولت ایالات متحده ایجاد شد و در حال حاضر اعتقاد بر امن بودن آن است. اکثر نرم افزار های امنیتی MD5 و SHA را با هم ارائه می نمایند.

آشنایی با امضای ‌دیجیتالی (1)


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


به منظور ایجاد یک امضای دیجیتال از یک الگوریتم ریاضی به منظور ترکیب اطلاعات در یک کلید با اطلاعات پیام، استفاده می‌شود. ماحصل عملیات، تولید یک رشته مشتمل بر مجموعه‌ای از حروف و اعداد است. یک امضای دیجیتال صرفاً به شما نخواهد گفت که «این شخص یک پیام را نوشته است» بلکه در بردارنده این مفهوم مهم است که: <<این شخص این پیام را نوشته است>>.

امضای دیجیتال وسیله‌ی است که اصل بودن پیام یا فایل اطلاعاتی را در تبادلات الکترونیکی نشان می‌دهد؛ به طوری که:

* گیرنده می‌تواند هویت فرستنده را کنترل کند.

*  فرستنده بعداً نمی‌تواند پیام ارسالی خود را تکذیب کند.

* امکان جعل امضا وجود نداشته و هر کس امضای منحصر به فرد خود را دارد.

 

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

درواقع امضای دیجیتالی به ما این اطمینان را می‌دهد كه اطلاعات دقیقا از شخص مورد نظر ارسال شده و در حین جا به ‌جایی دچار كوچك‌ترین تغییری نشده است.

امضای دیجیتالی یا همان قفل کردن اطلاعات یک روش کاملاً ریاضی است. چیزی که لازم است شماره‌های رمزی است که یکطرفه عمل می‌کنند. رمزهای یکطرفه رمزهای هستند که فقط از یک جهت خوانده می‌شوند. اگر یک عدد جا به جا شود کل رمز باطل می‌شود

 امضاهای دیجیتال در بسیاری از جنبه‌ها مشابه امضاهای سنتی دستی هستند؛ انجام امضاهای دیجیتال به شکل صحیح بسیار مشکلتر از یک امضای دستی است. طرح‌ها فایل امضای دیجیتال بر مبنای رمزنگاری نامتقارن هستند و می بایست به شکل صحیح صورت گیرد تا موثر واقع شود. همچنین امضاهای دیجیتال می‌توانند امضاهایی غیرقابل انکار را ایجاد کنند به این معنی که شخص امضاکننده نمی‌تواند تا زمانی که کلید شخصی فرد به صورت مخفی باقی مانده است، ادعا کند که من این نامه که امضای من را به همراه دارد، امضا نکرده ام. ولی در زمانی که کلید شخصی فرد در شبکه از حالت مخفی خارج شود یا زمان اعتبار امضای او به اتمام برسد شخص می‌تواند امضای دیجیتال خود را انکار کند هرچند که در این حالت نیز با وجود ساختار قوی امضای دیجیتال، این امضا اعتبار خود را حفظ می‌کند. پیغام‌های امضا شده با امضای دیجیتال امکان ارائه به صورت یک رشته بیتی را دارند. مانند: پست الکترونیک، قراردادها و یا پیام هایی که از طریق قواعد رمزنگاری‌های دیگر ارسال شده باشند.

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

مطمئناً در مورد مسائل شخصی به همین راحتی با کسی صحبت نمی‌‌کنیم؛ در مورد بعضی مسائل هم نه تنها صحبت نمی‌‌کنیم؛ بلکه محتاط هم هستیم، مثلاً در مورد حساب بانکی!در صورتی كه شما قصد دارید اطلاعات بسیار مهمی ‌را ارسال كنید، ولی می‌خواهید شخص سومی ‌به آنها دسترسی پیدا نكند، بهتر است از امضای دیجیتال استفاده كنید. این روش یكی از روش‌های ایجاد امنیت برای اطلاعات است كه در حال حاضر می‌توان از آن به عنوان امن‌ترین روش برای جا به جا كردن پیغام نام برد.

کلاوس پتر اشنور (Claus Peter Schnorr) یکی از طراحان امضاهای دیجیتالی است. او می‌گوید: این امضاها مثل رمزنویسی است. از طریق  امضای دیجیتالی اطلاعات را قفل می‌کنید و  مطمئن می‌شوید که کس دیگری به آنها دسترسی پیدا نمی‌‌کند. این اطمینان تضمین شده است.

وب سایتهای اینترنتی که این قفلهای مطمئن را در اختیار دارند به راحتی قابل تشخیص‌اند. وقتی وارد این سایتها می‌شوید یک کلید زرد رنگ کوچک در سمت چپ صفحه می‌بینید. این یعنی اینکه اطلاعاتی که فرستنده ارسال می‌کند قفل شده به گیرنده می‌رسند، اطلاعات را کس دیگری نمی‌تواند بخواند و یا تغییر بدهد. گیرنده برنامه مخصوصی در اختیار دارد که قفل اطلاعات فرستاده شده را باز می‌کند. برنامه  پیچیده‌ای که به راحتی هک شدنی نیستند. امضا کننده نیازی ندارد از اطلاعات پس زمینه نرم افزاری سر در بیاورد، فقط باید بداند روی کدام دکمه باید کلیک کند تا امضا تایید شود. این روزها معمول ترین نوع امضاهای اینترنتی، امضاهایی هستند که شما اصلاً نمی‌دانید امضا کرده‌اید. مثلاً وقتی یک برنامه نرم افزاری را دانلود می‌کنید باید مطمئن باشید که نرم افزاری که دارید دانلود می‌کنید ارژینال است. این هم وقتی شدنی است که این نرم افزار با کلید امضا همراه باشد که آن هم توسط فرستنده کنترل می‌شود.

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

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

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

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

 

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

3- امضای دیجیتال امنیت چه چیزی را تامین می کند؟

  • تصدیق هویت: تصدیق هویت اطمینان از اینکه شخص یا طرفی که با آن در حال ارتباط هستیم همان کسی است که ما انتظار داریم و خودش می گوید.
  • محرمانه بودن: اطلاعات درون پیغامها و یا تبادلات محرمانه می شوند و تنها برای اشخاص دریافت کننده و ارسال کننده قابل فهم و خواندن می باشد.
  • امانت داری: اطلاعاتی که درون پیغام و یا تبادلات وجود دارد در طول مسیر به طور اتفاقی یا عمدی مورد دستبرد قرار نمی گیرند.
  • غیر قابل انکار بودن: ارسال کننده نمیتواند منکر ارسال پیام یا تبادل مالی شود و دریافت کننده هم نمیتواند منکر دریافت آن شود.  

4- روش ایجاد امضای دیجیتال

قبل از آشنائی با نحوه عملکرد يک امضای ديجيتال، لازم است در ابتدا با برخی اصطلاحات مرتبط با اين موضوع بيشتر آشنا شويم:

  • کليدها (Keys): از کليدها به منظور ايجاد امضاهای ديجيتال استفاده می گردد. برای هر امضای ديجيتال، يک کليد عمومی و يک کليد خصوصی وجود دارد. کليد خصوصی، بخشی از کليد است که که شما از آن به منظور امضای يک پيام استفاده می نمائيد. کليد خصوصی يک رمز عبور حفاظت شده بوده و نمی بايست آن را در اختيار ديگران قرار داد. کليد عمومی، بخشی از کليد است که امکان استفاده از آن برای ساير افراد وجود دارد. زمانی که کليد فوق برای يک حلقه کليد عمومی (public key ring)  و يا يک شخص خاص ارسال می گردد، آنان با استفاده از آن قادر به بررسی امضای شما خواهند بود.
  • حلقه کليد (Key Ring): شامل کليد های عمومی است. يک حلقه کليد از کليد های عمومی افرادی که برای شما کليد مربوط  به خود را ارسال نموده و يا کليدهائی که از طريق يک سرويس دهنده کليد عمومی دريافت نموده ايد، تشکيل می گردد. يک سرويس دهنده کليد عمومی شامل کليد افرادی است که امکان ارسال کليد عمومی در اختيار آنان گذاشته شده است.
  • اثر انگشت: زمانی که يک کليد تائيد می گردد در حقيقت منحصربفرد بودن مجموعه ای از حروف و اعداد که اثر انگشت يک کليد را شامل می شوند تائيد می گردد.
  • گواهينامه های کليد: در زمان انتخاب يک کليد از روی يک حلقه کليد، امکان مشاهده گواهينامه (مجوز) کليد وجود خواهد داشت. دراين رابطه می توان به اطلاعات متفاوتی نظير صاحب کليد، تاريخ ايجاد و اعتبار کليد دست يافت.

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

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

5- روش های تولید امضاء دیجیتالی

در طول سالها تحقیق در زمینه امنیت کامپیوتر روشها و متد های مختلفی برای امضاهای دیجیتالی ابداع شده است ولی چیزی در همه ی آنها عمومیت دارد این است که همه ی روش های تولید امضای دیجیتالی به ماهیت پیام وابسته اند. روش های زیر از مهم ترین روش های تولید امضای دیجیتالی است:

  • امضاهای دیجیتالی مبتنی بر چکیده پیام: در این روش متن پیام دست نخورده باقی می ماند و تنها یک امضای چند بایتی به آن اضافه می شود.
  • امضاهای دیجیتالی کلید متقارن: این امضاها مبتنی بر یک مرکز گواهی امضا هستند.
  • امضاهای مبتنی بر روش های رمز نگاری کلید عمومی
  • امضاهای مبتنی بر تبدیل های مستقل از سیستم های رمز نگاری

6- ويژگي‌هاي امضاهاي ديجيتال

ويژگي‌هاي مهم امضاهاي ديجيتال عبارتند از:

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

7- حملات ممکن علیه امضاهای دیجیتالی

  • حمله Key-only : در این حمله، دشمن تنها کلید عمومی امضاء‌کننده را می‌داند و بنابراین فقط توانایی بررسی صحت امضاهای پیام‌هایی را که به وی داده شده‌اند، دارد.
  • حمله Known Signature : دشمن، کلید عمومی امضاء‌کننده را می‌داند و جفت‌های پیام/امضاء که به ‌وسیله صاحب امضاء انتخاب و تولید شده ‌است را دیده است. این حمله در عمل امکان‌پذیر است و بنابراین هر روش امضایی باید در مقابل آن امن باشد.
  • حمله Chosen Message : به دشمن اجازه داده می‌شود که از امضاء‌کننده بخواهد که تعدادی از پیام‌های به انتخاب او را امضاء کند. انتخاب این پیام‌ها ممکن است به امضاهای از قبل گرفته ‌شده بستگی داشته باشد. این حمله در غالب حالات، ممکن است غیرعملی به نظر برسد، اما با پیروی از قانون احتیاط، روش امضایی که در برابر آن ایمن است، ترجیح داده می‌شود.
  • حمله Man-in-the-middle : در این حمله، شخص از موقعیت استفاده کرده در هنگام مبادله کلید عمومی، کلید عمومی خود را جایگزین کرده و برای گیرنده می‌فرستد و بدین‌گونه می‌تواند به پیام‌ها دسترسی داشته باشد بدون اینکه فرستنده و گیرنده، مطلع باشند.

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

-------------------------------------------------

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

یک امضای دیجیتال صرفاً به شما نخواهد گفت که «این شخص یک پیام را نوشته است»
بلکه در بردارنده این مفهوم مهم است که: «این شخص این پیام را نوشته است».

کاغذ به عنوان حامل اطلاعات مهم جای خود را کم کم به دیگر راه های تبادل اطلاعات می دهد. در واقع کاغذ دارای معایبی از قبیل انتقال آهسته و پرهزینه اسناد می باشد. همچنین شیوه های ذخیره سازی اطلاعات نیز به سرعت در حال تغییر است و به جای بایگانی انبوه دسته های کاغذ از روش های الکترونیکی استفاده می شود. فناوری های جدید انتقال اطلاعات، مانند EDI و پست الکترونیک و استفاده از سیستم های مدیریت اسناد کامپیوتری نگارش، ارسال و ذخیره اطلاعات را ساده تر، سریع تر و حتی ایمن تر ساخته است.

به خاطر ساختار غیر فیزیکی واسطه (وسیله حامل داده)، روش های سنتی علامت گذاری فیزیکی واسطه توسط مهر یا امضا (برای مقاصد تجاری و حقوقی) غیر قابل استفاده می باشند. هنگام کار با اسناد الکترونیکی، باید علامتی برای تشخیص اصل بودن و سندیت بخشیدن به محتوای آن، به اطلاعات اضافه شود. بعضی شیوه های جدید تنها برای سندیت بخشیدن به یک موجودیت جهت مجوزدهی به دسترسی، استفاده می شوند؛ برای مثال نباید یک سیستم تشخیص هویت انگشت نگاری کامپیوتری، یک امضای دستی اسکن شده یا وارد کردن اسم شخص در انتهای یک E-mail را به عنوان یک جایگزین معتبر برای امضاهای دستی پذیرفته زیرا همه عملکردهای یک امضای دستی را نخواهد داشت.

با امضا کردن در پای یک نوشته، امضا کننده هویت خود را به عنوان نویسنده مشخص می کند، جامعیت سند را تأیید نموده و بیان می دارد که به محتویات آن متعهد و پایبند می باشد.

برخی از خواص مهم امضاهای دستی عبارت است از:

  1. امضای یک شخص برای تمام مدارک یکسان است.
  2. به راحتی تولید می شوند.
  3. به راحتی تمیز داده می شوند.
  4. باید به گونه ای باشند که حتی الامکان به سختی جعل شوند.
  5. به طور فیزیکی تولید می شوند. یک امضای دیجیتالی یک ابزار سندیت بخشیدن الکترونیکی می باشد، که منجر به سندیت بخشیدن به یک رکورد الکترونیکی از طریق رمزنگاری با کلید همگانی می شود.

ویژگی های مهم امضاهای دیجیتال عبارت است از:

  1. در تولید آنها از اطلاعاتی که به طور منحصر به فرد در اختیار امضا کننده است، استفاده می شود.
  2. به طور خودکار و توسط رایانه تولید می شوند.
  3. امضای هر پیام وابسته به کلیه بیت های پیام است و هر گونه دستکاری و تغییر در متن سند موجب مخدوش شدن امضای پیام می گردد.
  4. امضای هر سندی متفاوت با امضای اسناد دیگر است.
  5. باید به راحتی قابل بررسی و تأیید باشد تا از جعل و انکار احتمالی آن جلوگیری شود. ساختار اصلی امضای دیجیتالی بدین صورت است که نویسنده اطلاعات الکترونیکی این اطلاعات را توسط کلید رمزنگاری محرمانه خود امضا می کند. این کلید باید توسط کاربر برای همیشه مخفی نگه داشته شود. امضا توسط کلید همگانی مربوطه امضا کننده، سند قابل کنترل می باشد. این کلید همگانی توسط عموم قابل رؤیت و دسترسی می باشد.

علت استفاده از یک امضای دیجیتال چیست؟

بهتر است برای پاسخ به سؤال فوق، سؤالات دیگری را مطرح کنیم!

برای تشخیص و تأیید هویت فرد ارسال کننده یک نامه الکترونیکی از چه مکانیزم هایی استفاده می شود؟

فرض کنید یک نامه الکترونیکی را از یکی از دوستان خود دریافت داشته اید که از شما درخواست خاصی را می نماید، پس از مطالعه پیام برای شما دو سؤال متفاوت مطرح می گردد:

  • آیا این نامه را واقعاً وی ارسال نموده است؟
  • آیا محتوای نامه ارسالی واقعی است و وی دقیقاً همین درخواست را داشته است؟

آیا وجود هر نامه الکترونیکی در صندوق پستی، نشان دهنده صحت محتوا و تأیید هویت فرد ارسال کننده آن است؟

امروزه سوء استفاده از آدرس های Email برای مهاجمان و ویروس ها به امری متداول تبدیل شده است و با توجه به نحوه عملکرد آنان در برخی موارد شناسایی هویت فرد ارسال کننده یک پیام بسیار مشکل و در برخی موارد غیر ممکن است. تشخیص غیر جعلی بودن نامه های الکترونیکی در فعالیت های تجاری و بازرگانی دارای اهمیت فراوانی است. یک نامه الکترونیکی شامل یک امضای دیجیتال، نشان دهنده این موضوع است که محتوای پیام از زمان ارسال تا زمانی که به دست شما رسیده است، تغییر نکرده است. در صورت بروز هر گونه تغییر در محتوای نامه، امضای دیجیتال همراه آن از درجه اعتبار ساقط می شود.

نحوه عملکرد یک امضای دیجیتال

قبل از آشنایی با نحوه عملکرد یک امضای دیجیتال، لازم است در ابتدا با برخی اصطلاحات مرتبط با این موضوع بیشتر آشنا شویم:

کلیدها (Keys)

از کلیدها به منظور ایجاد امضاهای دیجیتال استفاده می گردد. برای هر امضای دیجیتال، یک کلید عمومی و یک کلید خصوصی وجود دارد:

کلید خصوصی، بخشی از کلید است که شما از آن به منظور امضای یک پیام استفاده می نمایید. کلید خصوصی یک رمز عبور حفاظت شده بوده و نمی بایست آن را در اختیار دیگران قرار داد.

کلید عمومی، بخشی از کلید است که امکان استفاده از آن برای سایر افراد وجود دارد. زمانی که کلید فوق برای یک حلقه کلید عمومی (public key ring) و یا یک شخص خاص ارسال می گردد، آنان با استفاده از آن قادر به بررسی امضای شما خواهند بود.

حلقه کلید (Key Ring)

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

اثر انگشت

زمانی که یک کلید تأیید می گردد، در حقیقت منحصر به فرد بودن مجموعه ای از حروف و اعداد که اثر انگشت یک کلید را شامل می شوند. تأیید می گردد.

گواهینامه های کلید

در زمان انتخاب یک کلید از روی یک حلقه کلید، امکان مشاهده گواهینامه (مجوز) کلید وجود خواهد داشت. در این رابطه می توان به اطلاعات متفاوتی نظیر صاحب کلید، تاریخ ایجاد و اعتبار کلید دست یافت.

نحوه ایجاد و استفاده از کلیدها

  1. تولید یک کلید با استفاده از نرم افزارهایی نظیر PGP (اقتباس شده از کلمات Pretty Good Privacy) و یا GnuPG (اقتباس شده از کلمات GNU Privacy Guard)
  2. معرفی کلید تولید شده به سایر همکاران و افرادی که دارای کلید می باشند.
  3. ارسال کلید تولید شده به یک حلقه کلید عمومی تا سایر افراد قادر به بررسی و تأیید امضای شما گردند.
  4. استفاده از امضای دیجیتال در زمان ارسال نامه های الکترونیکی. اکثر برنامه های سرویس دهنده پست الکترونیکی دارای پتانسیلی به منظور امضای یک پیام می باشند.

------------------------------

امضای دیجیتال چیست؟

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

بخاطر ساختار غيرفيزيكي واسطه (وسيله حامل داده)، روشهاي سنتي علامتگذاري فيزيكي واسطه توسط مهر يا امضاء (براي مقاصد تجاري و حقوقي) غيرقابل استفاده ميباشند.
هنگام كار با اسناد الكترونيكي، بايد علامتي براي تشخيص اصل بودن و سنديت بخشيدن به محتوي آن، به اطلاعات اضافه شود. بعضي شيوه هاي جديد تنها براي سنديت بخشيدن به يك موجوديت جهت مجوزدهي به دسترسي استفاده مي شوند، براي مثال نبايد يك سيستم تشخيص هويت انگشت نگاري كامپيوتري، يك امضاي دستي اسكن شده يا وارد كردن اسم شخص در انتهاي يك E-mail را بعنوان يك جايگزين معتبر براي امضاهاي دستي پذيرفته زيرا همه عملكردهاي يك امضاي دستي را نخواهد داشت.
با امضا كردن در پاي يك نوشته امضا كننده هويت خود را بعنوان نويسنده مشخص مي كند، جامعيت سند را تاييد نموده و بيان مي دارد كه به محتويات آن متعهد و پايبند مي باشد.

برخي از خواص مهم امضاهاي دستي عبارتند از:
1- امضاء يك شخص براي تمام مدارك يكسان است.
2- به راحتي توليد مي شوند.
3- به راحتي تميز داده مي شوند.
4- بايد به گونه اي باشند كه حتي الامكان به سختي جعل شوند.
5- به طور فيزيكي توليد مي شوند.
يك امضاي ديجيتالي يك ابزار سنديت بخشيدن الكترونيكي مي باشد، كه منجر به سنديت بخشيدن به يك ركورد الكترونيكي از طريق رمزنگاري با كليد همگاني مي شود.

ويژگي هاي مهم امضاهاي ديجيتال عبارتند از:
1- در توليد آنها از اطلاعاتي كه به طور منحصر بفرد در اختيار امضا كننده است استفاده مي شود.
2- به طور خودكار و توسط رايانه توليد مي شوند.
3- امضاء هر پيام وابسته به كليه بيتهاي پيام است و هر گونه دستكاري و تغيير در متن سند موجب مخدوش شدن امضاء پيام مي گردد.
4- امضاء هر سندي متفاوت با امضاء اسناد ديگر است.
5- بايد به راحتي قابل بررسي و تاييد باشد تا از جعل و انكار احتمالي آن جلوگيري شود.
ساختار اصلي امضاي ديجيتالي بدين صورت است كه نويسنده اطلاعات الكترونيكي اين اطلاعات را توسط كليد رمزنگاري محرمانه خود امضاء مي كند. اين كليد بايد توسط كاربر براي هميشه مخفي نگهداشته شود. امضاء توسط كليد همگاني مربوطه امضا كننده سند قابل كنترل مي باشد. اين كليد همگاني توسط عموم قابل رؤيت و دسترسي مي باشد.

امضاهاي ديجيتالي: مرحله به مرحله
يك امضاي ديجيتالي مطابق روند زير ايجاد مي شود:
- مرحله اول ايجاد واحد داده ايست كه بايد امضاء شود. براي مثال يك شيء اطلاعاتي بصورت ديجيتالي كه ميتواند متن، شكل و يا هر نوع ديگري از اطلاعات ديجيتالي باشد.
- مرحله دوم ايجاد يك مقدار درهم (Hash Value) از داده كه معمولاً چكيده پيام ناميده ميشود، مي باشد. اين عمل نتيجه پردازشهاي رياضي يك الگوريتم ميباشد كه شكل ديجيتالي فشرده اي را ايجاد مي نمايد. در صورتيكه حتي يك بيت از واحد داده تغيير كند، مقدار درهم مربوطه دستخوش تغييرات وسيع مي گردد. اين تكنيك، باعث ايجاد امضاي ديجيتالي با طول ثابت و قابل پيش بيني از قبل داده مي شود.
- در مرحله سوم امضاءكننده مقدار درهم را با كليد محرمانه خود رمزگذاري مي كند و امضاي ديجيتالي خود براي واحد داده را ايجاد مي كند كه مقداري منحصر به فرد بوده و مي بايست به واحد داده متصل يا الحاق گردد.
- بعنوان مرحله آخر، كنترل امضاي ديجيتالي با توليد مجدد مقدار درهم همان واحد داده توسط الگوريتم قبلي، آغاز مي شود .سپس امضاي ديجيتالي ضميمه سند توسط كليد همگاني امضا كننده رمزگشايي مي شود و در نهايت نتايج حاصل مطابقت داده مي شوند. چنانچه نتيجه يكسان بود، امضاء پذيرفته و در غير اينصورت رد مي شود.
- هدف از به كار گيري روشهاي رمزنگاري در اينجا، اطمينان از يكپارچگي داده ها و معتبر بودن و اصالت امضاء كننده، جدا از كاربرد آن براي اطمينان از محرمانگي داده ها مي باشد.

امضاهاي ديجيتال استاندارد
در اين بخش ابتدا به معرفي مختصر و مقايسه اجمالي سه روش استاندارد امضاء ديجيتال مي پردازيم.

الف: امضاء ديجيتال مبتني بر 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 استفاده مي شود. روشهاي توليد كليد، توليد امضاء و تصديق امضاء اين روش در زير آمده اند:

توليد كليد :
هر كاربر مانند A اعمال زير را انجام مي دهد.
1- عدد اول q را طوري انتخاب مي نمايد كه 2159 < q < 2160 باشد.
2- عدد اول 1024 بيتي p را طوري انتخاب مي نمايد كه .q|(p-1) DSS توصيه مي كند كه 2511+64t < P < 2512+64t باشد كه در آن . اگر t=8 اختيار شود آنگاه p يك عدد اول 1024 بيتي خواهد بود).
3- عنصر را انتخاب مي نمايد و مقدارg=h(p-1)/q mod p را محاسبه مي نمايد. اين مرحله تا زماني كه شود تكرار مي شود (g مولد يك زير گروه دوري از مرتبة q در مي باشد).
4- يك عدد صحيح تصادفي x در محدوده [1, q-1] را انتخاب مي نمايد.
5- مقدار y = gxmod p را محاسبه مي كند.
6- كليد عمومي A عبارت از (p, q, g, y) بوده و كليد خصوصي وي x مي باشد.
توليد امضاء :
براي امضاء نمودن پيام A, m بايد اعمال زير را انجام دهد:
1- يك عدد صحيح تصادفي k در محدودة [1, q-1] را انتخاب مي نمايد.
2- مقدار r = (gkmod p) mod q را محاسبه مي نمايد.
3- مقدار k-1 mod q را حساب مي كند.
4- مقدار s = k-1{h(m) + xr} mod q را محاسبه مي نمايد كه h(0) تابع درهم SHA-1 مي باشد.
5- در صورتيكه 0 = S باشد به مرحلة 1 برمي گردد. (در صورتيكه 0 = S باشد S-1 mod q موجود نخواهد بود، S-1 در مرحلة 3 از تصديق امضاء كاربرد دارد).
6- امضاء پيام m عبارت است از زوج (r, s)

تصديق امضاء :
براي تصديق امضاء A بر روي پيام m يعني (r, s) شخص B بايد مراحل زير را انجام دهد.
1- يك كپي قابل اعتماد از كليد عمومي A يعني (p, q, g, y) را بدست آورد.
2- تصديق كند كه s, r در محدودة [1, q-1] قرار دارند.
3- مقدار w=s-1mod q و h(m) را محاسبه نمايد.
4- مقدار u1 = (h(m) w) mod q و u2 = (rw) mod q را محاسبه نمايد.
5- مقدار v = (gu1gu2 mod p) mod q را حساب كند.
6- امضاء را بپذيرد اگر و تنها اگر v=r باشد.
چون s, r هر كدام اعداد صحيح كوچكتر از q مي باشند. امضاء هاي توليد شده توسط DS داراي اندازة حداكثر 320 بيت مي باشند.

پ: امضاي ديجيتال مبتني بر منحني هاي بيضوي :
الگوريتم امضاي ديجيتال مبتني بر منحني هاي بيضوي ECDSA مشابه با DSS مي باشد. بدين معني كه به جاي كار در يك زير گروه مرتبة q از ، در گروه نقاط روي منحني بيضوي روي Zp كار مي كنيم.
ECDSA هم اكنون در كميته هاي يك استاندارد ANSI X9F1 و IEEE P1363 و ISO SC27 به عنوان استاندارد پذيرفته شده است. جدول 1 تناظر بين نمادهاي رياضي بكار گرفته شده در DSS و ECDSA را نشان مي دهد.


نمادهاي ECDSA نمادهاي DSA
N
P
D
Q Q
g
x
y
جدول 1 : تناظر بين نمادهاي رياضي بكار گرفته شده در DSS و ECDSA

مراحل توليد كليد، توليد امضاء و تصديق امضاء براي ECDSA در زير آمده است:
توليد كليد :
براي توليد كليد هر عضو A بايد اعمال زير را انجام دهد.
1- يك منحني بيضوي E بر روي Zp انتخاب نمايد. تعداد نقاط موجود در E(Zp) بايد بر عدد اول بزرگ n قابل تقسيم باشد.
2- يك نقطة از مرتبة n را انتخاب نمايد.
3- عدد صحيح تصادفي d را در محدودة [1, n-1) انتخاب نمايد.
4- مقدار Q = dP را محاسبه نمايد.
5- كليد عمومي A عبارت است از (E, P, n, Q) و كليد خصوصي وي d است.
توليد امضاء :
براي امضاء نمودن پيام A, m بايد مراحل زير را انجام دهد.
1- عدد صحيح و تصادفي k را در محدودة [1, n-1] انتخاب نمايد.
2- مقدار kP = (x1, y1) و r = x1 mod n را محاسبه نمايد. (در اينجا x1 يك عدد صحيح در نظر گرفته مي شود. در صورتيكه r=0 باشد آنگاه به مرحلة 1 باز مي گردد. (اين يك شرط امنيتي است زيرا اگر r=0 باشد آنگاه معادلة امضاء s = k-1{h(m) + dr} كليد خصوصي d را در بر ندارد).
3- مقدار k-1 mod n را محاسبه نمايد.
4- مقدار s = k-1{h(m) + dr} mod n را محاسبه نمايد كه h تابع درهم ساز SHA-1 مي باشد.
5- در صورتيكه s=0 باشد به مرحلة 1 باز مي گردد. (در صورتيكه s=0 باشد آنگاه s-1mod n وجود ندارد. s-1 در مرحلة سوم تصديق امضاء به كار مي آيد).
6- امضاء پيام m زوج (r, s) است.
تصديق امضاء :
شخص B براي تصديق امضاء (r, s) متعلق به A بر روي پيام m بايد مراحل زير را انجام دهد.
1- يك كپي قابل اعتماد از كليد عمومي (E, P, n, Q) مربوط به A بدست آورد.
2- بررسي كند كه s, r اعداد صحيحي در بازة [1, n-1] باشند.
3- مقادير w = s-1 mod n و h(m) را محاسبه نمايد.
4- مقادير u1 = h(m) w (mod n) و u2 = rw mod n را محاسبه نمايد.
5- مقادير u1P+u2Q = (x0, y0) و v = x0 mod n را محاسبه نمايد.
6- امضاء را بپذيرد اگر و تنها اگر v = r باشد.
استاندارد ANSI X9.62 توصيه مي كند كه n>2160 اختيار شود. براي رسيدن به سطح امنيتي مشابه با DSA (با q به طول 160 بيت و p با طول 1024 بيت) پارامتر n بايد حدوداً 160 بيتي باشد در اين صورت DSA و ECDSA داراي طول امضاء هاي مشابهي مي باشند 320) بيت). در اين روش بجاي اينكه هر يك از اعضاء براي خود يك منحني بيضوي انتخاب نمايند مي توانند همگي از يك منحني بيضوي مانند E بر روي Zp و نقطة P از مرتبة n استفاده كنند. اين مقادير اصطلاحاً پارامترهاي سيستم ناميده مي شوند. (در DSS پارامترهاي متناظر عبارتند از (g, q, p)، در اين صورت كليد عمومي هر شخص تنها نقطة Q مي باشد، اين باعث مي شود كه طول كليدهاي عمومي كاهش يابند.

مقايسة سه استاندارد امضاي ديجيتال DSS, RSA و ECDSA :
در جدول 2 مشخصات عمومي هر سه استاندارد امضاي ديجيتال آورده شده است. در روش استاندارد مبتني RSA براي بدست آوردن چكيدة پيام مجبور به بكارگيري تابع درهم ساز خاصي نيستيم ولي توصية ANSI اين است كه بهتر است از MD2 يا MD5 استفاده شود. در صورتيكه در دو استاندارد ديگر بكارگيري SHA-1 اجباري است. نكتة ديگر اينكه امضاي ديجيتال مبتني بر منحني هاي بيضوي توسط سه مؤسسه IEEE, ANSIو ISO انجام گرفته است كه اصول هر سه يكي است.

مشخصات

نام استاندارد امضاء سيستم رمزنگاري مبنا تابع درهم ساز بكارگرفته شده نام استاندارد و مؤسسه استانداردكننده سال پذيرفته شدن
DSS الجمال SHA-1 FIPS 186-2
(ANSI X9.30) 1991
RSA RSA MD2
MD5 ANSI X9.31 1991
ECDSA الجمال SHA-1 ANSI X9.62
IEEE PI363
ISO SC27 1998
جدول 2 : مشخصات عمومي سه استاندارد امضاي ديجيتال

در جدول 3 مقايسه اي بين سه استاندارد امضاي ديجيتال براي پارامترهاي مختلف بعمل آمده است. مبناي محاسبات اجراي هر كدام از سيستم ها بر روي يك كامپيوتر Pentium III با فركانس كلاك 850 MHZ و با Cashe, 256 مي باشد.
مشخصه

نام استاندارد استحكام اندازه كليد عمومي اندازه كليد خصوصي اندازه امضــاء زمان
اوليــه زمان توليد كليــد زمان
امضــاء زمان
تصديق
DSS
512 104 1900 1600 368 0 34 21 33
DSS
1024 1011 3500 2680 368 0 18 68 122
ECDSA
160 1011 170 163 336 1162 103 91 431
RSA
1024 1011 1080 2624 1024 0 4100 67 3
ECDSA
224 1020 240 232 464 2040 100 102 594
RSA
2048 1020 2104 5184 2048 0 68000 460 16
جدول 3:مقايسة پارامترهاي مختلف سه استاندارد امضاي ديجيتالCDSA, RSA, DSS
در مورد جدول فوق بايد نكات زير را در نظر گرفت:
اعداد نوشته شده در برابر استاندارد DSS معرف طول عدد اول p، در RSA معرف طول عدد n و در ECSA معرف طول عدد اول p مي باشند.
تمام طول كليدها بر حسب بيت مي باشند.
استحكام بر حسب MIPS سال براي شكستن سيستم مي باشد

تمام زمانها بر حسب ميلي ثانيه مي باشند.


نویسنده  : علیرضارضائی