پیدایش اولین زنجیره بلوکی
اولین زنجیره بلوکی توسط فرد ناشناس یا گروهی شناخته شده به نام ساتوشی ناکاموتو در سال ۲۰۰۸ معرفی شد. یک سال بعد به عنوان یک جزء اصلی از بیتکوین (ارز دیجیتالی) اجرا شد، جایی که آن به عنوان سرفصل عمومی برای همه معاملات در شبکه عمل میکرد. با استفاده از یک زنجیره بلوکی، بیتکوین اولین ارز دیجیتال شد که برای حل مشکل دوجانبه بدون نیاز به یک سرپرست قابل اطمینان و الهام بخش بسیاری از برنامههای اضافی بود. همانگونه که مشاهده کردید، درخت درهمساز و تابع هش رمزی نقش مهمی در شکلگیری زنجیره بلوکی و بیتکوین داشتند.
تابع هش رمزی چیست؟
تابع هش رمزیCHF سرنام Cryptographic hash function یک الگوریتم ریاضی است که دادههایی با اندازه اختیاری را به یک آرایه بیتی با اندازه ثابت نگاشت میکند. ویژگی مهم این تابع یکطرفه بودن آن است و این یعنی تابعی است که وارونسازی آن از نظر عملی اجراپذیر نیست. از نظر ایدهآل تنها روش یافتن پیامی که یک هش معین را ساختهاست، انجام یک جستوجوی غیرهوشمندانه روی همه ورودیهای ممکن است تا ببینیم که آیا همخوانی دارند یا نه، روش دیگر استفاده از یک جدول رنگینکمانی از درهمکهای همخوان است. توابع درهمکساز رمزنگاری، یکی از ابزارهای اساسی در رمزنگاری مدرن هستند. یک تابع درهمساز رمزنگارانه بهشکل ایدهآل ویژگیهای مشخصی به شرح زیر دارد:
قطعی است، یعنی یک پیام یکسان، همیشه منجر به یک دهمساز مشابه میشود.
عمل محاسبه مقدار درهم برای هر پیام معین «سریع» است.
ایجاد پیامی که یک مقدار درهم معین تولید شده، غیرقابل اجرا است.(یعنی نمیتوان فرایندی که یک مقدار درهم معین را تولیدکرده است را معکوسسازی کرد.
یافتن دو پیام متفاوت که یک مقدار درهم مشابه دارند، غیراجرایی است.
یک تغییر کوچک در پیام به معنای آن است که باید مقدار درهم را به آن اندازه تغییر داد که مثل آن شود، بهطوریکه یک مقدار درهم جدیدی پدیدار شود و این درهم شدن با مقدار درهم قدیمی ارتباطی نداشته باشند.
توابع درهمساز رمزنگاری، کاربردهای زیادی در امنیت اطلاعات دارند، به ویژه آنها در امضای دیجیتال، کدهای احرازهویت پیام (MACs)و دیگر حالتهای احرازهویت کاربرد دارند. از این توابع میتوان به عنوان توابع درهمساز ساده استفاده کرد، یعنی در اندیسدهی به داده در جداول درهم، برای اثرانگشتدهی، برای تشخیص داده تکراری یا برای تشخیص یکتای فایلها و به عنوان جمعآزمایی برای تشخیص خرابی تصادفی داده استفاده میشود. در واقع در زمینه امنیت رایانه، به مقادیر درهم رمزنگارانه، اصطلاحات اثرانگشت دیجیتالی، جمعآزما یا فقط مقادیر درهم هم گفته میشود، اگرچه همه این اصطلاحات برای توابع عمومیتر هستند که ویژگیها و اهداف متفاوتی را دارند.
با این توصیف مشاهده میکنیم که تابه هش رمزی و درخت درهمساز شالوده اصلی سازوکار زنجیره بلوکی را شکل میدهند. به بیان دقیقتر، اگر به دنبال آن هستید تا مکانیزم کاری زنجیره بلوکی را بررسی کنید، بهتر است به جای غرق شدن در مفاهیم پیچیده این فناوری، به سراغ الگوریتمهای زیربنایی بروید که زنجیره بلوکی را پدید آوردهاند.
تمرکززدایی
با ذخیره دادهها در سراسر شبکه، زنجیره بلوکی خطراتی را که با ذخیره دادهها بهطور مرکزی نگه داشته میشوند حذف میکند. زنجیره بلوکی غیر متمرکز ممکن است از ارسال پیام اَدهاک و شبکه توزیع شده استفاده کند.
گفته میشود شبکههای نامتمرکز پیروز میشوند و به دلایلی این اتفاق خواهد افتاد. بیایید به این دلایل نگاهی بیندازیم. نرمافزارها و خدمات وب توسط توسعهدهندگان ساختهشده است. میلیونها نفر از توسعهدهندگان ماهر در جهان وجود دارند و فقط بخش کوچکی از آنها در شرکتهای بزرگ مرتبط با فناوری کار میکنند و تنها یک بخش کوچکتر از آنها در توسعه محصولات جدید مشغول فعالیت هستند. بسیاری از مهمترین پروژههای نرمافزاری در تاریخ توسط استارتآپها یا جوامع توسعهدهندگان مستقل ایجاد شده است. به همین دلیل شبکههای نامتمرکز میتوانند با به دست آوردن قلب و ذهن کارآفرینان و توسعهدهندگان برندگان دوره سوم عمر اینترنت باشند.
بین ویکیپدیا و رقیب متمرکز آن یعنی Encarta از سال 2000 رقابت شدیدی وجود داشته است. اگر شما این دو محصول را در اوایل سال 2000 با هم مقایسه میکردید؛ Encarta با سرفصلهای کاملتر خیلی بهتر از ویکیپدیا به نظر میآمد اما سرعت رشد ویکیپدیا بیشتر بود، زیرا یک جامعه فعال داوطلب را تشکیل میداد که بهصورت نامتمرکز در سرتاسر جهان به رشد آن کمک میکردند. در سال 2005 ویکیپدیا مشهورترین مرجع سایت اینترنتی بهشمار میآمد و سرور Encarta در سال 2009 خاموش شد.
این موضوع نشان میدهد، مقایسه دو سیستم متمرکز و نامتمرکز با یکدیگر باید در بلندمدت بهصورت پویا باشد. سیستمهای متمرکز در شروع بهخوبی کار میکنند، اما نرخ پیشرفت و تکامل آن به کارمندان و معدود شرکتهایی بستگی دارد که برای آن کار میکنند. سیستمهای نامتمرکز بهصورت نصفه و نیمه شروع میکنند اما با سیاستهای درست شروع به جذب توسعهدهنده از کل دنیا میکنند.
شفافیت
به دلیل ماهیت غیرمتمرکز زنجیره بلوکی بیتکوین، همه معاملات را میتوان با داشتن یک گره شخصی یا با استفاده از جستجوگران زنجیره بلوکی به هر کسی امکان میدهد معاملات بصورت زنده را ببیند، بهطور شفاف مشاهده شود و هر گره کپی مخصوص خود از زنجیره را داشته باشد که با تأیید و اضافه شدن بلوکهای جدید، به روز میشود. این بدان معنی است که اگر بخواهید، میتوانید بیتکوین را به هر کجا که برود ردیابی کنید.
یک کاربرد مهم هشهای امنیتی، تأیید صحیح و یکپارچه بودن پیامها است. مقایسه چکیدههای پیام (چکیدههای هش در برابر پیام) محاسبه شده قبل و بعد از ارسال میتواند مشخص کند که آیا تغییراتی روی پیام یا فایل صورت گرفته یا نه. چکیدههای هش MD5, SHA1 یا SHA2 بعضاً روی وب سایتها برای تأیید درستی فایلهای دانلود شده منتشر میشوند که شامل فایلهای بازیابی شده با استفاده از به اشتراک گذاری فایل مثل معکوس نمودن میشود. این عمل یک زنجیره اطمینان میسازد تا زمانیکه هشها روی سایت مطمئنی پست شوند- معمولاً سایتی که با پسوند معتبر HTTPS تأیید شود. با استفاده از تابع درهم ساز رمزنگاری و زنجیره اطمینان، تغییرات خطرناک فایل تشخیص داده میشوند. سایر «کدهای تشخیص خطا» مثل «کنترل افزونگی دوره ای» تنها از تغییرات غیرخطرناک فایل جلوگیری به عمل میآورند.
تأیید رمز عبور معمولاً وابسته به هشهای رمزنگاری است. ذخیره کردن همه رمزهای عبور به شکل متن پاک یعنی پیام بدون رمز میتواند به اخلال امنیتی گستردهای منجر شود، اگر فایل رمز عبوری افشا شود. یک روش برای کاهش این خطر، تنها ذخیره کردن چکیده هش رمز عبور است. برای برسمیت شناختن کاربر، رمز عبوری ارائه شده توسط کاربر، بصورت درهم درآمده و با هش ذخیره شده مقایسه میشود. روش بازیابی رمز عبور زمانی ضرورت دارد که درهم کردن رمز عبور انجام شود. رمزهای عبوری اصلی را نمیتوان از مقدار هش ذخیره شده مجدداً محاسبه کرد.
توابع درهم بر مبنای رمزنگاری بلوکی
چند روش برای استفاده از رمزنگاری بلوکی برای ساخت تابع درهمساز رمزنگار بویژه تابع فشرده یک سویه وجود دارد. این روشها شبیه حالتهای عملیات رمز بلوکی استفاده شده برای رمزنویسی هستند. بسیاری از توابع درهم معروف مثل MD4, MD5, SHA-1 و SHA-2 از مولفههای رمزنگار بلوکی-مانند طراحی شده برای این منظور ساخته میشوند، با این بازخورد تا اطمینان حاصل شود تابع حاصله معکوس پذیر نیست. شرکت کنندههای SHA-3 در مرحله نهایی شامل توابعی با مولفههای رمزنگار بلوکیک-مانند (Skein, BLAKE) میباشند، در عین حال تابع نهایی انتخاب شده Keccak روی ابر رمزنگار ساخته شده بود.
رمزنگار بلوکی استاندارد مثل AES را میتوان در محل این رمزهای بلوکی معمول استفاده کرد و زمانی مثمرثمر میباشد که سیستم الحاقی یا جانمایی شده داخل آن نیاز به اجرای هم رمزنویسی و هم درهم سازی با اندازه کد کمینه یا ناحیه سختافزار داشته باشد. هرچند، این روش برای راندمان و امنیت بالاتر هزینه بالایی میطلبد. حروف رمزی در توابع درهم برای درهم سازی ساخته میشوند: آنها از کلیدها و بلوکهای بزرگ استفاده میکنند، میتوانند کلیدها را برای هر بلوک به خوبی تغییر دهند و برای مقاومت در برابر «حملات کلید-مربوطه» طراحی و انتخاب شوند. حروف رمزی هدف-کلی دارای اهداف طراحی متفاوتی هستند. بویژه، AES دارای اندازه کلید و بلوکی میباشد که استفاده از آن را برای تولید مقادیر هش طولانی غیربدیهی میسازد. رمزنویسی AES وقتی عملکردش ضعیف تر میشود که کلید هر بوک را تغییر دهد و حمله کلید-مربوطه استفاده از آن را در تابع درهم در مقایسه با رمزنویسی، کم ایمن تر سازد.
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