امضای دیجیتالی

امضای دیجیتال یک طرح ریاضی برای تأیید صحت پیام ها یا اسناد دیجیتال است. یک امضای دیجیتال معتبر، در صورتی که پیش نیازها برآورده شوند، به گیرنده دلیل بسیار قوی برای این باور می دهد که پیام توسط یک فرستنده شناخته شده ( اصالت ) ایجاد شده است، و پیام در انتقال تغییر نکرده است ( یکپارچگی ). [1]
امضای دیجیتال یک عنصر استاندارد در اکثر مجموعههای پروتکل رمزنگاری است و معمولاً برای توزیع نرمافزار، تراکنشهای مالی، نرمافزار مدیریت قرارداد ، و در موارد دیگری که تشخیص جعل یا دستکاری مهم است، استفاده میشود .
امضای دیجیتال اغلب برای پیاده سازی امضای الکترونیکی استفاده می شود ، که شامل هر گونه داده الکترونیکی است که قصد امضا را دارد، [2] اما همه امضاهای الکترونیکی از امضای دیجیتال استفاده نمی کنند. [3] [4] امضای الکترونیکی در برخی کشورها از جمله کانادا ، [5] آفریقای جنوبی ، [6] ایالات متحده ، الجزایر ، [7] ترکیه ، هند ، [8] برزیل ، اندونزی ، مکزیک ، عربستان سعودی اهمیت قانونی دارد. عربستان ، [9] اروگوئه ، [10] سوئیس ، شیلی [11] و کشورهای اتحادیه اروپا . [12] [13]
امضای دیجیتال از رمزنگاری نامتقارن استفاده می کند. در بسیاری از موارد، آنها لایهای از اعتبار و امنیت را برای پیامهای ارسال شده از طریق یک کانال غیرایمن فراهم میکنند: امضای دیجیتالی که به درستی پیادهسازی شود، به گیرنده دلیلی میدهد که باور کند پیام توسط فرستنده ادعا شده ارسال شده است. امضای دیجیتال از بسیاری جهات معادل امضای دستنویس سنتی است، اما جعل امضای دیجیتالی که بهدرستی پیادهسازی شده باشد، دشوارتر از نوع دستنویس است. طرحهای امضای دیجیتال، به معنایی که در اینجا استفاده میشود، مبتنی بر رمزنگاری هستند و برای مؤثر بودن باید به درستی اجرا شوند. آنها همچنین می توانند عدم انکار را ارائه دهند ، به این معنی که امضاکننده نمی تواند با موفقیت ادعا کند که پیامی را امضا نکرده است، در حالی که کلید خصوصی خود را نیز ادعا می کند.مخفی باقی می ماند علاوه بر این، برخی از طرحهای عدم انکار یک مهر زمانی برای امضای دیجیتال ارائه میکنند، به طوری که حتی اگر کلید خصوصی در معرض دید قرار گیرد، امضا معتبر است. [14] [15] پیامهای امضا شده دیجیتالی ممکن است هر چیزی قابل نمایش بهعنوان یک رشته بیتی باشند: نمونههایی شامل پست الکترونیکی، قراردادها، یا پیامی که از طریق پروتکل رمزنگاری دیگری ارسال میشود.
تعریف
یک طرح امضای دیجیتال معمولاً از سه الگوریتم تشکیل شده است.
- یک الگوریتم تولید کلید که یک کلید خصوصی را به صورت تصادفی از میان مجموعه ای از کلیدهای خصوصی ممکن انتخاب می کند. این الگوریتم کلید خصوصی و یک کلید عمومی مربوطه را خروجی می دهد .
- یک الگوریتم امضا که با دادن یک پیام و یک کلید خصوصی، یک امضا تولید می کند.
- یک الگوریتم تأیید امضا که با توجه به پیام، کلید عمومی و امضا، ادعای صحت پیام را می پذیرد یا رد می کند.
دو ویژگی اصلی مورد نیاز است. ابتدا، صحت امضای تولید شده از یک پیام ثابت و کلید خصوصی ثابت را می توان با استفاده از کلید عمومی مربوطه تأیید کرد. ثانیاً، تولید امضای معتبر برای یک طرف بدون دانستن کلید خصوصی آن طرف، باید از نظر محاسباتی غیرممکن باشد. امضای دیجیتال مکانیزم احراز هویت است که به خالق پیام امکان می دهد کدی را که به عنوان امضا عمل می کند ضمیمه کند. الگوریتم امضای دیجیتال (DSA) که توسط مؤسسه ملی استاندارد و فناوری توسعه یافته است، یکی از نمونه های متعدد الگوریتم امضا است.
در بحث زیر، 1 n به یک عدد واحد اشاره دارد .
به طور رسمی، یک طرح امضای دیجیتال سه گانه از الگوریتم های زمان چند جمله ای احتمالی است، ( G ، S ، V )، که رضایت بخش است:
- G (مولد کلید) یک کلید عمومی ( pk ) و یک کلید خصوصی مربوطه ( sk ) را در ورودی 1 n تولید می کند که n پارامتر امنیتی است.
- S (امضا) یک تگ t را بر روی ورودی ها برمی گرداند : کلید خصوصی ( sk ) و یک رشته ( x ).
- V (تأیید کننده) خروجی های پذیرفته یا رد شده در ورودی ها: کلید عمومی ( pk )، یک رشته ( x )، و یک برچسب ( t ).
برای صحت، S و V باید برآورده شوند
- Pr [ ( pk , sk ) ← G (1 n ), V ( pk , x , S ( sk , x ) ) = پذیرفته شده ] = 1. [16]
یک طرح امضای دیجیتال ایمن است اگر برای هر حریف زمانی چند جمله ای احتمالی غیر یکنواخت ، A
- Pr [ ( pk , sk ) ← G (1 n ), ( x , t ) ← A S ( sk , · ) ( pk , 1 n ), x ∉ Q , V ( pk , x , t ) = پذیرفته شده ] < negl ( n )،
در جایی که A S ( sk , ·) نشان می دهد که A به اوراکل دسترسی دارد ، S ( sk ، ·)، Q نشان دهنده مجموعه پرس و جوهای روی S است که توسط A انجام شده است، که کلید عمومی، pk و پارامتر امنیتی را می داند. n و x ∉ Q نشان می دهد که حریف ممکن است مستقیماً رشته x را در S پرس و جو نکند . [16] [17]
تاریخچه
در سال 1976، ویتفیلد دیفی و مارتین هلمن برای اولین بار مفهوم طرح امضای دیجیتال را توصیف کردند، اگرچه آنها فقط حدس زدند که چنین طرح هایی بر اساس توابعی وجود داشته باشند که جایگشت های یک طرفه درب دریچه هستند. [18] [19] اندکی پس از آن، رونالد ریوست ، آدی شامیر و لن ادلمن الگوریتم RSA را اختراع کردند که میتوانست برای تولید امضاهای دیجیتال بدوی استفاده شود [20] (اگرچه فقط به عنوان یک اثبات مفهوم - RSA "ساده" امضاها امن نیستند [21] ). اولین بسته نرم افزاری به طور گسترده ای که امضای دیجیتالی را ارائه کرد، Lotus Notes بود1.0 که در سال 1989 منتشر شد که از الگوریتم RSA استفاده می کرد. [22]
دیگر طرحهای امضای دیجیتال به زودی پس از RSA توسعه یافتند، که اولین آنها امضاهای Lamport ، [23] امضاهای Merkle (همچنین به عنوان "درختان مرکل" یا به سادگی "درختهای هش" شناخته میشوند)، [24] و امضاهای رابین بود. [25]
در سال 1988، شفی گلدواسر ، سیلویو میکالی و رونالد ریوست اولین کسانی بودند که الزامات امنیتی طرحهای امضای دیجیتال را بهطور دقیق تعریف کردند. [26] آنها سلسله مراتبی از مدلهای حمله را برای طرحهای امضا توصیف کردند، و همچنین طرح امضای GMR را ارائه کردند ، اولین موردی که میتوان اثبات کرد حتی از جعل وجودی در برابر حمله پیام انتخابی جلوگیری میکند، که در حال حاضر تعریف امنیتی پذیرفتهشده برای طرحهای امضا است. . [26] اولین طرحی از این دست که بر روی توابع trapdoor ساخته نشده است، بلکه بر روی خانواده ای از عملکردها با ویژگی مورد نیاز بسیار ضعیف تر جایگشت یک طرفه ساخته شده است توسط Moni Naor و Moti Yung ارائه شد.. [27]
روش
یکی از طرحهای امضای دیجیتال (از بسیاری از آنها) بر اساس RSA است. برای ایجاد کلیدهای امضا، یک جفت کلید RSA حاوی مدول N ، که حاصل ضرب دو عدد اول بزرگ متمایز تصادفی، همراه با اعداد صحیح، e و d است، ایجاد کنید، به طوری که e d ≡ 1 (mod φ ( N ))، که در آن φ تابع totient اویلر است . کلید عمومی امضاکننده از N و e تشکیل شده است و کلید مخفی امضاکننده شامل d است.
برای امضای یک پیام، m ، امضاکننده یک امضا، σ را محاسبه می کند ، به طوری که σ ≡ m d (mod N ). برای تأیید، گیرنده بررسی می کند که σ e ≡ m (mod N ).
چندین طرح امضای اولیه از نوع مشابهی بودند: آنها شامل استفاده از یک جایگشت درگاه ، مانند تابع RSA، یا در مورد طرح امضای رابین، کامپوزیت مدول مربعی محاسباتی، N . خانواده جایگشت trapdoor خانوادهای از جایگشتها هستند که توسط پارامتری مشخص میشوند که محاسبه آن در جهت رو به جلو آسان است، اما محاسبه آن در جهت معکوس بدون دانستن کلید خصوصی ("Trapdoor") دشوار است. جایگشت های Trapdoor را می توان برای طرح های امضای دیجیتال استفاده کرد، جایی که محاسبه جهت معکوس با کلید مخفی برای امضا مورد نیاز است، و محاسبه جهت رو به جلو برای تأیید امضاها استفاده می شود.
این نوع طرح امضا که مستقیماً مورد استفاده قرار می گیرد، در برابر حمله جعل وجودی فقط کلیدی آسیب پذیر است. برای ایجاد جعل، مهاجم یک امضای تصادفی σ را انتخاب می کند و از روش تأیید برای تعیین پیام، m ، مربوط به آن امضا استفاده می کند. [28] با این حال، در عمل، این نوع امضا مستقیماً استفاده نمیشود، بلکه پیامی که باید امضا شود ابتدا هش میشود تا خلاصهای کوتاه ایجاد کند، که سپس به عرض بزرگتر قابل مقایسه با N اضافه میشود ، سپس با علامت معکوس امضا میشود. عملکرد trapdoor [29]بنابراین، این حمله جعل، تنها خروجی تابع هش پر شده را تولید می کند که با σ مطابقت دارد، اما نه پیامی که به آن مقدار منتهی شود، که منجر به حمله نمی شود. در مدل تصادفی اوراکل، hash-then-sign (نسخه ایدهآلی از این روش که در آن هش و padding ترکیبی نزدیک به N خروجی ممکن دارند)، این شکل از امضا از نظر وجودی جعلناپذیر است، حتی در برابر یک حمله متن ساده انتخابشده . [19] [ توضیحات لازم است ]
دلایل مختلفی برای امضای چنین هش (یا خلاصه پیام) به جای کل سند وجود دارد.
- برای کارایی
- امضا بسیار کوتاهتر خواهد بود و در نتیجه در زمان صرفهجویی میشود زیرا هش کردن معمولاً بسیار سریعتر از امضا در عمل است.
- برای سازگاری
- پیامها معمولاً رشتههای بیتی هستند، اما برخی از طرحهای امضا در حوزههای دیگر عمل میکنند (مانند، در مورد RSA، اعداد با مدول یک عدد ترکیبی N ). برای تبدیل یک ورودی دلخواه به فرمت مناسب می توان از یک تابع هش استفاده کرد.
- برای صداقت
- بدون تابع هش، ممکن است متن "to be signed" به بلوکهایی به اندازه کافی کوچک تقسیم شود (جدا شود) تا طرح امضا بتواند مستقیماً روی آنها عمل کند. با این حال، گیرنده بلوک های امضا شده قادر به تشخیص وجود همه بلوک ها و به ترتیب مناسب نیست.
مفاهیم امنیت
Goldwasser، Micali و Rivest در مقاله بنیادی خود، سلسله مراتبی از مدلهای حمله علیه امضای دیجیتال را ارائه میکنند: [26]
- در حمله فقط کلید ، به مهاجم فقط کلید تأیید عمومی داده می شود.
- در یک حمله پیام شناخته شده ، به مهاجم امضاهای معتبری برای انواع پیام هایی که مهاجم می شناسد اما توسط مهاجم انتخاب نمی شود داده می شود.
- در یک حمله پیام منتخب تطبیقی ، مهاجم ابتدا امضای پیامهای دلخواه به انتخاب مهاجم را میآموزد.
آنها همچنین سلسله مراتبی از نتایج حمله را توصیف می کنند: [26]
- شکست کامل منجر به بازیابی کلید امضا می شود.
- یک حمله جعل جهانی منجر به توانایی جعل امضا برای هر پیامی می شود.
- یک حمله جعل انتخابی منجر به امضای پیامی به انتخاب دشمن می شود.
- جعل وجودی صرفاً منجر به یک جفت پیام/امضای معتبر می شود که قبلاً برای دشمن شناخته نشده است.
بنابراین قویترین مفهوم امنیت، امنیت در برابر جعل وجودی تحت یک حمله پیام انتخابی تطبیقی است.
برنامه های کاربردی
همانطور که سازمان ها از اسناد کاغذی با امضای جوهر یا مهر اصالت دور می شوند، امضای دیجیتال می تواند تضمین های بیشتری از شواهد به منشأ، هویت و وضعیت یک سند الکترونیکی و همچنین تایید رضایت آگاهانه و تایید یک امضاکننده ارائه دهد. دفتر چاپ دولت ایالات متحده (GPO) نسخه های الکترونیکی بودجه، قوانین عمومی و خصوصی و لوایح کنگره را با امضای دیجیتال منتشر می کند. دانشگاههایی از جمله پن استیت، دانشگاه شیکاگو و استنفورد در حال انتشار رونوشتهای الکترونیکی دانشجویان با امضای دیجیتال هستند.
در زیر چند دلیل رایج برای استفاده از امضای دیجیتال در ارتباطات آورده شده است:
احراز هویت
اگرچه ممکن است پیام ها اغلب حاوی اطلاعاتی در مورد نهاد ارسال کننده پیام باشد، اما ممکن است این اطلاعات دقیق نباشد. امضای دیجیتال می تواند برای احراز هویت پیام های منبع استفاده شود. هنگامی که مالکیت یک کلید مخفی امضای دیجیتال به یک کاربر خاص محدود می شود، یک امضای معتبر نشان می دهد که پیام توسط آن کاربر ارسال شده است. اهمیت اطمینان بالا در اصالت فرستنده به ویژه در زمینه مالی مشهود است. به عنوان مثال، فرض کنید شعبه یک بانک دستورالعملی را برای تغییر موجودی حساب به دفتر مرکزی ارسال می کند. اگر دفتر مرکزی متقاعد نشده باشد که چنین پیامی واقعاً از یک منبع مجاز ارسال شده است، اقدام به چنین درخواستی می تواند یک اشتباه بزرگ باشد.
صداقت
در بسیاری از سناریوها، فرستنده و گیرنده پیام ممکن است نیاز به اطمینان از عدم تغییر پیام در طول ارسال داشته باشند. اگرچه رمزگذاری محتوای یک پیام را پنهان می کند، ممکن است امکان تغییر یک پیام رمزگذاری شده بدون درک آن وجود داشته باشد. (برخی از الگوریتمهای رمزگذاری که غیرقابل انعطاف نامیده میشوند ، از این امر جلوگیری میکنند، اما برخی دیگر این کار را نمیکنند.) با این حال، اگر پیامی به صورت دیجیتالی امضا شده باشد، هر تغییری در پیام پس از امضا، امضا را باطل میکند. علاوه بر این، هیچ راه کارآمدی برای تغییر یک پیام و امضای آن برای تولید یک پیام جدید با امضای معتبر وجود ندارد، زیرا این هنوز توسط اکثر توابع هش رمزنگاری غیرممکن است (به مقاومت در برابر برخورد مراجعه کنید ).
عدم انکار
عدم انکار ، [12] یا به طور خاص، عدم انکار مبدأ، جنبه مهمی از امضای دیجیتال است. با این ویژگی، نهادی که برخی از اطلاعات را امضا کرده است، نمی تواند در زمان بعدی امضای آن را انکار کند. به طور مشابه، دسترسی به کلید عمومی تنها یک طرف متقلب را قادر به جعل امضای معتبر نمی کند.
توجه داشته باشید که این ویژگیهای احراز هویت، عدم انکار و غیره به این بستگی دارند که کلید مخفی قبل از استفاده از آن لغو نشده باشد. ابطال عمومی یک جفت کلید یک توانایی ضروری است، در غیر این صورت کلیدهای مخفی فاش شده همچنان مالک ادعا شده جفت کلید را درگیر خواهند کرد. بررسی وضعیت ابطال مستلزم یک چک "آنلاین" است. به عنوان مثال، بررسی لیست ابطال گواهی یا از طریق پروتکل وضعیت گواهی آنلاین . [13] تقریباً این مشابه فروشندهای است که کارتهای اعتباری را دریافت میکند و ابتدا به صورت آنلاین با صادرکننده کارت اعتباری چک میکند تا بفهمد آیا یک کارت مفقود شده یا دزدیده شده است یا خیر. البته، با جفت کلید دزدیده شده، سرقت اغلب تنها پس از استفاده از کلید مخفی کشف می شود، به عنوان مثال، برای امضای یک گواهی جعلی برای اهداف جاسوسی.
اقدامات احتیاطی امنیتی اضافی
قرار دادن کلید خصوصی روی کارت هوشمند
همه سیستم های رمزنگاری کلید عمومی / کلید خصوصی کاملاً به مخفی نگه داشتن کلید خصوصی بستگی دارند. یک کلید خصوصی را می توان در رایانه کاربر ذخیره کرد و با یک رمز عبور محلی محافظت کرد، اما این دو عیب دارد:
- کاربر فقط می تواند اسناد را روی آن رایانه خاص امضا کند
- امنیت کلید خصوصی کاملاً به امنیت رایانه بستگی دارد
یک جایگزین امن تر، ذخیره کلید خصوصی در کارت هوشمند است. بسیاری از کارت های هوشمند به گونه ای طراحی شده اند که در برابر دستکاری مقاوم باشند (اگرچه برخی از طرح ها شکسته شده اند، به ویژه توسط راس اندرسون و شاگردانش [30] ). در یک پیاده سازی امضای دیجیتال معمولی، هش محاسبه شده از سند به کارت هوشمند ارسال می شود، که CPU آن هش را با استفاده از کلید خصوصی ذخیره شده کاربر امضا می کند و سپس هش امضا شده را برمی گرداند. به طور معمول، کاربر باید کارت هوشمند خود را با وارد کردن یک شماره شناسایی شخصی یا کد پین فعال کند (به این ترتیب احراز هویت دو مرحله ای ارائه می شود.). می توان ترتیب داد که کلید خصوصی هرگز از کارت هوشمند خارج نشود، اگرچه این همیشه اجرا نمی شود. اگر کارت هوشمند دزدیده شود، دزد همچنان برای تولید امضای دیجیتال به کد پین نیاز دارد. این امر امنیت طرح را به سیستم پین کاهش میدهد، اگرچه همچنان به مهاجم نیاز دارد که کارت را در اختیار داشته باشد. یک عامل کاهش دهنده این است که کلیدهای خصوصی، اگر در کارت های هوشمند تولید و ذخیره شوند، معمولاً کپی کردن آنها دشوار است و فرض می شود دقیقاً در یک نسخه وجود دارد. بنابراین مفقود شدن کارت هوشمند ممکن است توسط مالک تشخیص داده شود و گواهی مربوطه بلافاصله باطل شود. ممکن است کپی کردن کلیدهای خصوصی که فقط توسط نرم افزار محافظت می شوند آسان تر باشد و شناسایی چنین مواردی بسیار دشوارتر است.
استفاده از کارتخوان های هوشمند با صفحه کلید مجزا
وارد کردن کد پین برای فعال کردن کارت هوشمند معمولاً به یک صفحه کلید عددی نیاز دارد . برخی از کارت خوان ها صفحه کلید عددی خود را دارند. این کار ایمن تر از استفاده از کارت خوان ادغام شده در رایانه شخصی و سپس وارد کردن پین با استفاده از صفحه کلید آن رایانه است. خوانندگان با صفحه کلید عددی برای دور زدن تهدید استراق سمع در جایی که رایانه ممکن است یک Logger ضربه زدن به کلید را اجرا کند و به طور بالقوه کد پین را به خطر می اندازد، دور می زند. کارتخوان های تخصصی نیز کمتر در برابر دستکاری نرم افزار یا سخت افزار خود آسیب پذیر هستند و اغلب دارای گواهی EAL3 هستند.
سایر طرح های کارت هوشمند
طراحی کارت هوشمند یک زمینه فعال است و طرح های کارت هوشمند وجود دارد که با وجود داشتن مدارک امنیتی کمی تا کنون، برای جلوگیری از این مشکلات خاص در نظر گرفته شده است.
استفاده از امضای دیجیتال فقط با برنامه های کاربردی قابل اعتماد
یکی از تفاوت های اصلی بین امضای دیجیتال و امضای نوشتاری این است که کاربر آنچه را که امضا می کند "نمی بیند". برنامه کاربر یک کد هش را ارائه می دهد تا با استفاده از کلید خصوصی توسط الگوریتم امضای دیجیتال امضا شود. مهاجمی که کنترل رایانه شخصی کاربر را به دست میآورد احتمالاً میتواند برنامه کاربر را با یک جایگزین خارجی جایگزین کند و در واقع ارتباطات خود کاربر را با ارتباطات مهاجم جایگزین کند. این می تواند به یک برنامه مخرب اجازه دهد تا کاربر را فریب دهد تا با نمایش اصل کاربر روی صفحه، هر سندی را امضا کند، اما اسناد خود مهاجم را به برنامه امضاکننده ارائه دهد.
برای محافظت در برابر این سناریو، می توان یک سیستم احراز هویت بین برنامه کاربر (پردازنده کلمه، سرویس گیرنده ایمیل و غیره) و برنامه امضا تنظیم کرد. ایده کلی این است که ابزاری برای هر دو برنامه کاربر و برنامه امضا برای تأیید یکپارچگی یکدیگر فراهم کنیم. برای مثال، برنامه امضا ممکن است نیاز داشته باشد که همه درخواستها از باینریهای امضا شده دیجیتالی ارائه شوند.
استفاده از یک ماژول امنیتی سخت افزاری متصل به شبکه
یکی از تفاوت های اصلی بین خدمات امضای دیجیتال مبتنی بر ابر و سرویس ارائه شده به صورت محلی، ریسک است. بسیاری از شرکتهای ریسک گریز، از جمله دولتها، مؤسسات مالی و پزشکی، و پردازشگرهای پرداخت، به استانداردهای ایمنتری مانند FIPS 140-2 سطح 3 و گواهی FIPS 201 نیاز دارند تا اطمینان حاصل شود که امضا تأیید شده و ایمن است.
WYSIWYS
از نظر فنی، یک امضای دیجیتال برای رشتهای از بیتها اعمال میشود، در حالی که انسانها و برنامهها معتقدند که تفسیر معنایی آن بیتها را امضا میکنند. به منظور تفسیر معنایی، رشته بیت باید به شکلی تبدیل شود که برای انسان ها و برنامه های کاربردی معنادار باشد و این از طریق ترکیبی از فرآیندهای مبتنی بر سخت افزار و نرم افزار در یک سیستم کامپیوتری انجام می شود. مشکل این است که تفسیر معنایی بیت ها می تواند به عنوان تابعی از فرآیندهای مورد استفاده برای تبدیل بیت ها به محتوای معنایی تغییر کند. تغییر تفسیر یک سند دیجیتال با اعمال تغییرات در سیستم رایانه ای که سند در آن پردازش می شود نسبتا آسان است. از منظر معنایی این عدم اطمینان در مورد آنچه دقیقاً امضا شده است ایجاد می کند. WYSIWYS (آنچه می بینید همان چیزی است که امضا می کنید)[31] به این معنی است که تفسیر معنایی یک پیام امضا شده قابل تغییر نیست. بهویژه این بدان معناست که پیام نمیتواند حاوی اطلاعات پنهانی باشد که امضاکننده از آن بیاطلاع است و میتواند پس از اعمال امضا آشکار شود. WYSIWYS یک الزام برای اعتبار امضای دیجیتال است، اما به دلیل پیچیدگی روزافزون سیستمهای کامپیوتری مدرن، تضمین این الزام دشوار است. اصطلاح WYSIWYS توسط پیتر لندراک و توربن پدرسن برای توصیف برخی از اصول در ارائه امضای دیجیتال ایمن و الزام آور قانونی برای پروژه های پاناروپایی ابداع شد. [31]
امضای دیجیتال در مقابل جوهر روی امضاهای کاغذی
امضای جوهر را میتوان با کپی کردن تصویر به صورت دستی یا دیجیتالی از یک سند به سند دیگر تکثیر کرد، اما داشتن نسخههای امضای معتبری که میتوانند در برابر بررسی دقیق مقاومت کنند، مهارت دستی یا فنی قابل توجهی است، و تولید نسخههای امضای جوهری که در برابر بررسیهای حرفهای مقاومت میکنند بسیار مهم است. دشوار.
امضای دیجیتال به صورت رمزنگاری هویت الکترونیکی را به یک سند الکترونیکی متصل می کند و امضای دیجیتال را نمی توان به سند دیگری کپی کرد. قراردادهای کاغذی گاهی اوقات بلوک امضای جوهر را در آخرین صفحه دارند و صفحات قبلی ممکن است پس از اعمال امضا جایگزین شوند. امضای دیجیتال را می توان برای کل یک سند اعمال کرد، به طوری که امضای دیجیتال در آخرین صفحه نشان دهنده دستکاری در صورت تغییر داده های هر یک از صفحات است، اما این امر همچنین می تواند با امضا با جوهر و شماره گذاری تمام صفحات آن به دست آید. قرارداد.
برخی از الگوریتم های امضای دیجیتال
- RSA
- DSA
- ECDSA
- EdDSA
- RSA با SHA
- ECDSA با SHA [32]
- طرح امضای الگامال به عنوان سلف DSA و انواع الگوریتم امضای Schnorr و امضای Pointcheval-Stern
- الگوریتم امضای رابین
- طرحهای مبتنی بر جفتسازی مانند BLS
- NTRUSign نمونه ای از طرح امضای دیجیتال بر اساس مشکلات شبکه سخت است
- امضاهای غیرقابل انکار
- امضای جمعی ru – طرح امضایی که از تجمیع پشتیبانی میکند: با توجه به n امضا در n پیام از n کاربر، میتوان همه این امضاها را در یک امضا جمع کرد که اندازه آن در تعداد کاربران ثابت است. این امضای واحد تأیید کننده را متقاعد می کند که n کاربر واقعاً n پیام اصلی را امضا کرده اند. ممکن است طرحی توسط Mihir Bellare و Gregory Neven برای بیت کوین استفاده شود . [33]
- امضاها با پروتکلهای کارآمد – طرحهای امضایی هستند که پروتکلهای رمزنگاری کارآمد مانند اثباتهای دانش صفر یا محاسبات امن را تسهیل میکنند.
وضعیت فعلی استفاده - قانونی و عملی
اکثر طرحهای امضای دیجیتال بدون توجه به تئوری رمزنگاری یا مقررات قانونی، اهداف زیر را به اشتراک میگذارند:
- الگوریتمهای کیفیت: برخی از الگوریتمهای کلید عمومی ناامن هستند، زیرا حملات عملی علیه آنها کشف شده است.
- پیاده سازی با کیفیت: اجرای یک الگوریتم (یا پروتکل ) خوب با اشتباه(ها) کار نخواهد کرد.
- کاربران (و نرم افزار آنها) باید پروتکل امضا را به درستی اجرا کنند.
- کلید خصوصی باید خصوصی بماند: اگر کلید خصوصی برای هر طرف دیگری شناخته شود، آن طرف میتواند امضای دیجیتالی کاملی از هر چیزی تولید کند.
- مالک کلید عمومی باید قابل تأیید باشد: یک کلید عمومی مرتبط با باب در واقع از باب آمده است. این معمولاً با استفاده از زیرساخت کلید عمومی (PKI) انجام میشود و ارتباط کاربر کلید عمومی توسط اپراتور PKI تأیید میشود (به نام مرجع گواهی ). برای PKIهای "باز" که در آنها هر کسی میتواند چنین تاییدیهای را درخواست کند (که به طور کلی در یک گواهی کلید عمومی محافظت شده از نظر رمزنگاری تجسم یافته است )، امکان تصدیق اشتباه بیاهمیت است. اپراتورهای تجاری PKI با چندین مشکل شناخته شده عمومی مواجه شده اند. چنین اشتباهاتی می تواند منجر به امضای نادرست اسناد و در نتیجه به اشتباه نسبت داده شود. سیستمهای PKI «بسته» گرانتر هستند، اما به آسانی در این راه خراب میشوند.
تنها در صورت رعایت همه این شرایط، یک امضای دیجیتال در واقع مدرکی مبنی بر ارسال پیام و در نتیجه رضایت آنها با محتوای آن خواهد بود. تصویب قانونی نمی تواند این واقعیت احتمالات مهندسی موجود را تغییر دهد، اگرچه برخی از آنها این واقعیت را منعکس نکرده اند.
قوانين مقننه، كه توسط كسب و كارهايي كه انتظار دارند از راهاندازي PKI سود ببرند، يا توسط آوانگاردهاي فناورانه كه از راهحلهاي جديد براي مشكلات قديمي حمايت ميكنند، وارد شدهاند، در بسياري از حوزههاي قضايي، قوانين و/يا مقرراتي وضع كردهاند كه اجازه، تأييد، تشويق، يا اجازه امضاي ديجيتالي را ميدهند و ارائه ميكنند. برای (یا محدود کردن) اثر قانونی آنها. به نظر می رسد اولین مورد در یوتا در ایالات متحده بوده است و پس از آن ایالت های ماساچوست و کالیفرنیا قرار دارند. کشورهای دیگر نیز قوانین و مقرراتی را در این زمینه به تصویب رسانده اند و سازمان ملل مدتی است که یک پروژه قانون نمونه فعال دارد. این مصوبات (یا مصوبات پیشنهادی) از مکانی به مکان دیگر متفاوت است، معمولاً انتظارات متفاوت (به طور خوش بینانه یا بدبینانه) با وضعیت مهندسی رمزنگاری زیربنایی را تجسم می بخشد، و تأثیر خالص گیج کردن کاربران و مشخص کننده های بالقوه را داشته است، که تقریباً همه آنها هستند. از نظر رمزنگاری آگاه نیستند.
پذیرش استانداردهای فنی برای امضای دیجیتال از بسیاری از قوانین عقب مانده است و موقعیت مهندسی کم و بیش یکپارچه در مورد قابلیت همکاری ، انتخاب الگوریتم ، طول کلید و مواردی که مهندسی در تلاش برای ارائه آن است به تأخیر انداخته است.
استانداردهای صنعت
برخی از صنایع استانداردهای قابلیت همکاری مشترک را برای استفاده از امضای دیجیتال بین اعضای صنعت و با تنظیم کننده ها ایجاد کرده اند. اینها شامل تبادل شبکه خودرو برای صنعت خودرو و انجمن SAFE-BioPharma برای صنعت مراقبت های بهداشتی است .
استفاده از جفت کلید جداگانه برای امضا و رمزگذاری
در چندین کشور، یک امضای دیجیتال تا حدودی وضعیتی شبیه به امضای سنتی با قلم و کاغذ دارد، مانند دستورالعمل امضای دیجیتال اتحادیه اروپا در سال 1999 و قوانین بعدی اتحادیه اروپا در سال 2014 . [12]به طور کلی، این مقررات به این معنی است که هر چیزی که به صورت دیجیتالی امضا شده باشد، امضاکننده سند را به طور قانونی به شرایط موجود در آن ملحق می کند. به همین دلیل، اغلب تصور میشود که بهتر است از جفتهای کلید جداگانه برای رمزگذاری و امضا استفاده شود. با استفاده از جفت کلید رمزگذاری، یک شخص می تواند در یک مکالمه رمزگذاری شده شرکت کند (مثلاً در مورد معامله ملکی)، اما رمزگذاری به طور قانونی هر پیامی را که او ارسال می کند امضا نمی کند. تنها زمانی که هر دو طرف به توافق می رسند، قراردادی را با کلیدهای امضای خود امضا می کنند و تنها در این صورت است که از نظر قانونی به شرایط یک سند خاص ملزم می شوند. پس از امضا، سند می تواند از طریق پیوند رمزگذاری شده ارسال شود. اگر یک کلید امضا گم شود یا به خطر بیفتد، می توان آن را باطل کرد تا تراکنش های آتی کاهش یابد. اگر یک کلید رمزگذاری گم شد، یک نسخه پشتیبان یا کلید ذخیره کنیدباید برای ادامه مشاهده محتوای رمزگذاری شده استفاده شود. کلیدهای امضا هرگز نباید پشتیبان گیری شوند یا به امانت سپرده شوند مگر اینکه مقصد پشتیبان به طور ایمن رمزگذاری شده باشد.
همچنین ببینید
- 21 CFR 11
- X.509
- امضای الکترونیکی پیشرفته
- امضای کور
- امضای جدا شده
- گواهی دیجیتال
- امضای دیجیتال در استونی
- نوت بوک آزمایشگاهی الکترونیکی
- امضای الکترونیک
- امضای الکترونیکی و قانون
- eSign (هند)
- محافظ حریم خصوصی گنو
- زیرساخت کلید عمومی
- اثر انگشت کلید عمومی
- امضاهای مبتنی بر سرور
- طرح امضای احتمالی
یادداشت ها
- ↑ پل، الیزا (12 سپتامبر 2017). "امضای دیجیتال چیست - چگونه کار می کند، مزایا، اهداف، مفهوم" . EMP Trust HR
- ↑ قانون ESIGN ایالات متحده در سال 2000
- ↑ State of WI بایگانی شده در 25/09/2006 در Wayback Machine
- ↑ آرشیو ملی استرالیا در 9 نوامبر 2014 در Wayback Machine بایگانی شد
- ↑ «مقررات امن امضای الکترونیکی SOR/2005-30» . وب سایت قوانین دادگستری . 10 مارس 2011 . بازبینی شده در 19 مه 2020 .
- ↑ "قانون ارتباطات و معاملات الکترونیکی [شماره 25 سال 2002]" (PDF) . روزنامه دولت . جمهوری آفریقای جنوبی 446 (23708). 2 اوت 2002.
- ↑ «قانون 15-04» . مجله رسمی، 1 فوریه 2015 .
- ↑ «قانون فناوری اطلاعات، 2000» (PDF) . وزارت ارتباطات، وزارت ارتباطات، دولت هند . روزنامه هند فوق العاده . بازبینی شده در 17 سپتامبر 2017 .
- ↑ «قانون معاملات الکترونیکی» . کمیسیون ارتباطات و فناوری اطلاعات بازبینی شده در 17 سپتامبر 2017 .
- ↑ «Cómo se USa» .
- ↑ «LEY-19799 SOBRE DOCUMENTOS ELECTRONICOS، FIRMA ELECTRONICA Y SERVICIOS DE CERTIFICACION DE DICHA FIRMA» . لی شیلی – Biblioteca del Congreso Nacional (به اسپانیایی). 12-04-2002 . بازیابی شده در 2020-01-21 .
- ^ a b c ترنر، سپیده دم. "استانداردهای اصلی و انطباق امضاهای دیجیتال - یک ملاحظه جهانی" . کریپتوماتیک . بازبینی شده در 7 ژانویه 2016 .
- ^ ا ب ج ، عاشیق. "توصیه هایی برای ارائه خدمات امضای دیجیتال" . کریپتوماتیک . بازبینی شده در 7 ژانویه 2016 .
- ^ نیش، ویدونگ؛ چن، وی؛ ژانگ، ووکسیونگ؛ پی، جون؛ گائو، ویوی؛ وانگ، گوهوی (2020-03-04). "طرح امضای دیجیتال برای عدم انکار اطلاعات در بلاک چین: یک بررسی جدید" . مجله EURASIP در زمینه ارتباطات و شبکه های بی سیم . 2020 (1). doi : 10.1186/s13638-020-01665-w . ISSN 1687-1499 . S2CID 212613803 .
- ^ ژو، جی. Lam، KY (مه 1999). "ایمن سازی امضای دیجیتال برای عدم انکار" . ارتباطات کامپیوتری . 22 (8): 710-716. doi : 10.1016/s0140-3664(99)00031-6 . ISSN 0140-3664 .
- ^ a b Pass، تعریف 135.1
- ^ Goldreich's FoC، جلد. 2، تعریف 6.1.2. پاس، دف 135.2
- ↑ «جهتهای جدید در رمزنگاری»، IEEE Transactions on Information Theory، IT-22(6):644–654، نوامبر 1976.
- ^ a b " طرح های امضا و کاربردها در طراحی پروتکل رمزنگاری "، آنا لیسیانسکایا ، پایان نامه دکتری، MIT ، 2002.
- ^ ریست، آر. ع.شمیر; L. Adleman (1978). "روشی برای به دست آوردن امضاهای دیجیتال و سیستم های رمزنگاری کلید عمومی" (PDF) . ارتباطات ACM . 21 (2): 120-126. CiteSeerX 10.1.1.607.2677 . doi : 10.1145/359340.359342 . S2CID 2873616 .
{{cite journal}}
: CS1 maint: چندین نام: فهرست نویسندگان ( پیوند ) - ^ برای مثال هر عدد صحیح، r , "علائم" m = r e و حاصلضرب s 1 s 2 از هر دو امضای معتبر s 1 , s 2 از m 1 , m 2 امضای معتبر محصول است, m 1 متر مربع _
- ↑ «تاریخ نت ها و دومینو» . توسعه دهنده ورکز 2007-11-14 . بازبینی شده در 17 سپتامبر 2014 .
- ↑ «ساخت امضای دیجیتال از یک تابع یک طرفه.»، لزلی لامپورت ، گزارش فنی CSL-98، SRI International، اکتبر 1979.
- ↑ «A Certified Digital Signature»، رالف مرکل، در Gilles Brassard، ed., Advances in Cryptology – CRYPTO '89, vol. 435 از یادداشت های سخنرانی در علوم کامپیوتر، صفحات 218-238، Spring Verlag، 1990.
- ↑ «امضای دیجیتالی شده به اندازه فاکتورسازی غیرقابل حل است». مایکل او. رابین ، گزارش فنی MIT/LCS/TR-212، آزمایشگاه علوم کامپیوتر MIT، ژانویه 1979
- ^ a b c d "یک طرح امضای دیجیتال ایمن در برابر حملات پیام منتخب تطبیقی."، Shafi Goldwasser، Silvio Micali، و Ronald Rivest. SIAM Journal on Computing، 17 (2): 281-308، آوریل 1988.
- ↑ Moni Naor، Moti Yung: توابع هش یک طرفه جهانی و کاربردهای رمزنگاری آنها. STOC 1989: 33-43
- ↑ "رمز نگاری مدرن: نظریه و عمل"، ونبو مائو، مرجع فنی حرفه ای پرنتیس هال، نیوجرسی، 2004، صفحه. 308. شابک 0-13-066943-1
- ↑ کتابچه راهنمای رمزنگاری کاربردی نوشته آلفرد جی. منزز، پل سی. ون اورشوت، اسکات آ. وانستون. چاپ پنجم (اوت 2001) صفحه 445.
- ↑ «Chip and Skim: شبیه سازی کارت های EMV با حمله قبل از بازی» (PDF) . بایگانی شده از نسخه اصلی (PDF) در 2018-05-16 . بازیابی شده در 06-04-2018 .
- ^ a b Landrock، Peter; پدرسن، توربن (1998). "WYSIWYS؟ - آنچه می بینید همان چیزی است که امضا می کنید؟". گزارش فنی امنیت اطلاعات 3 (2): 55-61. doi : 10.1016/S0167-4048(98)80005-8 .
- ^ RFC 5758
- ↑ «نقشه راه فناوری – امضاهای Schnorr و تجمیع امضا» . bitcoincore.org _ هسته بیت کوین. 23 مارس 2017 . بازبینی شده در 1 آوریل 2018 .
منابع
- گلدریچ، اودد (2001)، مبانی رمزنگاری I: ابزارهای اساسی ، کمبریج: انتشارات دانشگاه کمبریج، ISBN 978-0-511-54689-1
- Goldreich، Oded (2004)، مبانی رمزنگاری II: کاربردهای اساسی (1. publ. ed.)، Cambridge [ua]: Cambridge Univ. مطبوعات، ISBN 978-0-521-83084-3
- Pass, Rafael, A Course in Cryptography (PDF) , بازیابی شده در 31 دسامبر 2015
ادامه مطلب
- J. Katz و Y. Lindell، "مقدمه ای بر رمزنگاری مدرن" (Chapman & Hall/CRC Press, 2007)
- لورنا برازل، امضاهای الکترونیکی و قوانین و مقررات هویتی (ویرایش دوم، لندن: سویت و ماکسول، 2008)
- دنیس کمپبل، سردبیر، تجارت الکترونیک و قانون امضای دیجیتال (انتشارات اوشنا، 2005).
- MH M Schellenkens، فناوری احراز هویت امضاهای الکترونیکی از دیدگاه حقوقی، (TMC Asser Press، 2004).
- جرمیا اس. باکلی، جان پی کرومر، مارگو اچ کی تانک، و آر. دیوید ویتاکر، قانون امضاهای الکترونیکی (ویرایش سوم، انتشارات غرب، 2010).
- بررسی قانون مدارک دیجیتال و امضای الکترونیکی منبع باز رایگان