کیف پول من

کریپتوگرافی (Cryptography) چیست؟ راهنمای جامع امنیت با رمزنگاری در ارزهای دیجیتال

تاریخ انتشار:
۲ آبان ۱۴۰۲
آخرین به‌روزرسانی:
۱۸ تیر ۱۴۰۵
6363

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

cryptography

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

کریپتوگرافی یا رمزنگاری چیست؟

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

مفهوم رمزنگاری به زبان ساده برای کاربران تازه‌کار

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

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

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

تفاوت رمزنگاری کلاسیک فیزیکی با رمزنگاری مدرن دیجیتال

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

  • رمزنگاری کلاسیک فیزیکی: در دوران باستان و حتی تا زمان جنگ جهانی دوم، رمزنگاری بیشتر بر پایه‌ی جابه‌جایی حروف الفبا یا استفاده از دستگاه‌های مکانیکی بود. معروف‌ترین مثال این دوره، روش ژولیوس سزار است که در آن برای ارسال پیام‌های جنگی، هر حرف را چند خانه در الفبا جابه‌جا می‌کردند. در این دوران، امنیت پیام‌ها به شدت وابسته به مخفی نگه‌داشتن خود روش رمزنگاری بود.
  • رمزنگاری مدرن دیجیتال: با ورود کامپیوترها، همه‌چیز تغییر کرد. کریپتوگرافی مدرن دیگر به جابه‌جایی ساده‌ی حروف بسنده نمی‌کند، بلکه بر پایه‌ی ریاضیات بسیار پیچیده و الگوریتم‌ها (Algorithm: مجموعه‌ای از دستورالعمل‌های دقیق و گام‌به‌گام ریاضی برای حل یک مسئله) بنا شده است.

تفاوت‌های اصلی این دو نسل را می‌توان در موارد زیر خلاصه کرد:

  • تفاوت در قدرت پردازش: در روش‌های کلاسیک، انسان‌ها می‌توانستند با قلم و کاغذ رمزها را بشکنند. اما در رمزنگاری مدرن دیجیتال، معادلات ریاضی به قدری پیچیده هستند که حتی قوی‌ترین ابرکامپیوترهای جهان نیز برای شکستن آن‌ها به میلیون‌ها سال زمان نیاز دارند.
  • شفافیت سیستم‌ها: در گذشته، ارتش‌ها تلاش می‌کردند تا روش رمزنگاری خود را مخفی نگه دارند تا کسی نتواند پیام‌ها را بخواند. اما امروز در سیستم‌های بلاکچینی، الگوریتم‌ها کاملا متن‌ باز (Open-source: کدهای برنامه‌نویسی که برای بررسی و ارزیابی در دسترس عموم هستند) طراحی می‌شوند. در دنیای جدید، امنیت سیستم به دلیل مخفی بودن کدها نیست، بلکه به خاطر غیر قابل نفوذ بودن ریاضیات آن است.
  • گسترش کاربردها: رمزنگاری کلاسیک فقط یک هدف داشت و آن پنهان کردن پیام بود. اما رمزنگاری مدرن علاوه بر پنهان‌سازی اطلاعات، وظیفه‌ی تایید هویت دیجیتال افراد، اطمینان از دستکاری نشدن داده‌ها در طول مسیر و جلوگیری از ثبت تراکنش‌های تقلبی را نیز بر عهده دارد.

تاریخچه تکامل Cryptography از گذشته تا امروز

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

از ارتباطات محرمانه در دوران باستان تا پیدایش کامپیوترها

داستان رمزنگاری بسیار پیش‌تر از اختراع برق و اینترنت آغاز شد. در دوران باستان، فرماندهان نظامی برای ارسال پیام‌های جنگی به خط مقدم، از روش‌های ابتدایی برای مخفی کردن متن استفاده می‌کردند. یکی از معروف‌ترین نمونه‌های تاریخی، روش رمزنگاری سزار (Caesar Cipher: یک تکنیک ساده‌ی جابه‌جایی حروف که توسط ژولیوس سزار استفاده می‌شد) است. در این روش، هر حرف از پیام با حرفی دیگر در چند خانه‌ی جلوتر از حروف الفبا جایگزین می‌شد. بنابراین اگر نامه‌ی فرستاده شده به دست دشمن می‌افتاد، آن‌ها چیزی جز یک مشت حروف بی‌معنی نمی‌دیدند.

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

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

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

تولد بیت کوین و شروع عصر جدید رمزنگاری در بلاکچین

با وجود تمام این پیشرفت‌ها، هنوز یک گره‌ی کور در دنیای پول‌های دیجیتال وجود داشت: مشکل خرج کردن دوباره (Double Spending: ریسک اینکه یک شخص بتواند یک سکه‌ی دیجیتال را همزمان برای دو نفر بفرستد). در سیستم‌های بانکی سنتی، این مشکل به سادگی توسط خود بانک حل می‌شود، زیرا بانک تاریخچه‌ی حساب‌ها را بررسی می‌کند. اما آیا می‌شد این کار را بدون نیاز به هیچ واسطه‌ای انجام داد؟

در سال 2008، فرد یا گروهی با نام مستعار ساتوشی ناکاموتو (Satoshi Nakamoto: خالق ناشناس شبکه‌ی بیت کوین) راه حلی هوشمندانه ارائه کرد. ناکاموتو با ترکیب چند روش پیشرفته‌ی کریپتوگرافی که از دهه‌ها قبل وجود داشتند، سیستمی به نام بلاکچین (Blockchain: یک دفتر کل توزیع‌شده و غیرقابل دستکاری برای ثبت اطلاعات) را به دنیا معرفی کرد.

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

  • تایید هویت بدون نام و نشان: در دنیای رمزارزها، نیازی نیست کارت ملی خود را ارائه دهید. تکنولوژی امضای دیجیتال (Digital Signature: یک کد ریاضی منحصربه‌فرد که ثابت می‌کند شما صاحب واقعی آن دارایی هستید) جایگزین امضای فیزیکی و مدارک هویتی شد.
  • شفافیت در کنار امنیت: برخلاف گذشته که هدف رمزنگاری مخفی کردن کامل پیام بود، در شبکه‌ی بیت کوین تمام تراکنش‌ها برای همه قابل مشاهده است. اما در عین حال، توابع هش (Hash Functions: فرمول‌های ریاضی که داده‌ها را فشرده و قفل می‌کنند) کاری می‌کنند که هیچ‌کس نتواند تاریخچه‌ی این تراکنش‌ها را تغییر دهد یا پول دیگران را سرقت کند.

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

مکانیزم عملکرد رمزنگاری؛ داده‌ها چگونه محافظت می‌شوند؟

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

آشنایی با متن ساده (Plaintext) و متن رمزنگاری شده (Ciphertext)

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

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

کلیدهای رمزنگاری چه هستند و چه نقشی دارند؟

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

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

فرآیند رمزگذاری (Encryption) و رمزگشایی (Decryption)

حالا که با ابزارهای کار آشنا شدیم، بیایید ببینیم چرخه‌ی محافظت از داده‌ها طی چه مراحلی انجام می‌شود:

  • مرحله‌ی رمزگذاری (Encryption): در این مرحله، سیستم کامپیوتری پیام ساده‌ی شما را می‌گیرد و با استفاده از یک کلید مشخص، آن را به هم می‌ریزد. حالا پیام شما به یک گاوصندوق دیجیتال منتقل شده است.
  • مرحله‌ی ارسال داده‌ها: پیام قفل‌شده از طریق شبکه‌ی اینترنت یا بلاک چین برای گیرنده ارسال می‌شود. در این مسیر، پیام کاملا امن است.
  • مرحله‌ی رمزگشایی (Decryption): گیرنده‌ی پیام با استفاده از کلید مخصوص خود، گاوصندوق را باز می‌کند و متن رمزنگاری شده را دوباره به همان متن ساده‌ی اولیه تبدیل می‌کند تا بتواند آن را بخواند یا تایید کند.

الگوریتم رمزنگاری چیست و چگونه انتخاب می‌شود؟

تا اینجا متوجه شدیم که کلیدها پیام را قفل می‌کنند، اما روش و شیوه‌ی دقیق این قفل کردن بر عهده‌ی الگوریتم رمزنگاری (Cryptographic Algorithm: مجموعه‌ای از فرمول‌ها و دستورالعمل‌های پیچیده‌ی ریاضی که قوانین تغییر شکل داده‌ها را تعیین می‌کند) است.

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

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

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

