امضای دیجیتالی چیست؟

امضای دیجیتالی یک مکانیسم پنهانی است که صحت و درستی داده های دیجیتالی را تایید می‌­کند. ممکن است تصور کنیم که نسخه ی دیجیتالی امضای خطی و دست نویس ماست اما باید بدانیم که خیلی پیچیده تر و با امنیت بالاتری از تصور ما است.

به زبان ساده تر می­توانیم بگوییم امضای دیجیتالی کدی است که به پیام ها یا سندهای ما پیوست می‌­شود. پس از ایجاد، کد به عنوان مدرکی برای عدم تغییر پیام در طول مسیر خود از فرستنده به گیرنده عمل می‌­کند.

اگرچه مفهوم ایمن سازی ارتباطات با استفاده از رمزنگاری به دوره های قبل برمی گردد، اما طرح امضای دیجیتال در دهه ۱۹۷۰ به لطف توسعه رمزنگاری کلید عمومی PKC  به یک واقعیت ممکن تبدیل شد. بنابراین، برای یادگیری نحوه ی کار با امضاهای دیجیتالی، ابتدا باید اصول توابع هش و رمزنگاری کلید عمومی را درک کنیم.

توابع هش

هش یکی از عناصر اصلی سیستم امضای دیجیتال است. فرآیند هش کردن شامل تبدیل داده ها از هر اندازه به یک خروجی با اندازه ثابت است. این کار توسط نوع خاصی از الگوریتم های معروف به توابع هش انجام می‌­شود. خروجی تولید شده توسط یک تابع هش به عنوان یک مقدار هش یا خلاصه پیام شناخته می­‌شود.

هنگامی که با رمزنگاری ترکیب می شود، می‌­توان از توابع هش رمزنگاری شده برای تولید مقدار هش (خلاصه) استفاده کرد که به عنوان اثر انگشت دیجیتال منحصر به فرد عمل می­‌کند. این بدان معنی است که هرگونه تغییر در داده های ورودی (پیام) منجر به خروجی کاملاً متفاوتی می‌­شود (مقدار هش) و دلیلش این است که از توابع هش رمزنگاری برای تأیید صحت داده های دیجیتالی به طور گسترده استفاده می­‌شود.

استیک ارز دیجیتال؛ کسب درآمد از طریق استیکینگ، اثبات سهام

رمزنگاری کلید عمومی

رمزنگاری کلید عمومی یا PKC به سیستمی رمزنگاری اشاره دارد که از یک جفت کلید استفاده می­‌کند: یک کلید عمومی و یک کلید خصوصی. این دو کلید از نظر ریاضی با هم مرتبط هستند و می­‌توانند برای رمزگذاری داده ها و امضای دیجیتال استفاده شوند.

رمزنگاری کلید عمومی به عنوان یک ابزار رمزگذاری ایمن تر از روش های ابتدایی رمزگذاری متقارن (symmetric encryption) است. در حالی که سیستم های قدیمی برای رمزگذاری و رمزگشایی اطلاعات به همان کلید متکی هستند، رمزنگاری کلید عمومی امکان رمزگذاری داده ها با کلید عمومی و رمزگشایی داده ها با کلید خصوصی مربوطه را فراهم می­‌کند.

به غیر از این، طرح رمزنگاری کلید عمومی ممکن است در تولید امضاهای دیجیتالی نیز اعمال شود. در اصل، این فرآیند شامل هش پیام (یا داده های دیجیتالی) همراه با کلید خصوصی امضا کننده است. در مرحله بعدی، گیرنده پیام می­تواند با استفاده از کلید عمومی ارائه شده توسط امضا کننده، معتبر بودن امضا را بررسی کند.

در برخی از مواقع امضاهای دیجیتال ممکن است رمزگذاری شده باشند، اما همیشه اینطور نیست. به عنوان مثال، بلاک چین بیت کوین از رمزنگاری کلید عمومی و امضای دیجیتال استفاده می‌کند، درمقابل بسیاری تمایل دارند که هیچ رمزگذاری در این روند انجام ندهند. از نظر فنی، بیت کوین اصطلاحاً الگوریتم امضای دیجیتال Elliptic Curve (ECDSA) را برای تأیید اعتبار معامله ها به کار می‌گیرد.

امضای دیجیتال چگونه کار می­کند؟

در زمینه ارزهای دیجیتال، یک سیستم امضای دیجیتال اغلب از سه مرحله اساسی هش کردن، امضا و تأیید تشکیل شده است.

۱. هش کردن داده ها

اولین مرحله هش کردن پیام ها یا داده های دیجیتال است. این کار با ارسال داده ها از طریق الگوریتم هش انجام می­‌شود تا یک مقدار هش تولید شود (یعنی خلاصه پیام). همانطور که گفته شد، اندازه پیام ها م‌ی­تواند به میزان قابل توجهی متفاوت باشد، اما وقتی هش می‌شوند، تمام مقادیر هش آنها دارای طول یکسانی هستند. این اساسی ترین ویژگی یک تابع هش است.

با این حال، هش کردن داده ها برای تولید امضای دیجیتال ضروری نیست زیرا می­‌توان با استفاده از یک کلید خصوصی پیامی را که اصلاً هش نشده است، امضا کرد. اما برای ارزهای دیجیتال، داده ها همیشه هش می‌­شوند زیرا کارکردن با خلاصه ها با طول ثابت، کل روند را تسهیل می­‌کند.

