digital signature چيست؟
digital signature يا امضاي ديجيتال يك روش رياضي است كه براي اعتبار سنجي و صحت يك پيام، نرم افزار يا سند ديجيتالي مورد استفاده قرار مي گيرد. اين معادل ديجيتالي امضاي دست نويس يا مهر است، اما امنيت ذاتي بيشتري را ارائه مي دهد. يك امضاي ديجيتالي براي حل مشكل دستكاري و جعل هويت در ارتباطات ديجيتالي در نظر گرفته شده است. امضاي ديجيتال مانند “اثر انگشت” الكترونيكي است. در قالب يك پيام رمزگذاري شده، به طور ايمن يك امضا كننده را با يك سند در يك معامله ثبت شده مرتبط مي كند.
امضاهاي ديجيتالي مي توانند شواهد مبدا، هويت و وضعيت اسناد الكترونيكي، معاملات يا پيام هاي ديجيتالي را ارائه دهند. امضا كنندگان همچنين مي توانند از آنها براي تأييد رضايت آگاهانه استفاده كنند.
digital signature (امضاي ديجيتال) چگونه كار مي كند؟
امضاهاي ديجيتالي، مانند امضاهاي دست نويس، براي هر امضا كننده منحصر به فرد است. ارائه دهندگان راه حل امضاي ديجيتال، مانند DocuSign، از پروتكل خاصي به نام PKI پيروي مي كنند. PKI از ارائه دهنده مي خواهد كه از يك الگوريتم رياضي براي توليد دو عدد طولاني، به نام كليد استفاده كند. اين امضا بر اساس رمزنگاري كليد عمومي است كه به رمزنگاري نامتقارن نيز معروف است. با استفاده از الگوريتم كليد عمومي، مانند RSA (Rivest-Shamir-Adleman)، دو كليد ايجاد مي شود كه يك جفت كليد مرتبط رياضي ايجاد مي كند، يكي خصوصي و ديگري عمومي.
براي درك بهتر نحوه عملكرد امضاي ديجيتال، با اصطلاحات زير آشنا شويد:
ـ Hash function: يك تابع هش (همچنين “هش” ناميده مي شود) يك رشته با طول ثابت از اعداد و حروف است كه از يك الگوريتم رياضي و يك فايل با اندازه دلخواه مانند ايميل، سند، تصوير يا نوع ديگري از داده توليد مي شود. اين رشته ايجاد شده منحصر به فايل در حال هش شده است و يك تابع يك طرفه است-يك هش محاسبه شده را نمي توان معكوس كرد تا فايلهاي ديگري را كه ممكن است مقدار هش مشابه ايجاد كنند پيدا كند. برخي از متداول ترين الگوريتم هاي هش مورد استفاده امروزه عبارتند از:
Secure Hash Algorithm-1 (SHA-1)، خانواده Secure Hashing Algorithm-2 (SHA-2 و SHA-256) و Message Digest 5 (MD5).
ـ رمزنگاري كليد عمومي: رمزنگاري كليد عمومي (كه به عنوان رمزگذاري نامتقارن نيز شناخته مي شود) يك روش رمزنگاري است كه از يك جفت كليد استفاده مي كند. يك كليد به نام كليد عمومي، داده ها را رمزگذاري مي كند. كليد ديگر كه كليد خصوصي نام دارد، داده ها را رمزگشايي مي كند.
رمزنگاري كليد عمومي مي تواند از چندين روش براي اطمينان از محرمانه بودن، صداقت و اصالت استفاده كند. رمزنگاري كليد عمومي مي تواند با ايجاد امضاي ديجيتالي پيام با استفاده از كليد خصوصي فرستنده، صداقت را تضمين كند. اين كار با هش كردن پيام و رمزگذاري مقدار هش با كليد خصوصي آنها انجام مي شود. با اين كار، هرگونه تغيير در پيام، مقدار هش متفاوتي را در پي خواهد داشت.
با رمزگذاري كل پيام با كليد عمومي گيرنده، از محرمانه بودن آن اطمينان حاصل كنيد. اين بدان معناست كه فقط گيرنده، كه كليد خصوصي مربوطه را در اختيار دارد مي تواند پيام را بخواند. هويت كاربر را با استفاده از كليد عمومي و بررسي آن در برابر مرجع گواهي تأييد كنيد.
- Public key infrastructure (PKI):PKI شامل خط مشي ها، استانداردها، افراد و سيستم هايي است كه از توزيع كليدهاي عمومي و تأييد هويت افراد يا اشخاص داراي گواهينامه هاي ديجيتال و مجوز گواهي پشتيباني مي كند.
- Certificate authority (CA):CA يك شخص ثالث قابل اعتماد است كه هويت شخص را تأييد مي كند و يا از طرف آنها يك جفت كليد عمومي/خصوصي ايجاد مي كند يا يك كليد عمومي موجود را كه توسط شخص به آن شخص ارائه شده است مرتبط مي كند. هنگامي كه CA هويت شخصي را تأييد مي كند، يك گواهي ديجيتالي صادر مي كند كه توسط CA به صورت ديجيتالي امضا مي شود. از گواهي ديجيتال مي توان براي تأييد شخص مرتبط با كليد عمومي در صورت درخواست استفاده كرد.
- گواهينامه هاي ديجيتال: گواهينامه هاي ديجيتال مشابه گواهينامه هاي رانندگي هستند زيرا هدف آنها شناسايي دارنده گواهينامه است. گواهينامه هاي ديجيتال حاوي كليد عمومي فرد يا سازمان هستند و توسط CA به صورت ديجيتالي امضا مي شوند. ساير اطلاعات مربوط به سازمان، فرد و CA نيز مي تواند در گواهي گنجانده شود.
- Pretty Good Privacy يا (PGP)/OpenPGP : PGP/OpenPGP جايگزيني براي PKI است. با PGP/OpenPGP، كاربران با امضاي گواهي افراد داراي هويت قابل تأييد، به ديگر كاربران اعتماد مي كنند. هرچه اين امضاها به هم متصل باشند، احتمال تأييد يك كاربر خاص در اينترنت بيشتر است. اين مفهوم ” Web of Trust” ناميده مي شود.
امضاهاي ديجيتالي با اثبات اينكه پيام يا سند ديجيتالي از زمان امضاء، عمداً يا ناخواسته تغيير نكرده است، كار مي كنند. امضاي ديجيتالي اين كار را با ايجاد يك هش منحصر به فرد از پيام يا سند و رمزگذاري آن با استفاده از كليد خصوصي فرستنده انجام مي دهد. هش ايجاد شده منحصر به پيام يا سند است و تغيير هر قسمتي از آن، هش را كاملاً تغيير مي دهد.
پس از تكميل، پيام يا سند ديجيتالي به صورت ديجيتالي امضا شده و براي گيرنده ارسال مي شود. سپس گيرنده هش پيام يا سند ديجيتالي خود را ايجاد مي كند و هش فرستنده (كه در پيام اصلي موجود است) را با استفاده از كليد عمومي فرستنده رمزگشايي مي كند. گيرنده هش توليد شده را با هش رمزگشايي فرستنده مقايسه مي كند. در صورت مطابقت، پيام يا سند ديجيتالي اصلاح نشده است و فرستنده تأييد مي شود.
امضاي ديجيتالي چه مزايايي دارد؟
امنيت مهمترين مزيت امضاي ديجيتال است. قابليت هاي امنيتي تعبيه شده در امضاهاي ديجيتالي از عدم تغيير سند و امضاي قانوني اطمينان مي دهد.
ويژگيها و روشهاي امنيتي مورد استفاده در امضاي ديجيتال شامل موارد زير است:
ـ شماره هاي شناسايي شخصي (PIN)، رمزها و كدها: براي احراز هويت و تأييد هويت امضا كننده و تأييد امضاي آنها استفاده مي شود. ايميل، نام كاربري و رمز عبور رايج ترين روش هايي هستند كه مورد استفاده قرار مي گيرند.
ـ رمزنگاري نامتقارن: از الگوريتم كليد عمومي استفاده مي كند كه شامل رمزگذاري و احراز هويت كليد خصوصي و عمومي است.
ـ Checksum: يك رشته طولاني از حروف و اعداد كه نشان دهنده مجموع ارقام صحيح در يك قطعه از داده هاي ديجيتالي است، كه در مقايسه با آنها مي توان خطاها يا تغييرات را تشخيص داد. چك سام به عنوان اثر انگشت داده عمل مي كند.
ـ Cyclic redundancy check (CRC): كد تشخيص خطا و ويژگي تأييد صحت مورد استفاده در شبكه هاي ديجيتال و دستگاه هاي ذخيره سازي، براي تشخيص تغييرات داده اصلي.
ـ Certificate authority (CA): با پذيرش، احراز هويت، صدور و نگهداري گواهينامه هاي ديجيتالي، امضاي ديجيتالي صادر مي كنند و به عنوان اشخاص ثالث مورد اعتماد عمل مي كنند. استفاده از CA به جلوگيري از ايجاد گواهينامه هاي جعلي ديجيتال كمك مي كند.
ـ (TSP)Trust service provider تأييد اعتبار ارائه دهنده خدمات: TSP يك شخص يا شخص حقوقي است كه اعتبار يك امضاي ديجيتالي را از طرف يك شركت انجام مي دهد و گزارش هاي تأييد امضا را ارائه مي دهد.
كلاسها و انواع امضاي ديجيتال:
سه نوع مختلف گواهي امضاي ديجيتال (DSC) وجود دارد:
كلاس 1. نمي توان براي اسناد تجاري قانوني استفاده كرد زيرا فقط بر اساس ايميل ID و نام كاربري معتبر هستند. امضاهاي كلاس 1 سطح ابتدايي امنيت را ارائه مي دهند و در محيط هايي با خطر كم مانع از به خطر انداختن داده ها مي شوند.
كلاس 2. اغلب براي ثبت الكترونيكي (e-filing) اسناد مالياتي، از جمله اظهارنامه ماليات بر درآمد و اظهارنامه ماليات بر كالا و خدمات (GST) استفاده مي شود. امضاهاي ديجيتالي كلاس 2 هويت امضا كننده را در برابر پايگاه داده از پيش تأييد شده، تأييد مي كند. امضاهاي ديجيتال كلاس 2 در محيط هايي استفاده مي شود كه خطرات و پيامدهاي به خطر انداختن داده ها در حد متوسط است.
كلاس 3. بالاترين سطح امضاهاي ديجيتالي، امضاهاي كلاس 3 از شخص يا سازماني مي خواهد كه قبل از امضا در مقابل مرجع صدور گواهينامه حاضر شود تا هويت خود را اثبات كند. امضاهاي ديجيتال كلاس 3 براي حراج هاي الكترونيكي، مناقصه هاي الكترونيك، بليط الكترونيكي، پرونده هاي دادگاه و ساير محيط هايي كه تهديد به داده ها يا پيامدهاي نقص امنيتي زياد است، استفاده مي شود.
چرا از PKI يا PGP با امضاي ديجيتال استفاده كنيم؟
امضاهاي ديجيتال از استاندارد PKI و برنامه رمزگذاري Pretty Good Privacy (PGP) استفاده مي كنند زيرا هر دو مسائل امنيتي احتمالي ناشي از انتقال كليدهاي عمومي را كاهش مي دهند. آنها تأييد مي كنند كه كليد عمومي فرستنده متعلق به آن فرد است و هويت فرستنده را تأييد مي كنند.
PKI چارچوبي براي سرويس هايي است كه گواهينامه هاي كليد عمومي را توليد، توزيع، كنترل و حساب مي كند. PGP تنوعي از استاندارد PKI است كه از كليد متقارن و رمزنگاري كليد عمومي استفاده مي كند، اما در نحوه اتصال كليدهاي عمومي به هويت كاربر متفاوت است. PKI از CA براي اعتبارسنجي و پيوند هويت كاربر با يك گواهي ديجيتال استفاده مي كند، در حالي كه PGP از يك شبكه اعتماد استفاده مي كند. كاربران PGP انتخاب مي كنند كه به چه كسي اعتماد دارند و كدام هويت مورد بررسي قرار مي گيرد. كاربران PGP به CA هاي معتبر موكول مي كنند.
اثربخشي امنيت يك امضاي ديجيتال بستگي به قدرت امنيت كليد خصوصي دارد. بدون PKI يا PGP، اثبات هويت شخصي يا لغو يك كليد خطرناك غيرممكن است و براي افرادي كه قصد تخريب دارند آسان است كه از افراد خود جعل هويت كنند.
تفاوت بين امضاي ديجيتال و امضاي الكترونيكي چيست؟
اگرچه اين دو عبارت مشابه به نظر مي رسند، اما امضاي ديجيتال با امضاي الكترونيكي متفاوت است. امضاي ديجيتال يك اصطلاح فني است كه نتيجه يك فرآيند رمزنگاري يا الگوريتم رياضي را تعريف مي كند كه مي تواند براي احراز هويت توالي داده ها مورد استفاده قرار گيرد. اصطلاح امضاي الكترونيكي-يا e-signature -يك اصطلاح حقوقي است كه به صورت قانوني تعريف شده است. در حقيقت امضاي ديجيتالي يك نوع خاص از امضاي الكترونيكي است.
راه حل هاي معمول امضاي الكترونيكي از روشهاي رايج احراز هويت الكترونيكي براي تأييد هويت امضا كننده مانند آدرس ايميل، شناسه شركت يا پين تلفن استفاده مي كنند. در صورت نياز به افزايش امنيت، ممكن است از احراز هويت چند عاملي استفاده شود. امضاهاي ديجيتال از شناسه هاي ديجيتالي مبتني بر گواهينامه TSP استفاده مي كنند و با اتصال هر امضا به سند با رمزنگاري، اثبات امضا را نشان مي دهند.
منبع : https://mrshabake.com/digital-signature/