آشنایی با الگوریتم کریپتوگرافی (Cryptography) و روش‌های ایمن‌سازی شبکه بیت‌کوین




۲۳ام بهمن ۱۳۹۶ مطالب آپی

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

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

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

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

کریپتوگرافی

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

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

“آشنایی با فناوری زنجیره بلوکی (Blockchain) و اصول نهفته در توسعه آن”

هنگامی‌که شخصی بنای ارسال تعدادی بیت‌کوین به فردی دیگر را در پیش گیرد، فرآیند انتقال به‌مانند گسیل فایل‌های مختلف صورت نمی‌پذیرد، بلکه عملیات تبادل وجه در قالب یک ورودی در شبکه گسترده نامبرده نوشته و به ضبط می‌رسد، مانند اینکه علی برای محمد ۵ بیت‌کوین می‌فرستد. شبکه زنجیره بلوکی فهرستی از تمامی تراکنش‌های تاکنون انجام پذیرفته را در بطن خود به ثبت رسانده و بر همین اساس نیز اندازه آن با توجه به این موضوع پیوسته رو به افزایش می‌گذارد (جالب است بدانید که حجم تراکنش‌های شبکه فوق تا پایان سال ۲۰۱۶ به بیش از ۱۰۷ گیگابایت فزونی پیدا نموده است).

کریپتوگرافی

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

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

کریپتوگرافی

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

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

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

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

جهت پاسخ به سؤال فوق شبکه نامبرده را به‌مانند یک میز شرط‌بندی بسیار بزرگ با تعداد شرکت‌کنندگان فراوان در نظر بگیرید. هنگامی‌که شخصی بنای انتقال مبلغی را پیش گیرد، اقدام خود در خصوص میزان وجه و … را باید با صدای بلند برای همگان قرائت کند تا اطلاعات توسط دارندگان کاغذ (ثبت‌کنندگان و ردیابان تغییرات) به ضبط رسد. بر همین اساس تمامی تراکنش‌های انجام پذیرفته و تشخیص آن‌ها به‌عنوان بلوک‌های معتبر باید تعداد ۳ آیتم را به‌صورت کاملاً واضح و آشکار در بطن خود دارا باشد:

شماره حساب شخص انتقال‌دهنده مبلغ

شماره حساب شخص دریافت‌کننده مبلغ

تعداد و مقدار بیت‌کوین‌های مورد انتقال

کریپتوگرافی

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

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

زنجیره بلوکی بیت‌کوین و تمامی تراکنش‌ها و اطلاعات موجود در بطن آن به لطف الگوریتم‌های بسیار قدرتمندی تحت عنوان کریپتوگرافی (Cryptography) در ایمنی کامل قرار می‌گیرند (یکی از دلایلی که برچسب Cryptocurrency به ارزهای دیجیتال اطلاق یافته است عنوان الگوریتم‌های فوق می‌باشد). بیت‌کوین و همچنین بسیاری از دیگر ارزهای دیجیتالی مبتنی بر آن با عنایت به وجود کلیدهایی (Key) که در واقع بخش‌هایی از اطلاعات به‌منظور تضمین ریاضی بر صحت و درستی پیام‌ها (تراکنش) به شمار می‌روند ایمن نگاه داشته می‌شوند. در این حالت شبکه می‌تواند اطمینان حاصل کند که پیام مربوطه حقیقتاً از جانب فردی خاص ارسال شده و تقلبی نمی‌باشد؛ درست مانند زمانی که شخص برای برداشت مبلغی از حساب به بانک مراجعه کرده و اطلاعات شخصی خود از جمله کارت ملی، اثر انگشت، امضا و … را به‌منظور احراز هویت ارائه می‌نماید (در ادامه نوشته به تشریح عملکرد الگوریتم‌های کریپتوگرافی نیز می‌پردازیم).

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

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

کریپتوگرافی

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

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

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

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

کریپتوگرافی

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

جهت درک بهتر موضوع دنباله عددی ۱، ۲، ۳ و ۴ را به‌عنوان ورودی در نظر گرفته و فرض کنید که تابع هش کریپتوگرافی نیز بیان می‌دارد که تمامی اعداد با یکدیگر جمع شوند. مطمئناً در این حالت پاسخ خروجی برابر با مقدار ۱۰ بوده و به‌راحتی نیز قابل محاسبه می‌باشد، اما بروز سناریو فوق به‌صورت برعکس، یعنی دریافت عدد ۱۰ به‌عنوان خروجی و سپس محاسبه ورودی تعداد عظیمی از انواع و اقسام پاسخ‌های گوناگون با عملگرهای مختلف را در مسیر پردازشگر رایانه قرار می‌دهد، زیرا همان‌گونه که جمع اعداد فوق برابر با ۱۰ است، ضرب دو عدد ۵ در ۲ نیز این مقدار خروجی می‌دهد، همین‌طور ضرب دو ۴ در ۲ و سپس جمع آن با ۲ و …، حال کدام یک از حالات فوق منتسب به عدد ۱۰ خروجی است؟ بهترین استراتژی در این‌گونه مواقع انجام حدس‌های گوناگون تا زمان رسیدن به بهترین پاسخ ممکن می‌باشد (به همین دلیل عملکرد الگوریتم کریپتوگرافی بر پایه دریافت ورودی و سپس تبدیل آن به خروجی با مقداری ثابت صورت می‌پذیرد).

کریپتوگرافی

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

توابع هش مورد استفاده توسط ارز دیجیتال بیت‌کوین تحت عنوان SHA256 شناخته می‌شوند که از کوتاه شده عبارت Secure Hash Algorithm 256-Bit تشکیل و توسط آژانس امنیت بین‌الملل ایالات‌متحده آمریکا (NSA) توسعه یافته است. الگوریتم فوق در حالت کلی برای هر کدام از بلوک‌های در دست حل توسط ماینرها یک مقدار عددی ۲۵۶ بیت تولید و سپس یافتن جواب نهایی را برعهده قدرت پردازشی رایانه‌های شخصی کاربران واگذار می‌نماید. کامپیوترهای ویژه طراحی شده به‌منظور حل پاسخ توابع هش نامبرده به‌طور میانگین به زمانی ده دقیقه‌ای جهت حدس جواب نهایی نیازمند می‌باشند، این خود بدان معنی است که رایانه در هر ثانیه تعداد میلیاردها میلیارد جواب را در جهت پی بردن به خروجی تابع جستجو و اجرا می‌نماید.

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

کریپتوگرافی

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

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

“آشنایی با مفهوم ارز دیجیتال و دارایی Cryptocurrency”

“آشنایی با فرآیند استخراج بیت‌کوین (بیت‌کوین ماینینگ) و ویژگی‌های آن”


مطالب پیشنهادی