|
تاریخ امروز 29 جولای 2010, 16:29
|
مشاهده پست های بی پاسخ | مشاهده موضوعهای فعال
| نویسنده |
پیام |
|
arjmand
عضو: 19 نوامبر 2008, 07:05 پست ها: 160
|
 امضای دیجیتال چیست
مقدمه كاغذ به عنوان حامل اطلاعات مهم جاي خود را كمكم به ديگر راههاي تبادل اطلاعات ميدهد. در واقع كاغذ داراي معايبي از قبيل انتقال آهسته و پرهزينه اسناد ميباشد. همچنين شيوههاي ذخيرهسازي اطلاعات نيز بسرعت در حال تغيير است و بجاي بايگاني انبوه دستههاي كاغذ از روشهاي الكترونيكي استفاده ميشود. فنآوريهاي جديد انتقال اطلاعات، مانند EDI و پست الكترونيك و استفاده از سيستمهاي مديريت اسناد كامپيوتري نگارش، ارسال و ذخيره اطلاعات را سادهتر، سريعتر و حتي ايمنتر ساخته است. بخاطر ساختار غيرفيزيكي واسطه (وسيله حامل داده)، روشهاي سنتي علامتگذاري فيزيكي واسطه توسط مهر يا امضاء (براي مقاصد تجاري و حقوقي) غيرقابل استفاده ميباشند. هنگام كار با اسناد الكترونيكي، بايد علامتي براي تشخيص اصل بودن و سنديت بخشيدن به محتوي آن، به اطلاعات اضافه شود. بعضي شيوههاي جديد تنها براي سنديت بخشيدن به يك موجوديت جهت مجوزدهي به دسترسي استفاده ميشوند، براي مثال نبايد يك سيستم تشخيص هويت انگشتنگاري كامپيوتري، يك امضاي دستي اسكن شده يا وارد كردن اسم شخص در انتهاي يك E-mail را بعنوان يك جايگزين معتبر براي امضاهاي دستي پذيرفته زيرا همه عملكردهاي يك امضاي دستي را نخواهد داشت. با امضا كردن در پاي يك نوشته امضا كننده هويت خود را بعنوان نويسنده مشخص ميكند، جامعيت سند را تاييد نموده و بيان ميدارد كه به محتويات آن متعهد و پايبند ميباشد.
برخي از خواص مهم امضاهاي دستي عبارتند از: 1- امضاء يك شخص براي تمام مدارك يكسان است. 2- به راحتي توليد ميشوند. 3- به راحتي تميز داده ميشوند. 4- بايد به گونهاي باشند كه حتيالامكان به سختي جعل شوند. 5- به طور فيزيكي توليد ميشوند. يك امضاي ديجيتالي يك ابزار سنديت بخشيدن الكترونيكي ميباشد، كه منجر به سنديت بخشيدن به يك ركورد الكترونيكي از طريق رمزنگاري با كليد همگاني ميشود.
ويژگيهاي مهم امضاهاي ديجيتال عبارتند از: 1- در توليد آنها از اطلاعاتي كه به طور منحصر بفرد در اختيار امضا كننده است استفاده ميشود. 2- به طور خودكار و توسط رايانه توليد ميشوند. 3- امضاء هر پيام وابسته به كليه بيتهاي پيام است و هر گونه دستكاري و تغيير در متن سند موجب مخدوش شدن امضاء پيام ميگردد. 4- امضاء هر سندي متفاوت با امضاء اسناد ديگر است. 5- بايد به راحتي قابل بررسي و تاييد باشد تا از جعل و انكار احتمالي آن جلوگيري شود. ساختار اصلي امضاي ديجيتالي بدين صورت است كه نويسنده اطلاعات الكترونيكي اين اطلاعات را توسط كليد رمزنگاري محرمانه خود امضاء ميكند. اين كليد بايد توسط كاربر براي هميشه مخفي نگهداشته شود. امضاء توسط كليد همگاني مربوطه امضا كننده سند قابل كنترل ميباشد. اين كليد همگاني توسط عموم قابل رؤيت و دسترسي ميباشد.
|
| 25 نوامبر 2008, 07:04 |
|
 |