انواع الگوریتم‌های کریپتوگرافی کدامند؟

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

رمزنگاری متقارن (Symmetric Cryptography) و نحوه کارکرد آن

رمزنگاری متقارن قدیمی‌ترین و ساده‌ترین شکل رمزنگاری است. برای درک این روش، قفل در خانه‌ی خود را در نظر بگیرید. شما با یک کلید مشخص در را قفل می‌کنید و با همان کلید، در را باز می‌کنید. در رمزنگاری متقارن نیز دقیقا همین اتفاق می‌افتد؛ یعنی فرستنده و گیرنده‌ی پیام از یک کلید مشترک (Shared Key: یک رمز عبور یکسان که دو طرف ارتباط برای قفل کردن و باز کردن اطلاعات از آن استفاده می‌کنند) بهره می‌برند.

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

رمزنگاری نامتقارن (Asymmetric Cryptography) یا سیستم کلید عمومی

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

در این سیستم هوشمندانه، به جای یک کلید، ما با یک جفت کلید ریاضی مرتبط با هم سروکار داریم:

  • کلید عمومی (Public Key: آدرسی که همه می‌توانند آن را ببینند و مانند شماره کارت بانکی یا شماره حساب برای دریافت ارز دیجیتال یا پیام استفاده می‌شود).
  • کلید خصوصی (Private Key: رمز عبور محرمانه‌ی شما که مانند رمز دوم کارت بانکی است و فقط خودتان برای دسترسی به سرمایه‌ی خود از آن استفاده می‌کنید).

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

رمزنگاری نامتقارن (Asymmetric Cryptography) یا سیستم کلید عمومی | کیف پول من

توابع هش (Hash Functions) و نقش آن‌ها در فشرده‌سازی و تایید داده‌ها

توابع هش یک تفاوت اساسی با دو روش قبلی دارند؛ در اینجا اصلا هیچ کلیدی برای باز کردن قفل وجود ندارد! تابع هش را می‌توانید شبیه به یک چرخ‌گوشت در نظر بگیرید. شما هر مقدار گوشت (داده) که داخل آن بریزید، در نهایت یک خروجی یکدست و مشخص تحویل می‌گیرید، اما هرگز نمی‌توانید گوشت چرخ‌کرده را دوباره به حالت اولیه برگردانید. بنابراین، هش کردن یک فرآیند یک‌طرفه (One-way Function: عملیات ریاضی خاصی که در آن بازگرداندن خروجی به داده‌های اولیه کاملا غیرممکن است) محسوب می‌شود.

شما می‌توانید یک کلمه‌ی کوتاه یا یک کتاب هزار صفحه‌ای را به تابع هش بدهید و در خروجی، یک عبارت با طول کاملا ثابت دریافت کنید که به آن اثر انگشت دیجیتال (Digital Fingerprint: یک کد منحصربه‌فرد که نشان می‌دهد داده‌های اصلی به هیچ‌وجه تغییر نکرده‌اند) می‌گویند. حتی اگر یک نقطه یا یک کلمه در آن کتاب هزار صفحه‌ای جابه‌جا شود، این اثر انگشت به طور کامل عوض می‌شود. به همین دلیل، توابع هش در شبکه‌ی ارزهای دیجیتال نقش بسیار حیاتی در تایید سلامت تراکنش‌ها و جلوگیری از دستکاری تاریخچه‌ی بلاکچین دارند.

جدول مقایسه جامع: تفاوت‌ها، مزایا و معایب انواع روش‌های رمزنگاری

برای اینکه این سه مفهوم مهم به خوبی در ذهن شما ثبت شوند، خلاصه‌ی ویژگی‌ها و کاربردهای آن‌ها را در جدول زیر آماده کرده‌ایم:

نوع الگوریتم

نحوه کارکرد

بزرگ‌ترین مزیت

بزرگ‌ترین نقطه ضعف

مهم‌ترین کاربرد در رمزارزها

رمزنگاری متقارن

استفاده از یک کلید یکسان

سرعت پردازش بسیار بالا

چالش امنیت در ارسال کلید

