امضای دیجیتال (به انگلیسی Digital Signature) یک مکانیسم رمزنگاری است که از آن برای اعتبارسنجی اطلاعات دیجیتال استفاده میشود.
شاید بتوان این پدیده را به عنوان نسخه دیجیتال همان امضاهای خطی خودمان؛ اما با پیچیدگی و امنیت بیشتر بدانیم.
به طور ساده میتوان امضای دیجیتال را یک کد تعریف کرد که به سند و یا یک پیام پیوست میشود.
عناوین مطلب:
بعد از اینکه این کد تولید میشود، اثباتی است که این سند و یا پیام در راه فرستاده شدن از فرستنده تا گیرنده، دستخوش تغییرات نشده است.
استفاده از رمزنگاری برای امنکردن ارتباطات به دوران باستان باز میگردد؛ اما مفهوم امضای دیجیتال در دهه 1970 به لطف توسعه فناوری رمزنگاری کلید عمومی به وجود آمد.
خوب اکنون برای یادگیری عملکرد امضای دیجیتال، بهتر است که در ابتدا در مورد اصول اولیه تابع هش و رمزنگاری کلید عمومی صحبت کنیم.
عملگرهای هش
هش کردن یکی از از عنصرهای اصلی در سیستم امضای دیجیتال است.
فرآیند هش کردن شامل فرستادن اطلاعات با هر سایز و رسیدن آن اطلاعات به دست گیرنده با یک سایز ثابت است.
این کار توسط الگوریتمهای خاص با نام عملگرهای هش انجام میشود. اطلاعات فرستاده شده با عنوان مقدار هش معروف هستند.
با ترکیب کردن این فناوری با رمزنگاری میتوان عملگر هش رمزنگاری شده را به وجود آورد که با استفاده از آن اثر انگشت دیجیتال تولید میشود؛ یعنی هر تغییری که در اطلاعات اولیه ایجاد شود، یک خروجی کاملا متفاوت خواهد داد و به همین دلیل به طور گسترده از عملگر هش رمزنگاری شده برای اعتبارسنجی اطلاعات دیجیتال استفاده میشود.
رمزنگاری کلید عمومی (PKC)
رمزنگاری کلید عمومی (به انگلیسی Public-key cryptography) و یا به اختصار PKC به سیستمی گفته میشود که در آن از دو کلید متفاوت استفاده میشود: کلید عمومی و کلید شخصی یا خصوصی.
این دو کلید از نظر ریاضی به هم مربوط بوده و از آنها میتوان برای رمزنگاری اطلاعات و امضای دیجیتال استفاده کرد.
به عنوان یک ابزار رمزنگاری، PKC روش ابتداییتر رمزنگاری تقارنی است.
در سیستمهای سنتی تنها از یک کلید برای رمزنگاری و هم رمزگشایی اطلاعات استفاده میشود؛ اما در PKC برای رمزنگاری از کلید عمومی و برای رمزگشایی از کلید شخصی استفاده میکنیم.
علاوه بر این از طرح PKC میتوان برای تولید امضای دیجیتال استفاده کرد.
این فرآیند شامل هش کردن اطلاعات دیجیتال و کلید شخصی فرد امضاکننده میشود.
بعد از این مرحله دریافتکننده اطلاعات و یا پیام میتواند با همان کلید عمومی که فرد امضاکننده در اختیار او قرار داده است، اعتبار اطلاعات ارسالی را بررسی کند.
در برخی شرایط امضای دیجیتال رمزنگاری میگردد؛ اما این موضوع همیشگی نیست؛ برای مثال در بلاکچین بیتکوین از PKC و امضای دیجیتال استفاده میشود؛ ولی برخلاف باور عموم، هیچ رمزنگاری در این فرآیند وجود ندارد و در واقع بیتکوین از الگوریتم ECDS برای تایید تراکنشها استفاده میکند.
مطلب مرتبط: تفاوت بیتکوین و بلاکچین چیست؟
امضای دیجیتال چگونه کار میکند؟
در بحث ارزهای دیجیتال، به وجود آمدن یک امضای دیجیتال شامل سه مرحله اصلی است: هش کردن، امضا و تایید.
1. هش کردن اطلاعات
اولین قدم هش کردن اطلاعات دیجیتال و یا یک پیام است که این کار توسط الگوریتم هش کردن و تولید مقدار هش انجام میشود.
همانطور که گفته شد، هر پیامی میتواند یک اندازه متفاوت داشته باشد؛ اما وقتی این پیام هش میشود، طول تمام آنها یکسان است. این پایهایترین ویژگی عملگر هش است.
با این حال هش کردن اطلاعات یک اجبار و ضرورت در امضای دیجیتال نیست؛ زیرا میتوان برای تولید آن از یک کلید شخصی استفاده کرد؛ اما در بحث رمزارزها هش کردم الزامی است.
2. امضا کردن
بعد از اینکه اطلاعات هش شد، فرستنده پیام باید آن را امضا کند و این زمانی است که رمزنگاری کلید عمومی وارد صحنه میشود.
چندین مکانیسم مختلف برای امضای دیجیتال وجود دارد که هرکدام از آنها روش خاص خود را دارند؛ اما در نهایت این پیام هش شده توسط یک کلید شخصی امضا گردیده و بعدا اعتبار آن توسط گیرنده پیام به وسیله یک کلید عمومی ایجاد شده توسط امضا کننده مورد بررسی قرار میگیرد.
به بیان دیگر اگر از کلید شخصی برای تولید امضای دیجیتال استفاده نشود، گیرنده اطلاعات و یا پیام نمیتواند با آن کلید عمومی اطلاعات را دریافت و اعتبار آن را تایید کند.
هم کلید شخصی و هم کلید عمومی توسط فرستنده اطلاعات به وجود میآید؛ اما گیرنده، تنها کلید عمومی را در اختیار خواهد داشت.
لازم به گفتن نیست که هر امضای دیجیتال وابسته به محتوای پیام ارسالی است؛ پس بر خلاف امضای دستنویس که بدون توجه به محتوا همیشه یکسان است، امضای دیجیتال با توجه به پیام و اطلاعات مختلف فرق میکند.
3. تایید و اعتبارسنجی
بگذارید تمام این فرآیند را تا پایان دوره اعتبارسنجی با یک مثال برای شما توضیح بدهم.
فرض کنید که علی یک پیام برای محمد نوشته، هش کرده و با ترکیب کردن با کلید شخصیاش، یک امضای دیجیتال برای آن تولید میکند. این امضا به عنوان اثر انگشت خاص این پیام محسوب میشود.
وقتی محمد پیام علی را دریافت میکند، میتواند با استفاده از کلید عمومیای که علی به او داده است، درستی امضای دیجیتال پیام را تایید کند.
به این طریق محمد میتواند مطمئن شود که پیام فرستاده شده توسط علی امضا شده است؛ زیرا کلید عمومی او تنها به کلید شخصی علی پاسخ میدهد (انتظاری که داریم این است).
پس بسیار مهم است که علی کلید شخصی خودش را همیشه در یک جای امن نگهداری کند.
اگر شخص دیگری کلید شخصی علی را به دست آورد، میتواند به جای او امضای دیجیتال تولید کرده و وانمود کند که علی است.
در بحث بیتکوین این موضوع ملموستر است؛ زیرا با استفاده از کلید شخصی علی، هرکسی میتواند از بیتکوینهای او برای خودش استفاده کند.
دلیل اهمیت امضای دیجیتال
از امضای دیجیتال برای به دست آوردن سه نتیجه مهم استفاده میشود:
درستی اطلاعات، احراز هویت، گرفتن حق تکذیب (non-repudiation)
ر مورد هر سه این نتایج در ادامه توضیح خواهیم داد:
- درستی اطلاعات: با توجه به مثال قبلی محمد میتواند تایید کند که پیام علی در بین راه دستکاری و تغییر داده نشده است. هر تغییری در پیام اولیه، امضای دیجیتال آن را تغییر میدهد.
- احراز هویت: تا زمانی که کلید شخصی علی در یک جای امن نگهداری شده و فقط در اختیار او باشد، محمد میتواند مطمئن بماند که پیام صرفا از طرف علی فرستاده شده است.
- گرفتن حق تکذیب: وقتی امضا تولید شود، علی دیگر نمیتواند ادعا کند که این پیام را امضا نکرده است؛ مگر اینکه ثابت شود، کلید شخصی او در دستان شخص دیگری است.
کاربردهای امضای دیجیتال
امضای دیجیتال در انواع مختلف اسناد و گواهینامهها قابل استفاده است و به همین دلیل این پدیده کاربردهای بسیاری دارد که مهمترین آنها را در ادامه به شما معرفی کردهایم:
- تکنولوژی اطلاعات: میتوان در این حوزه امنیت سیستمهای ارتباطی اینترنت را افزایش داد.
- اقتصاد و مباحث مالی: از امضای دیجیتال میتوان برای حسابرسیها، گزارش مخارج، قرارداد وام و غیره استفاده کرد.
- حقوقی: امضای دیجیتال تمام قراردادهای تجاری، حقوقی و اسناد دولتی.
- بهداشت و سلامت: با امضای دیجیتال میتوان از کلاهبرداریهای معمول شرکتهای بیمه، نسخهها و سوابق پزشکی تقلبی جلوگیری کرد.
- بلاکچین: استفاده از امضای دیجیتال تضمین میکند که تنها صاحب واقعی یک ارز دیجیتال میتواند اقدام به انتقال آن و انجام تراکنش کند (تا زمانی که کلید شخصی آن فرد دزدیده نشود)
محدودیتهای امضای دیجیتال
طرحهای امضای دیجیتال در سه زمینه با محدودیتهایی مواجه است:
- الگوریتم: کیفیت الگوریتمهای استفاده شده در امضای دیجیتال بسیار مهم است. این موضوع شامل انتخاب عملگرهای هش مورد اعتماد و سیستمهای رمزنگاری شده میشود.
- کلید شخصی: اگر کلیدهای شخصی به نوعی لو رفته و یا دزدیده شوند، بحثهای مربوط به احراز هویت و گرفتن حق تکذیب دچار مشکل میشود. در مورد ارزهای دیجیتال، از دست دادن کلید شخصی میتواند منجر به ضرر بسیار زیاد مالی شود.
- پیادهسازی سیستم: اگر الگوریتمهای انتخاب شده خوب؛ اما نحوه پیادهسازی آن نقص داشه باشد، امضای دیجیتال به خوبی کار نخواهد کرد.
مقایسه امضای الکترونیک و امضای دیجیتال
به طور ساده امضای دیجیتال زیر مجموعهای از امضای الکترونیک است که اشاره به هر نوع روش الکترونیک برای امضا کردن اسناد و مدارک دارد؛ در نتیجه تمام امضاهای دیجیتال، امضای الکترونیک است؛ اما برعکس این موضوع درست نیست.
تفاوت اصلی بین این دو روش احراز هویت است. در امضای دیجیتال از سیستمهای رمزنگاری؛ مانند عملگر هش، رمزنگاری کلید عمومی و تکنیکهای رمزنگاری استفاده میشود.
سخن پایانی
عملگر هش و رمزنگاری کلیدهای عمومی دو سیستم اصلی امضای دیجیتال هستند که اکنون کاربردهای بسیار گستردهای دارد.
اگر سیستم امضای دیجیتال به طور مناسب پیادهسازی شود، میتواند امنیت، درستی اطلاعات و روشهای احراز هویت برای تمام اطلاعات دیجیتال را بهبود ببخشید.
در زمینه رمزارزها از امضای دیجیتال برای تایید اعتبار تراکنشهای کریپتوکارنسی استفاده میشود.
امضای دیجیتال برای بیتکوین بسیار مهمتر است؛ زیرا مشخص میکند که این ارز دیجیتال بسیار ارزشمند تنها توسط صاحب اصلی آن در حال خرج شدن است.
هرچند که سالهاست در حال استفاده از امضای دیجیتال و الکترونیک هستیم؛ ولی فضای رشد بسیار زیادی برای این پدیدهها وجود دارد.
در حال حاضر بخش اعظمی از کارهای اداری و دفتری سراسر جهان به کاغذبازیهای معمول محدود میشود؛ اما به زودی خواهیم دید که استفاده از امضای دیجیتال گسترش یافته و به تدریج از سیستمهای سنتی به سمت دیجیتالی شدن مهاجرت خواهیم کرد.
استفاده از امضای دیجیتال میتواند هزینههای مربوط به کارهای اداری را نیز به اندازه قابل توجهی کاهش دهد.
شما در بورس، علاوه بر خرید و فروش سهام:
- میتوانید در داراییهایی مانند طلا و مسکن سرمایهگذاری کنید
- در صندوقهای سرمایه گذاری بدون ریسک، سود ثابت بگیرید
برای شروع سرمایهگذاری، افتتاح حساب رایگان را در یکی از کارگزاریها انجام دهید:
نام شرکت | ویژگیها | امتیاز | لینک ثبتنام |
---|---|---|---|
کارگزاری آگاه |
|
برای سرمایهگذاری و معامله موفق، نیاز به آموزش دارید. خدمات آموزشی زیر از طریق کارگزاری آگاه ارائه میشود: