امضاهای دیجیتال
یک امضای دیجیتال از یک کلید خصوصی برای تولید مقداری استفاده میکند که هر کسی که کلید عمومی متناظر را در اختیار دارد، میتواند آن را تأیید کند و بدین ترتیب اصالت، یکپارچگی و عدم انکار را برای یک پیام فراهم میآورد.
Definition
یک طرحواره امضای دیجیتال، یک اولیه کلید عمومی است که شامل الگوریتمهایی برای تولید یک جفت کلید، امضای یک پیام با کلید خصوصی، و تأیید یک امضا با کلید عمومی است، به طوری که تنها دارنده کلید خصوصی میتواند امضاهایی تولید کند که قابل تأیید باشند.
Scope
این موضوع طرحوارههای امضای دیجیتال — RSA-PSS، DSA، ECDSA، و EdDSA — هدف امنیتی جعلناپذیری وجودی تحت حمله انتخابی پیام تطبیقی، پارادایم هش-سپس-امضا، و نقش امضاها در گواهینامهها و توزیع نرمافزار را پوشش میدهد. این موضوع به تمایز از کدهای احراز هویت پیام (قابلیت تأیید عمومی و عدم انکار) میپردازد. این موضوع رمزنگاری کلید عمومی و طرحوارههای تبادل کلید را که مفروضات اساسی یکسانی دارند، و زیرساخت گواهینامهای که کلیدهای تأیید را توزیع میکند، شامل نمیشود.
Core questions
- چگونه یک کلید خصوصی به دارنده خود اجازه میدهد تا تنها او یک امضای قابل تأیید و جعلناپذیر تولید کند؟
- جعلناپذیری وجودی تحت حمله انتخابی پیام تطبیقی چه چیزی را تضمین میکند؟
- چرا پیامها قبل از امضا هش میشوند و مستقیماً امضا نمیشوند؟
- چگونه امضاها عدم انکار را فراهم میکنند که MACهای متقارن نمیتوانند؟
- چگونه از امضاها برای لنگر انداختن اعتماد در گواهینامهها و بهروزرسانیهای نرمافزاری استفاده میشود؟
Key concepts
- جفت کلید (کلیدهای امضا و تأیید)
- جعلناپذیری وجودی
- حمله انتخابی پیام تطبیقی
- هش-سپس-امضا
- RSA-PSS
- DSA و ECDSA
- EdDSA
- عدم انکار
- امضای گواهینامه
Key theories
- جعلناپذیری وجودی تحت حمله انتخابی پیام
- تعریف امنیتی استاندارد طلایی برای امضاها: حتی مهاجمی که امضاهایی را بر روی بسیاری از پیامهای انتخابی خود به دست میآورد، نمیتواند یک امضای معتبر را بر روی هیچ پیام جدیدی جعل کند؛ طرحواره GMR اولین بار به طور اثباتپذیر به این امر دست یافت.
- هش-سپس-امضا و عدم انکار
- طرحوارههای عملی یک هش رمزنگاری شده از پیام را امضا میکنند، که امکان امضای دادههای با طول دلخواه و پیوند امضا به محتوا را فراهم میکند؛ از آنجا که تنها دارنده کلید خصوصی میتواند امضا کند، امضاها عدم انکار را فراهم میکنند، که یک MAC با کلید مشترک نمیتواند.
Mechanisms
برای امضا، دارنده یک عملیات کلید خصوصی را بر روی هش پیام اعمال میکند: RSA-PSS هش پدگذاری شده را با توان خصوصی بالا میبرد، در حالی که (EC)DSA و EdDSA هش را با یک نانس به ازای هر پیام و اسکالر خصوصی ترکیب میکنند تا دو مقدار تولید کنند. تأیید، هش را مجدداً محاسبه میکند و عملیات کلید عمومی را اعمال میکند، و تنها در صورتی میپذیرد که رابطه برقرار باشد. امنیت به فرض سختی زیربنایی و مقاومت در برابر برخورد هش بستگی دارد.
Clinical relevance
امضاهای دیجیتال لنگر اعتماد اینترنت هستند: مراجع گواهینامه، گواهینامههای TLS را امضا میکنند، فروشندگان سیستمعامل، بهروزرسانیها و درایورهای نرمافزاری را امضا میکنند، فروشگاههای برنامه، برنامهها را امضا میکنند، و پلتفرمهای اسناد، امضاهای الکترونیکی قانونی را ارائه میدهند. ارزهای دیجیتال هر تراکنش را با یک امضا تأیید میکنند، و امضای کد از اعتماد به نرمافزارهای دستکاری شده جلوگیری میکند.
Evidence & guidelines
طرحوارههای امضا در FIPS 186 (DSA, ECDSA)، RFC 8032 (EdDSA)، و PKCS #1 / RFC 8017 (RSA-PSS) استاندارد شدهاند. چارچوبهای قانونی (مقررات eIDAS اتحادیه اروپا، قانون ESIGN ایالات متحده) به امضاهای دیجیتال واجد شرایط وزن قانونی میدهند. بهترین روش، استفاده از نانسهای قطعی یا پوشیده (مانند EdDSA و RFC 6979) را برای جلوگیری از نشت فاجعهبار کلید که استفاده مجدد از نانس در ECDSA ایجاد میکند، ترجیح میدهد.
History
مفهوم امضای دیجیتال همراه با رمزنگاری کلید عمومی توسط دیفی و هلمن (1976) معرفی شد و اولین بار توسط RSA (1978) تحقق یافت. گلدواسر، میکالی و ریفست اولین طرحواره را که به طور اثباتپذیر در برابر حملات انتخابی پیام تطبیقی امن بود، در سال 1988 ارائه کردند و تعریف امنیتی مدرن را پایهگذاری کردند. DSA در دهه 1990 استاندارد شد، و سپس ECDSA منحنی بیضوی و بعداً EdDSA مقاوم در برابر سوءاستفاده غالب شدند.
Key figures
- Shafi Goldwasser
- Silvio Micali
- Ronald Rivest
- Whitfield Diffie
- Martin Hellman
Related topics
Seminal works
- goldwasser1988
- rivest1978
- katz2020
Frequently asked questions
- امضای دیجیتال چه تفاوتی با یک امضای دستنویس اسکن شده دارد؟
- یک تصویر اسکن شده فقط یک عکس است و میتواند روی هر سندی کپی شود. یک امضای دیجیتال رمزنگاری شده از محتوای پیام و یک کلید خصوصی محاسبه میشود، بنابراین هم برای امضاکننده و هم برای آن سند دقیق منحصر به فرد است و هرگونه تغییر در محتوا آن را باطل میکند.
- چرا امضاها عدم انکار را فراهم میکنند اما MACها نمیکنند؟
- یک MAC از یک راز مشترک استفاده میکند، بنابراین هر یک از طرفین میتوانستند یک برچسب معتبر تولید کنند — هیچکدام نمیتوانند ثابت کنند که دیگری آن را ساخته است. یک امضای دیجیتال تنها با کلید خصوصی قابل ایجاد است، که تأییدکننده آن را در اختیار ندارد، بنابراین امضاکننده نمیتواند به طور معتبر امضای خود را انکار کند.