رمزگذاری پایگاه داده‌ها و اطلاعات حجیم سیستمی

رمزنگاری نامتقارن

استفاده از جفت کلید (عمومی و خصوصی)

امنیت عالی بدون نیاز به ارسال کلید

سرعت پردازش نسبتا پایین

ساخت آدرس کیف پول‌ها و امضای تراکنش‌ها

توابع هش

فرآیند یک‌طرفه و بدون کلید بازگشتی

تایید سریع تغییر نکردن داده‌ها

عدم امکان بازیابی اطلاعات اولیه

استخراج (ماینینگ) بیت کوین و ثبت ایمن تراکنش‌ها

پیوند ناگسستنی بلاکچین و کریپتوگرافی

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

شبکه‌های بلاکچینی چگونه از رمزنگاری برای تامین امنیت استفاده می‌کنند؟

همان‌طور که می‌دانید، شبکه‌ی بلاکچین توسط هیچ شرکت، بانک یا دولت مرکزی کنترل نمی‌شود. این ویژگی جذاب، یک چالش بزرگ به همراه دارد: وقتی هیچ مدیر یا ناظری وجود ندارد، چگونه می‌توانیم به سیستم اعتماد کنیم؟ پاسخ این سوال در مفهوم سیستم‌های بی‌نیاز به اعتماد (Trustless: سیستمی که در آن برای انجام تعاملات ایمن، نیازی به شناخت یا اعتماد به طرف مقابل یا یک واسطه‌ی مرکزی ندارید) نهفته است.

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

نقش توابع هش در استخراج بیت کوین و امنیت شبکه (آشنایی با الگوریتم SHA-256)

در بخش قبلی با چرخ‌گوشت ریاضی یا همان توابع هش آشنا شدیم. شبکه‌ی بیت کوین برای حفظ امنیت خود از یک تابع هش بسیار معروف به نام SHA-256 (Secure Hash Algorithm 256-bit: یک الگوریتم قدرتمند که هر داده‌ای با هر اندازه‌ای را می‌گیرد و یک رشته‌ی متنی ثابت ۶۴ کاراکتری تحویل می‌دهد) استفاده می‌کند.

نقش این الگوریتم در استخراج (ماینینگ) و امنیت شبکه بسیار حیاتی است:

  • زنجیر کردن بلوک‌ها: هر بلوک جدید در بلاکچین، حاوی هش بلوک قبلی خود است. این یعنی بلوک‌ها مانند حلقه‌های یک زنجیر محکم به هم متصل هستند. اگر یک هکر بخواهد اطلاعات بلوک شماره ده را تغییر دهد، هش آن بلوک کاملا عوض می‌شود. این تغییر باعث می‌شود هش بلوک یازده، دوازده و تمام بلوک‌های بعدی نیز نامعتبر شود و شبکه‌ی بلاکچین فورا متوجه این تقلب شده و آن را پس می‌زند.
  • استخراج بیت کوین: ماینر ها (Miner: کامپیوترهای قدرتمندی که در شبکه، معادلات ریاضی را حل کرده و تراکنش‌ها را تایید می‌کنند) برای تولید یک بلوک جدید، باید دائما اطلاعات را در تابع SHA-256 قرار دهند تا به یک هش خاص که شبکه از آن‌ها خواسته است، برسند. این کار شبیه به حدس زدن رمز یک گاوصندوق با میلیون‌ها حالت مختلف است و به همین دلیل است که استخراج بیت کوین به برق و قدرت پردازش بالایی نیاز دارد.

کلید عمومی (Public Key) و کلید خصوصی (Private Key) در کیف پول‌های ارز دیجیتال

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

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

امضای دیجیتال (Digital Signature) چیست و چرا در تایید تراکنش‌ها حیاتی است؟

فرض کنید می‌خواهید مقداری ارز دیجیتال برای دوست خود بفرستید. شبکه از کجا باید بفهمد که شما واقعا صاحب آن ارزها هستید؟ شما باید به شبکه ثابت کنید که کلید خصوصی را دارید، اما اگر کلید خصوصی خود را به شبکه نشان دهید، ممکن است هکرها آن را سرقت کنند. اینجاست که معجزه‌ی امضای دیجیتال (Digital Signature: یک مهر تایید ریاضی که با استفاده از کلید خصوصی ساخته می‌شود تا هویت شما را بدون افشای رمزتان اثبات کند) وارد عمل می‌شود.

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

نمودار جریان تراکنش: یک تراکنش کریپتویی از ثبت تا تایید نهایی چگونه رمزنگاری می‌شود؟

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

  • شروع تراکنش: شما تصمیم می‌گیرید مقداری بیت کوین برای یک دوست بفرستید. برای این کار، آدرس کلید عمومی دوستتان را در کیف پول خود وارد می‌کنید.
  • امضای تراکنش: کیف پول شما با استفاده از کلید خصوصی خودتان، این درخواست را مهر و موم کرده و یک امضای دیجیتال برای آن می‌سازد.
  • پخش در شبکه: این تراکنش امضاشده، به نودهای شبکه (Node: کامپیوترهای متصل به بلاکچین که اطلاعات را در سراسر جهان مخابره و ذخیره می‌کنند) ارسال می‌شود.
  • تایید هویت و موجودی: ماینرها امضای دیجیتال شما را بررسی می‌کنند تا مطمئن شوند تراکنش واقعا از طرف شماست و همچنین موجودی حساب شما برای این انتقال کافی است.
  • ورود به بلوک و هش شدن: پس از تایید، تراکنش شما همراه با صدها تراکنش دیگر در یک بلوک قرار می‌گیرد. این بلوک وارد تابع هش SHA-256 شده و اثر انگشت دیجیتال آن تولید می‌شود.
  • ثبت ابدی: بلوک جدید به طور رسمی به زنجیره‌ی بلاکچین اضافه می‌شود. حالا تراکنش شما با موفقیت انجام شده و تاریخچه‌ی آن برای همیشه با امنیت کامل قفل شده است.

نمودار جریان تراکنش: یک تراکنش کریپتویی از ثبت تا تایید نهایی چگونه رمزنگاری می‌شود؟ | کیف پول من

مزایای اصلی استفاده از Cryptography در بازارهای مالی دیجیتال

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

حفظ حریم خصوصی و محرمانگی تراکنش‌های مالی

اولین و آشناترین وظیفه‌ی رمزنگاری، حفظ محرمانگی (Confidentiality: پنهان نگه‌داشتن اطلاعات حساس از دید افراد غیرمجاز) است. در بازارهای مالی دیجیتال، شما دوست ندارید تمام دنیا بدانند چه مقدار سرمایه دارید یا پول‌های خود را برای چه کسانی می‌فرستید.

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

یکپارچگی اطلاعات و جلوگیری از دستکاری تاریخچه‌ی بلاکچین

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

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

امکان احراز هویت ایمن فرستنده و گیرنده‌ی پیام

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

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

عدم امکان انکار (Non-repudiation) برای جلوگیری از کلاهبرداری و اختلافات مالی

یکی از مشکلات رایج در قراردادهای سنتی این است که شخص ممکن است سندی را امضا کند و بعدا زیر حرفش بزند و بگوید من این کار را نکرده‌ام. در سیستم‌های مالی دیجیتال، مکانیزمی به نام عدم امکان انکار (Non-repudiation: وضعیتی که فرستنده‌ی پیام یا تراکنش نمی‌تواند بعدا انجام آن را تکذیب کند) وجود دارد که جلوی این نوع کلاهبرداری‌ها را می‌گیرد.

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

حذف واسطه‌های سنتی بانکی و تحقق سیستم‌های غیرمتمرکز

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

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

آینده کریپتوگرافی در دنیای مالی و تکنولوژی

علم رمزنگاری همیشه در حال یک مسابقه‌ی بی‌پایان است؛ مسابقه‌ای بین سازندگان قفل‌های دیجیتال و کسانی که می‌خواهند این قفل‌ها را بشکنند. تا به امروز، الگوریتم‌های فعلی به خوبی از سرمایه‌ی کاربران در دنیای رمزارزها محافظت کرده‌اند، اما با پیشرفت سریع تکنولوژی، یک غول جدید و بسیار قدرتمند در حال بیدار شدن است که می‌تواند تمام معادلات را تغییر دهد. در این بخش، نگاهی به آینده‌ی این تکنولوژی و چالش‌های پیش روی آن می‌اندازیم.

تهدید پردازش کوانتومی برای امنیت بلاکچین و ارزهای دیجیتال

برای درک این تهدید، ابتدا باید بدانیم کامپیوتر کوانتومی (Quantum Computer: نسل بسیار پیشرفته‌ای از رایانه‌ها که به جای پردازش خطی اطلاعات، میلیون‌ها حالت مختلف را به طور همزمان محاسبه می‌کنند) چیست. فرض کنید می‌خواهید رمز یک گاوصندوق را با امتحان کردن تمام اعداد ممکن پیدا کنید. یک کامپیوتر معمولی مانند انسانی است که رمزها را یکی‌یکی و پشت سر هم امتحان می‌کند. اما یک کامپیوتر کوانتومی مانند لشکری از انسان‌هاست که تمام رمزهای ممکن را در یک ثانیه با هم تست می‌کنند!

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

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

آینده کریپتوگرافی در دنیای مالی و تکنولوژی | صرافی کیف پول من

ظهور رمزنگاری مقاوم در برابر کوانتوم (Post-Quantum Cryptography)

شاید با خواندن بخش قبلی کمی نگران امنیت سرمایه‌ی خود شده باشید، اما به عنوان یک سرمایه‌گذار اصلا جای نگرانی نیست! دانشمندان، ریاضیدانان و توسعه‌دهندگان شبکه‌ی رمزارزها دست روی دست نگذاشته‌اند تا هکرها پیروز شوند. آن‌ها از سال‌ها پیش در حال کار روی پادزهر این مشکل هستند که به آن رمزنگاری مقاوم در برابر کوانتوم (Post-Quantum Cryptography: نسل جدیدی از الگوریتم‌های ریاضی که حتی کامپیوترهای کوانتومی هم توانایی درک و حل کردن آن‌ها را ندارند) می‌گویند.

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

اقداماتی که در حال حاضر برای مقابله با این تهدید انجام می‌شود عبارتند از:

  • طراحی استانداردهای جدید: سازمان‌های بزرگ ارزیابی امنیت در جهان، هم‌اکنون در حال مسابقه برای انتخاب و استانداردسازی این قفل‌های جدید هستند.
  • قابلیت ارتقای شبکه‌ها: به محض اینکه این الگوریتم‌های جدید تایید نهایی شوند، شبکه‌های بلاکچینی مانند بیت کوین و اتریوم می‌توانند با یک به‌روزرسانی سراسری (Hard Fork: ارتقای اساسی در کدهای یک شبکه‌ی بلاکچین که همه‌ی کاربران و ماینرها باید آن را بپذیرند)، سیستم امنیتی خود را به این نسل جدید ارتقا دهند.

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

منابع:

ISO

Kaspersky

FORTINET

واکنش شما به این خبر چیست؟
7
0

سوالات متداول

4.9/5
writer image
فائزه آذری
نویسنده

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

مشاهده پروفایل

دیدگاه‌های کاربران

تا کنون 13 کاربر در مورد کریپتوگرافی (Cryptography) چیست؟ راهنمای جامع امنیت با رمزنگاری در ارزهای دیجیتال دیدگاه ثبت کرده اند
عارفه گلابتونی شاندیز
۱۲ اسفند ۱۴۰۲
عالی
0
0
محسن قائمی
۸ بهمن ۱۴۰۲
عالی
0
0
محسن قائمی
۳۰ دی ۱۴۰۲
بسیار آموزنده
0
0
رامین
۷ آذر ۱۴۰۲
سلام تشکر بابت خدمات متنوع
0
0

افزودن دیدگاه

با ثبت‌نام در صرافی کیف پول من و ارسال نظر در سایت ارز دیجیتال رایگان هدیه بگیرید. نظر شما حداقل باید ۱۰ کلمه باشد و تکراری نباشد.
به این مطلب چند امتیاز می‌دهید؟

انتخاب کنید

ویدئو رسانه

در بخش ویدئو رسانه، می‌توانید به آموزش‌ها، تحلیل‌ها و محتوای ویدیویی جذاب درباره ارزهای دیجیتال و خدمات ما دسترسی پیدا کنید.