|
arjmand
عضو: 19 نوامبر 2008, 07:05 پست ها: 160
|
 Re: امضای دیجیتال چیست
امضاهاي ديجيتالي: مرحله به مرحله يك امضاي ديجيتالي مطابق روند زير ايجاد ميشود: - مرحله اول ايجاد واحد دادهايست كه بايد امضاء شود. براي مثال يك شيء اطلاعاتي بصورت ديجيتالي كه ميتواند متن، شكل و يا هر نوع ديگري از اطلاعات ديجيتالي باشد. - مرحله دوم ايجاد يك مقدار درهم (Hash Value) از داده كه معمولاً چكيده پيام ناميده ميشود، ميباشد. اين عمل نتيجه پردازشهاي رياضي يك الگوريتم ميباشد كه شكل ديجيتالي فشردهاي را ايجاد مينمايد. در صورتيكه حتي يك بيت از واحد داده تغيير كند، مقدار درهم مربوطه دستخوش تغييرات وسيع ميگردد. اين تكنيك، باعث ايجاد امضاي ديجيتالي با طول ثابت و قابل پيشبيني از قبل داده ميشود. - در مرحله سوم امضاءكننده مقدار درهم را با كليد محرمانه خود رمزگذاري ميكند و امضاي ديجيتالي خود براي واحد داده را ايجاد ميكند كه مقداري منحصر به فرد بوده و ميبايست به واحد داده متصل يا الحاق گردد. - بعنوان مرحله آخر، كنترل امضاي ديجيتالي با توليد مجدد مقدار درهم همان واحد داده توسط الگوريتم قبلي، آغاز مي شود .سپس امضاي ديجيتالي ضميمه سند توسط كليد همگاني امضا كننده رمزگشايي مي شود و در نهايت نتايج حاصل مطابقت داده ميشوند. چنانچه نتيجه يكسان بود، امضاء پذيرفته و در غير اينصورت رد مي شود. - هدف از به كار گيري روشهاي رمزنگاري در اينجا، اطمينان از يكپارچگي دادهها و معتبر بودن و اصالت امضاء كننده، جدا از كاربرد آن براي اطمينان از محرمانگي دادهها ميباشد.
|
| 25 نوامبر 2008, 07:05 |
|
 |
|
arjmand
عضو: 19 نوامبر 2008, 07:05 پست ها: 160
|
 Re: امضای دیجیتال چیست
امضاهاي ديجيتال استاندارد در اين بخش ابتدا به معرفي مختصر و مقايسه اجمالي سه روش استاندارد امضاء ديجيتال مي پردازيم.
الف: امضاء ديجيتال مبتني بر 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 بيت ميباشند.
|
| 25 نوامبر 2008, 07:08 |
|
 |
|
arjmand
عضو: 19 نوامبر 2008, 07:05 پست ها: 160
|
 Re: امضای دیجیتال چیست
پ: امضاي ديجيتال مبتني بر منحنيهاي بيضوي : الگوريتم امضاي ديجيتال مبتني بر منحنيهاي بيضوي 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 ميباشد، اين باعث ميشود كه طول كليدهايعمومي كاهش يابند.
|
| 25 نوامبر 2008, 07:10 |
|
 |
|
arjmand
عضو: 19 نوامبر 2008, 07:05 پست ها: 160
|
 Re: امضای دیجیتال چیست
مقايسة سه استاندارد امضاي ديجيتال 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 سال براي شكستن سيستم ميباشد. • تمام زمانها بر حسب ميليثانيه ميباشند.
|
| 25 نوامبر 2008, 07:10 |
|
 |
|
افراد آنلاین |
کاربران حاضر در این تالار: aryases و 7 مهمان |
|
شما نمی توانید در این تالار موضوع جدید باز کنید شما نمی توانید در این تالار به موضوع ها پاسخ دهید شما نمی توانید در این تالار پست های خود را ویرایش کنید شما نمی توانید در این تالار پست های خود را حذف کنید شما نمی توانید در این تالار ضمیمه ارسال کنید
|
|