به گزارش سایت خبری ساعد نیوز،یک پایگاه داده در شبکه جهانی وب معمولا در قالب یک معماری کلاینت-سرور عمل می کند.
در این معماری کاربر(کلاینت) در محدوده اختیاراتش می تواند همه ی آن چه در حساب کاربری اش در سرور موجود است را دستکاری کند. در واقع با دستکاری نسخه اصلی اطلاعات سرور، هنگامی که دیگر کاربران به سرور مراجعه می کنند، نسخه تغییر یافته را مشاهده خواهند کرد.
مدیریت پایگاه داده به عهده مدیران آن خواهد بود. بنابراین تعیین محدوده اختیارات سیستم در قالب یک قدرت مرکزی اعمال می شود. این مطللب مخالف اهداف مورد نظر طراحان در طراحی بلاکچین است.
در یک پایگاه داده مبتنی بر بلاکچین، هر فرد در پایگاه داده می تواند اطلاعات را نگهداری، دستکاری و بروزرسانی کند و همچنین فعالیت همه افراد در کنار یکدیگر بررسی می شوند تا اطمینان حاصل شود که همه در راستای هدف یکسان پیش رفته و اطلاعات معتبر در سیتم درج شوند. به عبارت دیگر بلاکچین از یک سیستم امنیتی داخلی بهره می گیرد.
این تفاوت ساختاری بین پایگاه داده های سنتی و بلاکچین سبب می شود تا بلاکچین ها سیستم هایی مناسب برای عملیات قطعی و معتبر مانند ارز های دیجیتالی باشند. در حالی که پایگاه داده های معمولی دارای مرکزیت برای این عملیات اعتبار کافی را فراهم نمی آورند.
پایگاه داده سنتی
پایگاه های داده سنتی از معماری شبکه کلاینت-سِرور (Client-server) استفاده می کنند. در این معماری، کاربر (که تحت عنوان کلاینت یا همان مشتری شناخته می شود) در صورت کسب مجوز می تواند داده هایی را که در یک سرور (کامپیوتر) متمرکز ذخیره شده اند تغییر داده و اصلاح کند. در این بین، کنترل پایگاه داده در دست مرجعی تعیین شده باقی می ماند که هویت و اعتبار مشتری را نیز پیش از دسترسی به پایگاه داده راستی آزمایی می کند. این مرجعِ تعیین شده، وظیفه مدیریت پایگاه داده را بر عهده دارد. بنابراین، درصورتی که امنیت مرجع به خطر بیفتد، احتمال تغییر یا حتی حذف داده ها وجود خواهد داشت.
پایگاه های داده بلاک چینی
پایگاه های داده بلاک چینی از چندین نود (node) یا کامپیوتر تشکیل شده اند. نودهای شبکه کامپیوترهایی هستند که در مدیریت پایگاه داده بلاک چین مشارکت می کنند: تمام نودها، داده های جدید را بررسی کرده و می توانند این داده ها را وارد پایگاه داده مبتنی بر بلاک چین کنند. برای اینکه داده جدیدی به بلاک چین اضافه شود، اکثریت نودها باید به اتفاق نظر برسند. این سازوکار اجماع، تضمین کننده امنیت شبکه است و دستکاری داده ها را دشوار می کند.
در بلاک چین بیت کوین، اجماع و توافق آرا با استفاده از روش اثبات کار (Proof of Work) یا همان استخراج به دست می آید. این روش شامل حل کردن معماهای پیچیده هشینگ (hashing) می شود که در ضمن این فرایند، داده ها به صورت رمزنگاری شده به یکدیگر متصل شده و تغییر یا حذف آنها عملاً غیرممکن می شود. همچنین برخی دیگر از بلاک چین ها، همچون اتریوم از روش اثبات سهام (Proof of stake) به عنوان مکانیسم اجماع خود استفاده می کنند.
یکپارچگی و شفافیت
اصلی ترین چیزی که فناوری بلاک چین را از فناوری پایگاه داده سنتی متمایز می کند، قابلیت اعتبارسنجی عمومی داده ها است که از طریق یکپارچگی و شفافیت شبکه امکان پذیر شده است.
یکپارچگی به این معناست که هر کاربر می تواند مطمئن باشد داده هایی که بازیابی می کند، از زمان ثبت تاکنون، دست نخورده و بدون تغییر باقی مانده اند. شفافیت بلاک چین نیز باعث می شود تمام کاربران بتوانند بر نحوه پیوستن بلاک ها به بلاک چین در طول زمان نظارت داشته باشند.
کراد در مقابل خواندن و نوشتن
در یک پایگاه داده سنتی، کلاینت می تواند چهار عملکرد مختلف را روی داده ها اجرا کند: ایجاد، خواندن، به روزرسانی و حذف. این چهار عملکرد اساسی کراد (CRUD) نامیده می شوند؛ واژه ای که از حروف ابتدایی چهار واژه انگلیسی ایجاد (Create)، خواندن (Read)، به روز رسانی (Update) و حذف (Delete) تشکیل شده است.
با این حال، ساختار بلاک چین به گونه ای طراحی شده است که فقط قابلیت اضافه کردن داده را به کاربر می دهد. درواقع، کاربر بلاک چین فقط می تواند داده های بیشتری را در قالب بلاک ها به بلاک چین اضافه کند. تمام داده های قبلی به طور دائمی ذخیره شده اند و قابل تغییر نیستند. بنابراین، تنها عملیات قابل اجرا در مورد داده های بلاک چین، «خواندن» و «نوشتن» است. عملیات خواندن به معنی درخواست و بازیابی داده ها از بلاک چین و عملیات نوشتن به معنی اضافه کردن داده های بیشتر به بلاک چین است.
اعتبارسنجی و نوشتن
بلاک چین امکان انجام دو عملیات اساسی را در ارتباط با تراکنش ها فراهم می کند: اعتبارسنجی یک تراکنش و نوشتن یک تراکنش جدید. تراکنش، عملیاتی است که وضعیت داده های موجود در بلاک چین را به وضعیتی جدید تغییر می دهد. به بیان دیگر تراکنش ها موجب حذف یا تغییر داده های قبلی نمی شوند؛ بلکه وضعیت آنها را تغییر می دهند. مثلاً یک تراکنش جدید می تواند وضعیت یک تراکنش ورودی در گذشته را از وضعیت «خرج نشده» به «خرج شده» تغییر دهد.
برای درک بهتر این موضوع، یک تراکنش عملی را تصور کنید. به عنوان مثال اگر در بلاک چین ثبت شده باشد که کیف پول بیت کوین علی حاوی ۱ میلیون بیت کوین است، این رقم برای همیشه در بلاک چین ذخیره می شود. وقتی علی ۲۰۰,۰۰۰ بیت کوین خرج کند، این تراکنش روی بلاک چین ثبت شده و موجودی او را به ۸۰۰,۰۰۰ بیت کوین می رساند. با این حال، از آنجا که داده ها فقط به بلاک چین اضافه می شوند و تغییری در داده های قدیمی ایجاد نمی شود، رقم موجودی علی که پیش از این تراکنش ۱ میلیون بیت کوین بود، به صورت دائمی در بلاک چین باقی می ماند و هر فردی که بخواهد بر داده های قدیمی نظارت داشته باشد، به این سوابق دسترسی خواهد داشت. به همین دلیل، بلاک چین یک دفتر کل تغییرناپذیر و توزیع شده است.
کنترل غیرمتمرکز، خطرها و آسیب های مربوط به کنترل متمرکز را برطرف می کند. هر فردی که به یک پایگاه داده متمرکز دسترسی کافی داشته باشد، می تواند داده های موجود در آن را خدشه دار کند یا به طور کامل آنها را از بین ببرد. بنابراین، کاربران پایگاه داده متمرکز باید به زیرساخت های امنیتی مدیریت و حاکمیت پایگاه داده کاملاً اعتماد داشته باشند.
فناوری بلاک چین به منظور رفع این مشکل، با استفاده از ذخیره سازی غیرمتمرکز داده، امنیت را در ساختار خود نهادینه کرده است.
با این همه، فناوری بلاک چین برای ثبت انواع خاصی از داده و پایگاه داده سنتی برای انواع دیگری از داده ها مناسب هستند. هر سازمانی، پیش از انتخاب پایگاه داده موردنظر خود، باید کاملاً از نیازها و انتظارات خود آگاه باشد و هدف مطلوب خود را با توجه به نقاط ضعف و قوت هر کدام از انواع پایگاه داده ارزیابی کند.