۲. امضاکردن

پس از هش شدن اطلاعات، فرستنده پیام باید آن را امضا کند. این لحظه ای است که رمزنگاری با کلید عمومی وارد عمل می‌شود. انواع مختلفی از الگوریتم های امضای دیجیتال وجود دارد که هر کدام مکانیزم خاص خود را دارند. اما در اصل، پیام هش شده با یک کلید خصوصی امضا می‌­شود و سپس گیرنده پیام می‌تواند اعتبار آن را با استفاده از کلید عمومی مربوطه (که توسط امضا کننده ارائه شده است) بررسی کند.

به عبارت دیگر، اگر کلید خصوصی هنگام تولید امضا درج نشود، گیرنده پیام نمی­‌تواند از کلید عمومی مربوطه برای تأیید اعتبار آن استفاده کند. کلیدهای عمومی و خصوصی توسط فرستنده پیام تولید می­‌شوند، اما فقط کلید عمومی با گیرنده به اشتراک گذاشته می­‌شود.

شایان ذکر است که امضاهای دیجیتالی ارتباط مستقیمی با محتوای هر پیام دارند. بنابراین برخلاف امضاهای دست نویس و خطی که بدون توجه به پیام یکسان هستند، هر پیام دیجیتالی با امضای دیجیتال متفاوت است.

۳. تایید و درستی

اجازه دهید تا با مثالی کل مراحل را تا مرحله آخر تأیید شرح دهیم. تصور کنید که شخص A پیامی برای شخص B می­‌نویسد، آن را هش می­‌کند و سپس مقدار هش را با کلید خصوصی خود ترکیب می­‌کند تا امضای دیجیتالی تولید کند. امضا به عنوان یک اثر انگشت دیجیتالی منحصر به فرد از آن پیام خاص کار خواهد کرد.

وقتی شخص B پیام را دریافت کرد، می‌­تواند با استفاده از کلید عمومی ارائه شده توسط شخص A، اعتبار امضای دیجیتالی را بررسی کند. از این طریق، شخص B می­تواند مطمئن باشد که امضا توسط شخص A ایجاد شده است زیرا فقط او دارای کلید خصوصی است که با آن کلید عمومی مطابقت دارد (حداقل انتظار ما همین است).

بنابراین، برای شخص A بسیار مهم است که کلید خصوصی خود را مخفی نگه دارد. اگر شخص دیگری کلید خصوصی شخص A را بگیرد، می‌­تواند امضای دیجیتالی ایجاد کند و خود را شخص A معرفی کند. در زمینه بیت کوین، این بدان معنی است که کسی می­تواند بدون اجازه او از کلید خصوصی شخص A برای جابجایی یا خرج بیت کوین خود استفاده کند.

چرا امضای دیجیتالی مهم است؟

از امضاهای دیجیتالی اغلب برای دستیابی به سه نتیجه استفاده می­‌شود: یکپارچگی داده ها، احراز هویت و عدم انکار.

موارد استفاده از امضای دیجیتالی

امضای دیجیتالی را می­توان برای انواع متفاوت اسناد و مدارک دیجیتال اعمال کرد. به همین ترتیب، آنها چندین کاربرد دارند. برخی از موارد رایج استفاده عبارتند از:

محدودیت ها

چالش های عمده ای که امضای دیجیتال با آن روبرو هستند حداقل به سه عامل بستگی دارند:

امضاهای الکترونیکی در مقابل امضاهای دیجیتالی

به زبان ساده، امضاهای دیجیتالی مربوط به یک نوع خاصی از امضاهای الکترونیکی است که به هر روش الکترونیکی برای امضای اسناد و پیام ها اشاره دارد. بنابراین­، همه امضاهای دیجیتالی امضای الکترونیکی هستند، اما عکس آن همیشه درست نیست.

تفاوت اصلی بین آنها روش احراز هویت است. امضاهای دیجیتالی سیستم های رمزنگاری مانند توابع هش، رمزنگاری کلید عمومی و تکنیک­های رمزگذاری را به کار می­‌گیرند.

جمع بندی

توابع هش و رمزنگاری کلید عمومی در مرکز سیستم های امضای دیجیتال است که اکنون در طیف وسیعی از موارد استفاده، اعمال می­‌شود. در صورت اجرای صحیح، امضاهای دیجیتالی می توانند امنیت را افزایش دهند، از یکپارچگی اطمینان حاصل کنند و تأیید اعتبار انواع داده های دیجیتالی را تسهیل کنند.

در حوزه بلاک چین، از امضاهای دیجیتال برای امضا و مجوز معامله ی ارزهای دیجیتالی استفاده می‌­شود که برای بیت کوین از اهمیت ویژه ای برخوردار هستند زیرا امضاها تضمین می کنند که کوین ها فقط می‌توانند توسط افرادی که کلیدهای خصوصی مربوطه دارند خرج شوند.

اگرچه ما سالهاست از امضای الکترونیکی و دیجیتالی استفاده می‌­کنیم، اما هنوز فضای زیادی برای رشد آن وجود دارد. امروزه بخش بزرگی از تشریفات اداری مبتنی بر اسناد و مدارک است، اما با مهاجرت به یک سیستم دیجیتالی بالاتر، احتمالاً شاهد تصویب بیشتر طرح های امضای دیجیتال خواهیم بود.

خروج از نسخه موبایل