آیا رمزنگاری در ارزهای دیجیتال در برابر رایانه های کوانتومی ایمن هستند؟

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

در ادامه مطالب به تمامی این سوالات پاسخ داده خواهد شد.

آشنایی با رمزنگاری ارزهای دیجیتال

برای آن‌که بدانیم رایانه‌های کوانتومی چه تاثیری برروی کلیدهای خصوصی می‌گذارند و با نحوه رمزنگاری در ارزهای دیجیتال آشنا شویم، ابتدا شما را با مفاهیم پایه در مورد الگوریتم‌های رمزنگاری، آشنا می‌کنیم. یکی از این مفاهیم hash است.

اصطلاحhash  به‌چه معناست؟

منظور از hash در مورد رمزنگاری ارزهای دیجیتال، کد کردن داده‌ها با امنیت بالا است. فرض کنید یک متن رشته‌ای وجود دارد که در اثر اعمال یک الگوریتم رمزنگاری‌شده، توانسته‌ایم این متن رشته‌ای را به یک مجموعه رشته کدگذاری‌شده دیگر تبدیل کنیم. این مجموعه رشته تولید شده جدید، به عنوان hash در نظر گرفته می‌شود.

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

به‌عنوان مثال یک هش می‌تواند کلمه “سلام” را دریافت و پس از انجام عملیات هش کردن به‌صورت زیر نمایش دهد:

(۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۵ad33848ca31aaa6e0574cc163cc358c3f45b5f0381e0)

نکته‌ای که در اینجا وجود دارد این است که مهم نیست طول داده‌های وررودی شما به چه اندازه باشد. چه یک کلمه و یا چند جمله، هر دو به همین شکل نمایش داده می‌شوند.

به عبارت دیگر شما می‌توانید چندین پیام مختلف را نیز در یک هش قرار بدهید. این مسئله زمانی اهمیت پیدا می‌کند که با تعداد زیادی داده ورودی طرف باشیم. بنابراین می‌توانیم به‌جای ذخیره همه داده‌های ورودی به‌صورت مجزا (که می‌توانند بسیار حجیم و جاگیر باشند) معادل هش آن را ذخیره کنیم که حجم کم‌تری را اشغال می‌کنند؛ همچنین پیگیری و جستجوی آن‌ها را نیز برایمان آسان‌تر می‌کند.

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

طول و مقدار داده‌های ورودی در طول هش خروجی اثر ندارد

الگوریتم‌های رمزنگاری شده

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

تابع یک‌طرفه و سخت

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

به‌طور مثال فرض کنید که ما ۲ عدد میوه در اختیار داریم: یکی سیب و دیگری لیمو. به صورت تصادفی و کاملا مخفیانه، یکی از این میوه‌ها را هش می‌کنیم. حالا شما چگونه می‌توانید پی ببرید که ورودی ما کدام میوه بوده؟

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

به‌نظر کار سختی نمی‌آید. حال فرض کنید تعداد میوه‌ها را به ۲۵۶ عدد افزایش دهیم. این‌بار شما باید برای رسیدن به جواب مسئله، تعداد بیشتری از هش‌ها را با خروجی اصلی مقایسه کنید تا پی به داده ورودی اصلی ببرید.

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

قابلیت محاسبه سریع

توابع رمزنگاری درالگوریتم‌ها باید به نحوی باشند که رایانه‌ها بتوانند داده‌های ورودی را به سرعت هش کرده و خروجی رمزنگاری شده را بسازند. زیرا هرچه محاسبه این توابع سخت‌تر باشند، میزان زمان بیشتری برای تولید یک هش صرف می‌شود؛ که در نهایت باعث ناکارآمد شدن کل سیستم خواهد شد.

قطعی و مشخص بودن در نتایج

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

انعطاف‌ناپذیری در مقابل تغییرات داده‌های ورودی

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

غیر قابل تکرار بودن الگو

توابع یک‌طرفه با توجه به این‌که دارای ورودی منحصر به فردی هستند، باید طوری باشند که خروجی‌های متفاوتی نیز ارائه دهند. به این‌ترتیب ما همواره هش‌های متناظر با هر ورودی مشخص

خواهیم داشت و عملا  احتمال وجود دو خروجی یکسان با ورودی‌های مجزا غیر‌ممکن است.

انواع الگوریتم‌ها در ارزهای دیجیتال

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

الگوریتم SHA-256

الگوریتم SHA-256

یکی از معروف‌ترین الگوریتم‌های رمزنگاری در ارزهای دیجیتال است که در بلاک‌چین بیت‌کوین و بیکتون‌کش و… نیز مورد استفاده قرار گرفته است. در واقع یک هش دیجیتال ۲۵۶ بیتی را ایجاد می‌کند که در هر ۱۰ دقیقه تمامی هش‌ها را در یک بلوک ذخیره و آن را در بلاک‌چین ثبت می‌کند.

این الگوریتم در راستای پردازش بلوک‌هایی که ایجاد می‌کند، نیازمند قدرت محاسباتی گیگاهش بر ثانیه است. و برای انجام عملیات فقط به قدرت محاسباتی نیاز دارد که بسیار پرزحمت اما ایمن نیز هست.

ارسال پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *