نکات کلیدی
- والت چند امضایی یکی از انواع والتهای ارز دیجیتال است که در آن برای تأیید اجرای تراکنشها نیاز به چند امضا وجود دارد.
- والتهای چند امضایی در شرکتهای وب 3 و سازمانهای مستقل غیرمتمرکز برای مدیریت خزانه کاربرد دارند.
- والتهای چند امضایی باعث ایجاد شفافیت و امنیت در اکوسیستم وب 3 میشوند اما تنظیم و راهاندازی آنها نیاز به اطلاعات فنی خاصی دارد.
در دنیای وب 3 ممکن است گروههای بزرگی از افراد ناشناس و غریبه با یکدیگر همکاری داشته باشند. مثلاً شبکههای بلاکچین نیاز به مشارکت و فعالیت کامپیوترهایی در سطح جهان دارند تا بتوانند عملکرد مد نظر را به درستی انجام دهند. به همین ترتیب، سازمانهای مستقل غیرمتمرکز یا DAOها هم از توکنهای حاکمیتی استفاده میکنند تا تعداد زیادی از اعضای جامعه بتوانند در تصمیم گیریهای مهم پروتکل مشارکت کنند.
اما وقتی سازمانی هیچ مدیر و رهبر مشخصی ندارد، مسئولیت مدیریت کلیدها برعهده چه کسی است؟ مثلاً اگر مدیر ارشد امور مالی با سایر اعضا خصومت پیدا کند یا حسابدار تصمیم بگیرد که شرکت را ترک کند، چه اتفاقی رخ میدهد؟ برای چنین مواقعی وجود یک شخص یا مرجع خاص که داراییها را تحت کنترل و مدیریت داشته باشد، منجر به ایجاد مشکل اعتماد شده و هدف اصلی از تمرکززدایی را نقض میکند.
کاربرد والتهای چند امضایی همین است. چنین والتهایی یک روش غیرمتمرکز، امن و شفاف برای مدیریت داراییهای مشترک فراهم میکنند.
با ما همراه باشید تا با ماهیت والتهای چند امضایی و طرز کار آنها آشنا شوید.
والت چند امضایی چیست؟
والت چند امضایی یک نوع والت با قرارداد هوشمند است که در آن برای تأیید اعتبار و اجرای تراکنشها، باید دو یا چند امضای دیجیتال وجود داشته باشد. در والتهای چند امضایی به جای استفاده از یک کلید خصوصی مثل والتهای سنتی، چند کلید خصوصی ایجاد میشود که در اختیار افراد یا مراجع مختلف قرار میگیرند.
والتهای سنتی به نوعی مثل یک جفت کلید عمومی - خصوصی کار میکنند که امکان اجرای تراکنش و مدیریت ارزهای دیجیتال را برای کاربران فراهم میکنند. این والتها یکسری کلید خصوصی دارند که با استفاده از آنها میتوان بدون نیاز به مداخله یک واسطه، تراکنشها را امضاء کرد.
در والتهای سنتی، مالک کلید خصوصی تنها کنترل کننده داراییهای موجود در والت است. اگر کلید خصوصی گم شده یا به سرقت برود، مهاجم هر آنچه برای دسترسی به این داراییها لازم است را در اختیار خواهد داشت.
در مقابل در والتهای چند امضایی از یکسری کد هوشمند استفاده میشود تا کنترل والت از طریق یک قرارداد هوشمند بین چند نفر توزیع شود. به این ترتیب، هر یک از اعضاء باید هر تراکنش را تأیید کند.
تعداد امضاهای لازم برای تأیید یک تراکنش بستگی به کاربرد و پیکربندی والت دارد که این تنظیمات برای هر والتی متفاوت هستند. مثلاً یک والت “3-4” بین چهار امضاء کننده به اشتراک گذاشته و برای تأیید هر تراکنش در آن باید حداقل 3 نفر از این 4 نفر تراکنش را امضاء کنند. به همین ترتیب یک والت "2 از 2" والتی است که 2 امضاء کننده دارد و هر دوی آنها باید هر تراکنش والت را امضاء کنند.
وجود چنین مکانیزم امنیتی قوی باعث شده که والتهای چند امضایی ریسک استفاده غیرمجاز از داراییها را کاهش دهند.
والت چند امضایی چه کاربردهایی دارد؟
والتهای چند امضایی یک راهکار عملی برای توزیع کنترل و ایجاد اجماع نظر جهت نگه داری و مدیریت طولانی مدت داراییهای مشترک هستند.
در دنیای وب 3 والتهای چند امضایی به اعضای جامعه کاربری کمک میکنند تا داراییهای سازمانهای مستقل غیرمتمرکز (DAO) را مدیریت کنند. این جوامع، برای پیشبرد طرحها و ابتکارات خودشان متکی بر داراییها و منابعی مشترک هستند. بنابراین، والتهای چند امضایی به حفاظت از داراییهای آنها در برابر افراد مخرب کمک میکنند.
جوامع غیرمتمرکز میتوانند نمایندگانی را انتخاب کنند که نقش مدیر و کنترل کننده داراییها را دارند. هر تراکنش، توسط همه این افراد بررسی شده و از اجرای تراکنشها به صورت امن و منصفانه اطمینان حاصل میشود.
به غیر از این جوامع، مشاغل هم از والتهای چند امضایی استفاده میکنند. یکی از کاربردهای اصلی والتهای چند امضایی پراکندگی داراییها است. مثلاً برای پرداخت یک صورتحساب شخص ثالث، تیم اقتصادی باید چند تأیید را از طریق ایمیل ارسال و دریافت کنند. این فرایند کند و ناکارآمد است. در عوض والتهای چند امضایی با فراهم کردن امکان دسترسی مشترک به داراییها و ثبت امضاها روی بلاکچین، به روان سازی و ایمنتر شدن آن کمک کنند.
والت چند امضایی چطور کار میکند؟
والتهای چند امضایی از چند کلید خصوصی و فرد امضاء کننده استفاده میکنند. این والتها به نوعی شبیه به یک حساب بانکی مشترک هستند که در آنها باید انتقال وجه به تأیید همه مالکان حساب برسد.
اعضای والت که به آنها copayer (پرداخت کننده همکار) هم گفته میشود، والتهای خودشان را تنظیم کرده و جفت کلیدهای رمزنگاری خودشان را تولید میکنند. وقتی تراکنش والت چند امضایی آغاز میشود، هر copayer باید آن را به صورت مستقل با استفاده از کلید خصوصی خودش امضاء کند. والت، اصالت و درستی امضاها را بررسی میکند. سپس زمانی که امضاهای لازم برای رسیدن به مرز تأیید جمع آوری شد، اجازه اجرای تراکنش صادر میشود. بعد از آن تراکنش روی شبکه بلاکچین توزیع میشود.
برای مثال، یک سازمان DAO وب 3 را با 5 عضو کلیدی یعنی آلیس، باب، چارلی، دیوید و امیلی در نظر بگیرید. این 5 عضو برای مدیریت خزانه DAO از یک والت چند امضایی استفاده میکنند. والت چند امضایی، به صورت 3 به 5 تنظیم شده در نتیجه هر تراکنش باید حداقل به تأیید 3 عضو برسد.
زمانی که دارایی به DAO واریز میشود، آلیس که مدیر خزانه است یک تراکنش برای تخصیص سرمایه به یک پروژه خاص تعریف میکند. سپس او پیشنهاد تراکنش را در انجمن حاکمیت DAO ایجاد کرده و جزئیات پروژه را مشخص میکند.
چهار عضو دیگر، پیشنهاد را بررسی کرده و از طریق پلتفرم حاکمیت DAO به آن رأی میدهند. برای تأیید این پیشنهاد حداقل سه عضو باید آن به آن رأی بدهند.
باب، چارلی و دیوید از این پیشنهاد حمایت کرده و امضاهای دیجیتال خودشان را با استفاده از کلیدهای خصوصی شان ارایه میدهند. وقتی که والت چند امضایی این سه امضاء را تأیید کرد، بلاکچین تراکنش را اجرا کرده و داراییها را طبق همین پیشنهاد تخصیص میدهد.
مقایسه والتهای تک امضایی و چند امضایی
والتهای تک امضایی از نظر میزان پیچیدگی، شفافیت و امنیت با والتهای چند امضایی تفاوت دارند. در ادامه به بررسی مزایا و معایب استفاده از والتهای چند امضایی میپردازیم.
مزایای والتهای چند امضایی
امنیت
یکی از وعدههای اصلی والتهای چند امضایی، امنیت بیرقیب آنها است. حتی اگر یکی از این کلیدها فاش شود، مهاجم باید برای کنترل دسترسی به والت، سایر کلیدها را هم در اختیار داشته باشد. بنابراین، والتهای چند امضایی با توزیع یکسان قدرت بین چند امضاء، ریسکهای ناشی از کنترل والت توسط یک کاربر را از بین میبرند. همچنین با استفاده از چنین سیستمی میتوان مطمئن شد که افراد مخرب و بدخواه عضو تیم، امکان تخلیه کل داراییهای والت را ندارند.
این قابلیت به نوعی شبیه به احرازهویت 2 مرحلهای است که برای ورود به سرویسهای مختلف از آن استفاده میکنیم. شما تنها در صورت در اختیار داشتن کد تأیید میتوانید به حسابتان دسترسی پیدا کنید. به همین صورت، در والتهای چند امضایی هر امضاء به اندازه بقیه اهمیت دارد در نتیجه احتمال ایجاد یک نقطه شکست واحد از بین میرود.
شفافیت
والتهای چند امضایی به دلیل ماهیت غیرمتمرکزشان امکان اجرای تراکنش را بدون نیاز به یک مرجع مرکزی فراهم میکنند. اعضای جامعه هم میتوانند در بلاک اکسپلوررها (مثل اتراسکن) وضعیت تراکنشها را پیگیری کرده و بررسی کنند که دقیقاً چه موقع داراییهای موجود در والت جابجا شدهاند. هیچکس امکان جابجایی داراییها را بدون تأیید همه اعضاء نخواهد داشت - بنابراین، اعضای جامعه میتوانند فعالیتهای مشکوک را به صورت بلادرنگ و لحظهای دنبال کنند.
معایب والتهای چند امضایی
دانش فنی
معمولاً تنظیم والتهای چند امضایی به دلیل نیاز به تعریف چند کلید و عبارت بازیابی نیاز به دانش فنی دارد. یکی از روشهای جایگزین این است که یک شخص ثالث قابل اعتماد آدرس چند امضایی را ارایه دهد اما این شرایط هم میتواند باعث ایجاد یک نقطه شکست واحد شود.
سرعت تراکنش
از آنجایی که والتهای چند امضایی نیاز به تأیید از سمت چند نفر دارند، معمولاً سرعت اجرای تراکنش در این روش کم است. در نتیجه چنین والتهایی برای جوامعی که نیاز به اجرای سریع یا پی در پی تراکنش دارند، مفید نیستند. در چنین مواقعی میتوان بخشی از موجودی را به یک والت گرم منتقل کرده و بیشتر آن را در والت چند امضایی نگه داشت.
بازیابی داراییها
با استفاده از والتهای چند امضایی ممکن است بازیابی داراییها سخت باشد. از آنجایی که این والتها به چند کلید خصوصی گره خوردهاند، کاربران باید چند عبارت بازیابی را از چند دستگاه مختلف وارد کنند. اگر یکی از مالکان کلیدها به هر دلیلی در دسترس نباشد یا کلید خودش را از دست بدهد، ممکن است فرایند بازیابی پیچیدهتر شود.
چگونه یک والت چند امضایی ایجاد کنیم؟
در حال حاضر، لجر با موفقیت قابلیتهای چند امضایی را در والتهای خودش پیاده سازی کرده است.
ایجاد یک والت چند امضایی بیتکوین
برای بیتکوین، میتوانید با استفاده از لجر و Unchained یک والت چند امضایی ایجاد کنید. مراحل انجام این کار عبارتند از:
- ایجاد یک حساب مجزا در Unchained و رفتن به تب Keys؛
- برای ایجاد اولین کلید خودتان، Ledger را از بین گزینهها انتخاب کرده و کلید عمومی گسترش یافته (xpub) خودتان را از والت لجر استخراج کنید.
- پس از انجام این کار، کلید xpub روی صفحه نمایش مشخص میشود. برای تأیید روی Next کلیک کنید و اولین کلید خودتان را بسازید. این فرایند را برای همه افرادی که قرار است کلید داشته باشند، تکرار کنید.
- حالا به تب Vault بروید، کلید اضافه شده را انتخاب کرده و والت چند امضایی خودتان را ایجاد کنید.
ایجاد یک والت چند امضایی سازگار با اتریوم
برای اتریوم و سایر زنجیرههای EVM، میتوانید با استفاده از Safe که قبلاً به آن Gnosis safe گفته میشد، یک والت چند امضایی ایجاد کنید. با والتهای سیف میتوانید چند امضاء کننده تعریف کنید که امضای یکی از آنها توسط دستگاه لجر کنترل میشود.
برای انجام این کار به راحتی میتوانید والت لجر خودتان را به این سرویس وصل کنید همانطور که آن را به هر سرویس یا اپلیکیشن بلاکچین دیگری متصل میکنید. بعلاوه، برای انجام کارهای بیشتر با سیف میتوانید دستگاه لجر را از طریق افزونه لجر یا حتی با استفاده از اپلیکیشن موبایلی سیف و یک لجر نانو وصل کنید. هر روشی را که انتخاب میکنید میتوانید مطمئن باشید که هیچ شخصی امکان پیدا کردن کلید خصوصی شما را ندارد و داراییهای خزانه شما در یک محیط آفلاین ذخیره میشوند.
جمع بندی
چه قصد راهاندازی یک DAO را دارید و چه یک پروژه NFT و هر کار دیگری، والتهای چند امضایی راهکار خوبی برای به اشتراک گذاری و مدیریت داراییها هستند. همانطور که در جریان هستید، اعتماد کردن به دیگران برای شراکت در داراییها میتواند پیامدهای ناخواسته بدی داشته باشد. با استفاده از والتهای چند امضایی راحتتر میتوان ریسک مستقیم همکاری با غریبهها را کاهش داد. بعلاوه، میتوانید مطمئن باشید که داراییهای شما در اختیار یک مرجع مرکزی قرار ندارند.
والتهای چند امضایی یکی از عناصر مهم و کلیدی برای ارتقای امنیت هستند اما باید دقت داشته باشید که هر یک از اعضاء باید امنیت کلیدهای خصوصی خودشان را حفظ کنند.