عبارت رایج «نه کلیدهای شما، نه رمزنگاری شما»، فلسفه مدیریت کلیدهای رمزنگاری شده توسط ناب را بیان می کند. در این مدل امنیتی کیف پول، فقط یک فرد (یا یک گروه از طریق "multisig") کنترل مستقیم و انحصاری بر کلیدهای خصوصی خود دارد - و بنابراین مالکیت واقعی دارایی های رمزنگاری خود را دارد. کیف پولهای کریپتو که از این رویکرد سختگیرانه تبعیت میکنند، «غیر نگهبانی» نامیده میشوند، به این معنی که هیچ طرف خارجی به کلید دسترسی ندارد.
به جز، نه چندان سریع اوضاع به این سادگی نیست تعدادی از هکهای کیف پول «غیر حضانت» – از جمله هک کیف پول شیب دار که بیش از 8,000 حساب را در ماه اوت به خطر انداخته است هک کیف پول ترینیتی که بیش از 2 میلیون دلار توکن IOTA را در سال 2020 از دست داد، هک کیف پول برابری که به مهاجم اجازه می دهد در سال 150,000 2017 ETH را به همراه اکتشافات مختلف سرقت کند. آسیب پذیری کیف پول سخت افزاریو حوادث دیگر - تمایز متعارف بین کیف پولهای حافظی و غیر حافظ را تضعیف میکند. در بسیاری از این موارد، قربانیانی که فکر میکردند از کیف پول غیرقانونی استفاده میکردند متوجه شدند که مهاجمان میتوانند کلیدهای مورد علاقهشان را ربودند. یک تناقض، نه؟
در واقع، داستان پیچیدهتر از آن است که یک عبارت جذاب به تصویر بکشد. کیف پولهای غیر حافظ واقعاً کنترل کامل کلیدهای کاربران را در اختیار نمیگذارند. دلیلش این است که کیف پول ها معمولاً هستند ایجاد شده، و از طریق، نرم افزار یا سخت افزار شخص دیگری. کاربران دائماً به افراد دیگر، محصولات و برنامه های رایانه ای اعتماد می کنند. آنها استفاده از رابط های خط فرمان بلاک چین، نرم افزارها و دستگاه های کیف پول، پلتفرم های متمرکز، کد قرارداد هوشمند، برنامه های غیرمتمرکز و همه کیف پول های مختلف ادغام های اتصال در بین هر نقطه تماس خطر را اضافه می کند. مجموع تمام این قطعات به هم پیوسته، توهم کیف پول غیر حضانت را از بین می برد.
حضانت در واقع عبارت است از نه-دوتایی. آنچه در ابتدا ممکن است غیرقابل حضانت به نظر برسد، ممکن است در واقع شامل بسیاری از عناصر حضانت باشد که مردم معمولاً قابلیت اطمینان آنها را بدیهی می دانند. دوگانگی سنتی - حضانت در مقابل غیر حضانت - یک دوگانگی نادرست است.
در عوض، بهتر است کیف پول ها را با تفاوت های ظریف بیشتری در نظر بگیرید. سوالات کلیدی که باید بپرسند عبارتند از: چقدر سطح حمله بزرگ را میپذیرم و چه تعداد مسئولیت را در تلاشم برای از بین بردن اعتماد به اشخاص ثالث به عهده میگیرم؟ به طور کلی، مدیریت کلید - پایه و اساس امنیت کیف پول - را می توان به سه حوزه تقسیم کرد که هر یک فرصت های منحصر به فردی برای قرار گرفتن در معرض دارند. زیر مجموعه ها به شرح زیر است:
-
تولید کلید (ایجاد کلیدهای رمزنگاری)
-
ذخیره سازی کلید (ایمن کردن کلیدها در حالت استراحت)
-
استفاده از کلید (در حال کار کردن کلیدها)
هدف این بررسی اجمالی برای کمک به کاربران web3 در درک بهتر پیچیدگیهای موجود در تامین امنیت داراییهایشان از طریق عنوان بالا است. علاوه بر این، هدف ما کمک به مهندسان برای شناسایی و تقویت نقاط شکست مکرر در توسعه کیف پول است. ما امیدواریم که استفاده از این راهنما – که از سال ها تجربه ترکیبی ما در ساخت سیستم های رمزنگاری و امنیتی در سراسر داکر، انکوریج، فیس بوک و رمزنگاری a16z به دست آمده است – به افراد کمک کند تا از حوادث ناگوار امنیتی اجتناب کنند، خواه در حال تعامل، شرکت در یا ساخت تکنولوژی web3
در زیر، ویژگیهای رایج و مشکلات پلتفرمهای امنیتی کیف پول کریپتو و نگهبانی را که امروزه وجود دارند، پوشش میدهیم. ما همچنین حوزههایی را پوشش میدهیم که معتقدیم در ماهها و سالهای آینده به بیشترین توجه و توسعه نیاز دارند تا ایمنی تجارب وب 3 کاربران را بهبود ببخشیم.
امنیت کیف پول نسل کلید
هر بحثی در مورد امنیت کیف پول باید با تولید کلید، فرآیند ایجاد کلیدهای رمزنگاری آغاز شود. فرقی نمیکند کیف پول نگهبانی در نظر گرفته شود یا غیرقانونی، ویژگیهای امنیتی مرحله تولید کلید برای ایمنی کلیدها پس از آن بسیار مهم است. در طول تولید کلید، سه نگرانی اساسی وجود دارد که باید در نظر داشته باشید: استفاده از کد قابل اعتماد، پیاده سازی کد به درستی، و مدیریت ایمن خروجی.
اگر شما یک متخصص رمزنگاری نیستید، بررسی اینکه همه عوامل زیر توسط کتاب انجام میشوند، دشوار است. بررسی کنید که آیا می توانید به گزارش حسابرسی قابل اعتمادی که برخی از ارائه دهندگان کیف پول در وب سایت های رسمی یا مخازن Github منتشر می کنند دسترسی داشته باشید. به جای آن، تحقیقات خود را انجام دهید تا مشخص کنید که آیا یک شرکت معتبر پشت کیف پول وجود دارد یا خیر. اگر اطلاعات کم باشد، فعالیت قابل توجه کاربران و توسعه دهندگان ممکن است شاخص بعدی اعتبار باشد.
برای کاهش قرار گرفتن در معرض خطر این دستورالعمل ها را دنبال کنید. اگر کیف پول چک های زیر را انجام نداد، فرار کنید!
- از کیفپولهایی استفاده کنید که رمزارز خودشان را نمیچرخانند
رمزنگاران ضرب المثلی دارند: «کریپتوی خود را رول نکنید». اصل آن شبیه ضرب المثل «چرخ را دوباره اختراع نکن» است. چرخ به همین شکل خوب است و هر تلاشی برای بازسازی آن از ابتدا احتمالاً منجر به محصول بدتری خواهد شد. همین امر در مورد کریپتو نیز صدق می کند، علمی که به سختی می توان به درستی به آن دست یافت. کدی که یک کیف پول را تشکیل می دهد باید به خوبی کار کند. انتخاب نرم افزار ضعیف – یا تلاش برای توسعه جایگزین خود از سر نو - می تواند منجر به حوادث ناگوار مانند نشت کلید یا افشای اطلاعات محرمانه برای اشخاص غیرمجاز شود. این همان چیزی است که در پس آسیبپذیری اخیراً مورد سوء استفاده قرار گرفته است ابزار آدرس بیهوده فحشا. قبل از هر چیز، باید واضح باشد که کیف پول مورد نظر از یک کتابخانه و فرآیند تولید کلید ممیزی شده و معتبر استفاده می کند.
- از کیفهایی استفاده کنید که دو بار اندازه میگیرند و بارها و بارها برش میدهند
حتی اگر کد از کتابخانه های رمزنگاری معتبر استفاده می کند، باز هم باید به درستی ادغام شود. نرم افزار تأیید شده معمولاً به طور پیش فرض پارامترهای صحیح را تنظیم می کند، اما ممکن است شکاف هایی در اجرا وجود داشته باشد. به عنوان مثال، منبع قوی آنتروپی، یا دوز تصادفی ریاضی، برای غیرقابل پیش بینی ساختن کلیدهای تولید شده و در نتیجه ایمن تر کردن مورد نیاز است. برای برخی فرآیندهای تولید کلید، مانند بسیاری از الگوریتمهای محاسبات چند جانبه (MPC)، که در آنها تعداد زیادی کلید جداگانه – یا تکههایی از کلیدها – باید تولید و هماهنگ شوند، کیف پول باید از پروتکل دقیقی که توسط الگوریتم این الگوریتم همچنین ممکن است به چندین دور محاسباتی و همچنین کلیدهای تازه سازی نیاز داشته باشد که کیف پول باید به درستی آنها را برای حفظ امنیت وجوه ادغام کند.
- از کیف پولی استفاده کنید که بتواند اسرار را حفظ کند
مرحله نهایی فرآیند تولید کلید شامل عملیات و خروجی واقعی نرم افزار است. آگاه باشید که کلیدها کجا و به چه شکلی تولید می شوند.
در حالت ایده آل، کلیدها باید در سخت افزار ایزوله تولید شوند و اطلاعات باید با یک الگوریتم معتبر رمزگذاری شوند. نمونهای از موارد ضعیفی که باید از آن اجتناب کرد، استاندارد رمزگذاری داده یا DES است که امروزه وجود دارد شکسته در نظر گرفته شده است. کلیدهای باقی مانده در متن ساده - به ویژه در حافظه، روی دیسک، یا در منطقه میانی بین این دو مکان که به عنوان "swap" شناخته می شود - یک خطر امنیتی بزرگ هستند. به طور کلی، مواد کلیدی نباید سخت افزاری را که روی آن تولید شده است ترک کند و نباید به شبکه های قابل دسترسی توسط دیگران فرار کند. (یعنی، مگر اینکه مواد کلید رمزگذاری شده باشد، در این صورت کلید رمزگذاری نیز باید ایمن باشد.)
کلیدهای Slope، کیف پولی که تابستان امسال هک شد، پس از ایجاد در متن ساده به سرورهای خارجی وارد شدند. این نوعی نقص امنیتی است که ممکن است در ممیزی یا اجرای متن باز کد ظاهر شود. کیفپولهایی که فاقد شفافیت هستند – دارای کد منبع بسته، بدون ممیزی امنیتی شخص ثالث در دسترس عموم – باید پرچمهای قرمز را برافرازند.
امنیت کیف پول ذخیره سازی کلید
پس از تولید کلیدها، آنها باید در جایی پنهان شوند - هرگز در متن ساده، همیشه رمزگذاری شده. اما صرفا داشتن دستگاهی که کلیدها در آن ذخیره می شوند لزوماً مساوی با مالکیت و کنترل کلید نیست. فاکتورهای زیادی مانند امنیت زنجیره تامین دستگاه، نحوه اتصال دستگاه و سایر اجزای دستگاه باید در نظر گرفته شود. علاوه بر این، هر روش ذخیره سازی دارای مجموعه ای از مبادلات بین امنیت، دسترسی، قابلیت نگهداری و قابلیت استفاده است.
در زیر، ما رایجترین دستهها را بر اساس سطح ریسک درک شده مرتبط با آنها تجزیه میکنیم.
ریسک بالاتر: کیف پول های "گرم".
این مفهوم در واقع ربطی به دما ندارد. وقتی صحبت از گزینههای ذخیرهسازی کلید میشود، اگر کیف پول به اینترنت متصل باشد، «داغ» در نظر گرفته میشود. از سوی دیگر، اگر کیف پول آفلاین و ایزوله باشد، "سرد" در نظر گرفته می شود. با وجود همه موارد دیگر، کیف پول های سرد از کیف پول های داغ ایمن تر هستند - اما دسترسی و استفاده از آنها نیز دشوارتر است. کیف پولی که به هر شبکه ای متصل است بیشتر در معرض هک است زیرا به مهاجمان فرصت بیشتری برای دسترسی برای کشف و سوء استفاده از آسیب پذیری ها می دهد.
کیف پول های داغ می توانند چند شکل داشته باشند.
- نرم افزار متصل: پایگاه های داده آنلاین، حافظه برنامه تلفن یا وب سرور، پسوند مرورگر
اینها خطرناک ترین گزینه ها هستند. در اینجا، نرمافزار کیف پول، چه نگهبانی یا نه، دسترسی مستقیم به کلیدها دارد - همه در حالی که به اینترنت خارجی متصل است. کلیدها در حالت ایده آل باید رمزگذاری شوند و مجموعه کلیدهای دیگری که برای رمزگذاری آنها استفاده می شود باید در یک سیستم مدیریت کلید اختصاصی (KMS) با کنترل های دسترسی بسیار محدود مانند زنجیره کلید سیستم عامل یا سیستم مدیریت کلید ابری ذخیره شوند.
برای کیف پول های داغ مبتنی بر نرم افزار، جداسازی مدیریت کلید و مجوز از بقیه اجزای نرم افزار بسیار مهم است. مشکلاتی ممکن است در ورود به سیستم، مدیریت خطا، و مدیریت حافظه (مخصوصاً مبتنی بر پشته، جایی که ممکن است کلیدها به درستی «صفر» یا پاک نشده باشند) بروز کند)، که همگی ممکن است به اشتباه رمزهای عبور، کلیدهای رمزگذاری، کلیدهای امضا، یا سایر موارد حساس را فاش کنند. مواد رمزنگاری هنگامی که این اتفاق می افتد، مداخله کنندگان می توانند از طریق برنامه های کاربردی متصل یا سرورهای وب، حملات کانال جانبی یا تهدیدهای خودی دسترسی غیرمجاز به دست آورند.
مهم نیست که یک سرویس چگونه خود را برچسب گذاری می کند، اگر کلیدهای امضا در هر زمان در حافظه سیستم آنلاین رمزگذاری نشده باشند، مدل را باید یک کیف پول نرم افزاری داغ در نظر گرفت. (حتی اگر بعداً کلیدها در حالت استراحت در یک محفظه امن ذخیره شوند.)
- سختافزار متصل: دستگاههای با هدف خاص، محصورات امن سیار، ماژولهای امنیتی سختافزار آنلاین (HSM)
سخت افزار متصل به طور کلی در مقایسه با نرم افزارهای متصل کم خطر تلقی می شود، اما هنوز به اندازه ذخیره سازی سرد امن نیست. در سختافزار متصل، کلیدها فقط در دستگاههای سختافزاری با هدف خاص تولید میشوند و زندگی میکنند. سپس اینها می توانند به شبکه های داخلی یا عمومی متصل شوند. چنین دستگاه هایی به طور کلی مسئولیت های متعددی را در رابطه با مدیریت کلید بر عهده می گیرند، از جمله امنیت برای تولید کلید، امضا و ذخیره سازی.
سخت افزار متصل انواع مختلفی دارد. کیف پولهای سختافزاری مانند دستگاههای Trezor و Ledger وجود دارند که معمولاً کاربران رمزنگاری کمی پیچیدهتر از آنها استفاده میکنند. (افراد بیشتری باید از این دستگاهها استفاده کنند، زیرا بسیار ایمنتر از استفاده از نرمافزار متصل به تنهایی هستند.) همچنین ماژولهای امنیتی سختافزار یا HSM وجود دارد که معمولاً در تنظیمات تجاری سنتیتر مانند مواردی که پردازش دادههای حساس را مدیریت میکنند، استفاده میشوند. ، مانند پرداخت با کارت اعتباری.
دستگاه ها فقط به اندازه زنجیره تامینی که آنها را تولید و پیکربندی کرده است ایمن هستند. وقتی سخت افزار متصل را در نظر می گیرید، از خود بپرسید: احتمال اینکه دستگاه ها – یا سیستم عامل – قبل از در اختیار گرفتن شما دستکاری شده باشند چقدر است؟ برای کاهش این خطر، بهتر است دستگاه ها را مستقیماً از فروشندگان مورد اعتماد خریداری کنید. آنها را مستقیماً از منبع ارسال کنید. مطمئن شوید که بستهها به خطر نیفتند - بدون پارگی، پارگی، مهر و موم شکسته و غیره - که ممکن است نشان دهنده دستکاری در هنگام حمل و نقل باشد. همچنین توصیه می شود قبل از استفاده، نسخه سیستم عامل و پیکربندی آن را بررسی کنید. مراحل انجام این کار بسته به سخت افزار متفاوت است، اما همه باید دستورالعمل ها را ارائه کنند.
البته، همیشه این احتمال وجود دارد که کیف پول سخت افزاری بعداً به سرقت رفته یا توسط یک شخص غیرمجاز به آن دسترسی پیدا کند. با توجه به این تهدیدات، مهم است که مطمئن شوید کیف پولهای سختافزاری دارای لایههای کنترل دسترسی ایمن نیز هستند - تضمینهایی که تضمین میکند آنها فقط کورکورانه هیچ و همه تراکنشها را امضا نمیکنند. کنترلها میتوانند شامل الزامات رمز عبور، درخواستهای درخواست مجوز صریح برای هر مرحله از تراکنش، و خلاصههای انگلیسی ساده که توصیف کنند معاملات واقعاً انجام میدهند، باشد. علاوه بر این، اکثر کیف پولهای سختافزاری از رمزگذاری کلید خصوصی پشتیبانی میکنند که به عنوان «کلید بستهبندی» نیز شناخته میشود. حتی بهتر از آن، کیف پولهای امن اجازه نمیدهند که کلیدها به شکل متن ساده خام صادر شوند، حتی اگر کسی بخواهد.
این سطح ایمنی است که برای محافظت واقعی از داراییهای کریپتو لازم است.
ریسک کمتر: کیف پول "سرد".
گرمای کمتر، خطر کمتر. کیفپولهای سرد معمولاً امنتر از کیفهای سرد در نظر گرفته میشوند، اگرچه معمولاً کمتر قابل استفاده هستند. کیفهای سرد معمولاً کیفپولهای «هوایی» نامیده میشوند، به این معنی که هیچ ارتباطی با هیچ شبکه داخلی یا عمومی ندارند.
تنهایی در این مورد یک فضیلت است. Airgapping شامل اجرای دقیق انزوای فیزیکی و اقدامات مجوز است. این اقدامات میتواند شامل استفاده از قفسهای فارادی (سپرهایی که سیگنالهای بیسیم را مسدود میکنند)، دسترسی بیومتریک (مانند اسکنر اثر انگشت یا عنبیه)، حسگرهای حرکتی (برای خاموش کردن آلارمها در صورت استفاده غیرمجاز)، و SCIF، یا امکانات اطلاعات محفظهای حساس (ویژه) باشد. مناطق برای پردازش اطلاعات طبقه بندی شده).
بیایید برخی از گزینه های کیف پول سرد را با جزئیات بیشتری بررسی کنیم.
- نرم افزار Airgrapped: برنامه سرور آفلاین
از آنجایی که مهاجم میتواند در هر زمانی ماشینی را به صورت آنلاین بدزدد یا آن را ببرد، کیف پولهای سرد باید با سیستمهای امنیتی طراحی شوند که حتی اگر به صورت آنلاین آورده شوند، مقاوم باشند. کلیدها باید به تکههای کلید تقسیم شوند - برای قابل استفاده کردن قطعات باید دوباره به هم وصل شوند - از طریق یک روش استاندارد، مانند اشتراکگذاری مخفی Shamir یا محاسبات چند طرفه. سخت افزارهای با هدف خاص، مانند HSM ها، به شدت روی نرم افزارهای متصل توصیه می شوند، زیرا معمولاً کنترل های بیشتری را ارائه می دهند.
- سخت افزار Airgrapped: کیف پول سخت افزاری آفلاین، ماژول امنیتی سخت افزار آفلاین (HSM)
این راه حل امن ترین از همه در نظر گرفته می شود. مشابه دسته قبلی، باید فرض کرد که سخت افزار را می توان به سرقت برد و به صورت آنلاین برد. به همین دلیل، دوباره برای این سیستمها مهم است که لایههای کنترل دسترسی بهدرستی پیادهسازی شده را، همانطور که قبلاً بحث شد، داشته باشند. بسیاری از فروشندگان HSM به حد نصابی از کارتهای هوشمند فیزیکی نیاز دارند تا قبل از باز شدن قفل دسترسی به کلیدها جمع شوند. حتی اگر دستگاه دارای صفحه نمایش نباشد، باید راهی برای تأیید جزئیات تراکنشها در اختیار کاربران قرار دهد.
از آنجایی که کیف پولهای سرد یا با شکاف هوا امنترین دسته هستند، بیشتر سرمایههایی که توسط بازیکنان بزرگ مدیریت میشوند به این روش ذخیره میشوند. خدمات عمده خرده فروشی، مانند Coinbase، Gemini، Kraken، و سایر خدمات، و همچنین خدمات برای کاربران سازمانی مانند Anchorage، از جمله خدماتی هستند که این کار را انجام می دهند. بسیاری از این بازیکنان خط دفاعی دیگری را به صورت پشتیبان گیری و بازیابی انتخاب می کنند، فقط در صورتی که - خدای نکرده - دسترسی خود را از دست بدهند، یا ماشین ها خراب، دزدیده یا نابود شوند.
پشتیبان گیری و بازیابی
کلیدهای امضا همیشه باید پس از رمزگذاری پشتیبان گیری شوند. وجود افزونگی کلیدهای امضای رمزگذاری شده و کلیدهای بسته بندی کلید بسیار مهم است. روشهای پشتیبانگیری از کلید امضا متفاوت است، اما همیشه باید راهحلهای سختافزاری بومی را ترجیح داد.
برای کیف پولهای سختافزاری، پشتیبانگیری معمولاً شامل یک عبارت اولیه متن ساده 12 کلمهای است که کلیدهای خصوصی از آن مشتق میشوند. این عبارت اولیه باید به صورت غیر دیجیتالی (کاغذ فکر کنید، فلز) و به امن ترین راه موجود (یک خزانه فیزیکی در خانه، داخل یک صندوق بانکی) ذخیره شود. این عبارت را می توان به بخش هایی تقسیم کرد که از نظر جغرافیایی توزیع شده اند تا از به خطر افتادن آسان کل راز جلوگیری شود. (مردم گاهی اوقات این رویکرد را با ارجاع به هورکراکس های تخیلی که جادوگران تاریک به طور موثر برای "پشتیبان گیری" از روح خود استفاده می کنند توضیح می دهند. هری پاتر.)
بسیاری از HSM ها به طور طبیعی برخی از چالش های مربوط به پشتیبان گیری و بازیابی را مدیریت می کنند. استانداردها مکانیسم هایی دارند که می توانند کلیدهایی را صادر کنند که به طور پیش فرض با کنترل های دسترسی رمزگذاری شده اند. اگر کنترل های دسترسی برآورده شوند، کلیدها را می توان به HSM های دیگر وارد کرد. به طور مفید، ناوگان HSM ها همچنین می توانند با یک کلید رمزگذاری مشترک، که از حد نصاب کارت های هوشمند مشتق شده است، تهیه شوند. جدا کردن سخت افزار از مواد کلیدی به این روش کمک می کند تا از نقاط شکست منفرد جلوگیری شود.
در نهایت، عوامل انسانی نیاز به پرداختن دارند. مکانیسمهای بازیابی باید بتوانند در برابر در دسترس نبودن موقت یا دائمی هر فردی که در عملیات مدیریت حساب دخیل است، مقاومت کند. افراد باید مطمئن شوند که راه هایی را برای اعضای نزدیک خانواده یا سایر طرف های مورد اعتماد برای بازیابی کلیدها در صورت مرگ یا سایر موارد اضطراری فراهم می کنند. در همین حال، عملیات گروهی باید حد نصابی را تعریف کند - مثلاً 2 از 3 یا 3 از 5 - که می تواند به طور منطقی علیرغم رویدادهای زندگی، مسافرت، بیماری یا حوادث عمل کند.
امنیت کیف پول استفاده از کلید
پس از تولید و ذخیره کلیدها، می توان از آنها برای ایجاد امضای دیجیتالی استفاده کرد که تراکنش ها را مجاز می کند. هر چه قطعات نرم افزاری و سخت افزاری در ترکیب بیشتر باشد، خطر بیشتری دارد. برای کاهش ریسک، کیف پول ها باید از دستورالعمل های زیر برای مجوز و احراز هویت پیروی کنند.
- اعتماد کنید ، اما تأیید کنید
کیف پولها باید به احراز هویت نیاز داشته باشند. به عبارت دیگر، آنها باید تأیید کنند که کاربران همانی هستند که میگویند هستند و فقط اشخاص مجاز میتوانند به محتویات کیف پول دسترسی داشته باشند. متداول ترین حفاظت در اینجا کدهای پین یا عبارت عبور هستند. مثل همیشه، اینها باید به اندازه کافی طولانی و پیچیده باشند - با استفاده از انواع مختلف شخصیت ها - تا حداکثر اثربخشی داشته باشند. اشکال پیشرفتهتر احراز هویت میتواند شامل تأییدیههای بیومتریک یا رمزگذاری کلید عمومی باشد، مانند امضای رمزنگاری از چندین دستگاه ایمن دیگر.
- کریپتو خود را رول نکنید (دوباره!)
کیف پول ها باید از کتابخانه های رمزنگاری تثبیت شده استفاده کنند. برای اطمینان از ممیزی و ایمن بودن آنها تحقیق کنید تا از نشت مواد کلیدی یا گم شدن کامل کلیدهای خصوصی جلوگیری کنید. موضوع را پیچیده میکند، حتی کتابخانههای مورد اعتماد نیز میتوانند رابطهای ناامنی داشته باشند، همانطور که اخیراً در این مورد وجود داشت این کتابخانه های Ed25519. مراقب باش!
- عدم استفاده مجدد
یک دام استفاده از کلید که به خوبی مطالعه شده است، استفاده مجدد ناخواسته از پارامترهای امضای رمزنگاری خاص است. برخی از طرح های امضا ممکن است نیاز به a پیک به این معنی که «عدد یک بار استفاده شده است»، یک عدد دلخواه فقط برای استفاده، خوب، یک بار در یک سیستم. الگوریتم امضای دیجیتال منحنی بیضی (ECDSA) یکی از این طرح های امضایی است که این کار را انجام می دهد. اگر یک nonce مجدداً با ECDSA استفاده شود، می تواند منجر به سازش کلید شود. الگوریتم های مختلف دیگر تحت تأثیر قرار نمی گیرند، بنابراین، طبق معمول، مطمئن شوید که از کتابخانه های رمزنگاری به خوبی تثبیت شده استفاده می شود. (برخی از کتابخانههای رمزنگاری با هش کردن دادههای تراکنش، از nonces منحصربهفرد اطمینان حاصل میکنند، که شامل سایر دادههای منحصربهفرد مانند nonces حساب میشود.) اما این بردار حمله قبلاً در هکهای پرمخاطب خارج از web3، مانند سال ۲۰۱۰ مورد سوء استفاده قرار گرفته است. هک سونی پلی استیشن 3.
- یک کلید برای هر هدف
بهترین روش دیگر اجتناب از استفاده مجدد از یک کلید برای بیش از یک هدف واحد است. برای مثال، کلیدهای جداگانه برای رمزگذاری و امضا باید نگه داشته شوند. این از اصل "کمترین امتیاز” در صورت مصالحه، به این معنی که دسترسی به هر دارایی، اطلاعات یا عملیات باید فقط به طرفها یا کدهایی محدود شود که برای کارکرد سیستم مطلقاً به آن نیاز دارند. اصل "حداقل امتیاز"، زمانی که به درستی اجرا شود، می تواند شعاع انفجار یک حمله موفقیت آمیز را به شدت محدود کند. کلیدهای مختلف بسته به هدفشان نیازمندی های متفاوتی برای پشتیبان گیری و مدیریت دسترسی خواهند داشت. در زمینه وب 3، جداسازی کلیدها و عبارات اولیه بین دارایی ها و کیف پول ها بهترین روش است، بنابراین به خطر افتادن یک حساب روی حساب دیگر تأثیر نمی گذارد.
نتیجه
ماهیت حضانت یا غیر حضانت مالکیت کلیدی آنقدر سیاه و سفید نیست که تفکر متعارف تصور می کند. این وضعیت به دلیل بسیاری از قطعات متحرک درگیر در مدیریت کلید پیچیده است - از تولید کلید تا ذخیره سازی و استفاده. هر قطعه سختافزار یا نرمافزار در طول زنجیره خطراتی را به همراه دارد که حتی گزینههای کیف پول غیرقانونی را نیز در معرض خطراتی از نوع نگهداری قرار میدهد.
برای آینده، ما انتظار داریم که کارهای توسعه بیشتری برای ایمن سازی کیف پول ها در برابر حملات و کاهش خطرات مورد بحث در بالا انجام شود. زمینه های بهبود عبارتند از:
- کتابخانه های مدیریت کلید منبع باز ایمن و امضای تراکنش در سراسر سیستم عامل های تلفن همراه و دسکتاپ
- چارچوب های تایید تراکنش منبع باز مشترک
به طور خاص، ما بسیار هیجانزده خواهیم بود که شاهد توسعه برای اشتراکگذاری و منبع باز باشیم:
- کتابخانههای تولید کلید برای پیادهسازی بهترین امنیت در کلاسهای پشتیبان مختلف (رمزگذاری شده روی دیسک، سختافزار امن و غیره)
- کتابخانه های مدیریت کلید و امضای تراکنش برای سیستم عامل های موبایل و دسکتاپ
- چارچوبهایی برای تأیید تراکنش که تأیید فاکتور قوی مانند بیومتریک، تأییدیههای مبتنی بر PKI، بازیابی مجوز و غیره را اجرا میکند.
فهرست فوق جامع نیست، اما نقطه شروع خوبی است. همه اینها به این معناست که وضعیت پیچیدهتر از آن چیزی است که شعار «نه کلیدهای شما، نه رمزنگاری شما» نشان میدهد. با توجه به بخشها و مراحل متقابل متعدد از تولید و ذخیرهسازی تا زمان استفاده، داشتن کلید موضوعی دشوار است.
اگر در حال حاضر روی پروژهای کار میکنید که به یکی از موارد بالا میپردازد، یا علاقهمند به انجام آن هستید، لطفاً تماس بگیرید! ما مشتاقانه منتظر پیشرفت بیشتر در این جبهه هستیم.
***
ویراستار: رابرت هکت، @rhhackett
***
نظرات بیان شده در اینجا نظرات پرسنل AH Capital Management, LLC ("a16z") نقل شده است و نظرات a16z یا شرکت های وابسته به آن نیست. برخی از اطلاعات موجود در اینجا از منابع شخص ثالث، از جمله از شرکتهای سبد سرمایهای که توسط a16z مدیریت میشوند، بهدست آمده است. در حالی که a16z از منابعی گرفته شده است که قابل اعتماد هستند، اما a16z به طور مستقل چنین اطلاعاتی را تأیید نکرده است و هیچ گونه نمایشی در مورد صحت فعلی یا پایدار اطلاعات یا مناسب بودن آن برای یک موقعیت خاص ارائه نمی کند. علاوه بر این، این محتوا ممکن است شامل تبلیغات شخص ثالث باشد. aXNUMXz چنین تبلیغاتی را بررسی نکرده و محتوای تبلیغاتی موجود در آن را تایید نمی کند.
این محتوا فقط برای مقاصد اطلاعاتی ارائه شده است و نباید به عنوان مشاوره حقوقی، تجاری، سرمایه گذاری یا مالیاتی به آن اعتماد کرد. شما باید در مورد این موارد با مشاوران خود مشورت کنید. ارجاع به هر گونه اوراق بهادار یا دارایی دیجیتال فقط برای مقاصد توضیحی است و به منزله توصیه یا پیشنهاد سرمایه گذاری برای ارائه خدمات مشاوره سرمایه گذاری نیست. علاوه بر این، این محتوا برای هیچ سرمایهگذار یا سرمایهگذار بالقوهای هدایت نشده و برای استفاده از آن در نظر گرفته نشده است، و تحت هیچ شرایطی نمیتوان هنگام تصمیمگیری برای سرمایهگذاری در هر صندوقی که توسط a16z مدیریت میشود، به آن اعتماد کرد. (پیشنهاد سرمایه گذاری در یک صندوق a16z فقط توسط یادداشت قرار دادن خصوصی، قرارداد اشتراک و سایر اسناد مربوط به هر صندوق انجام می شود و باید به طور کامل خوانده شود.) هر گونه سرمایه گذاری یا شرکت پرتفوی ذکر شده، ارجاع شده، یا شرح داده شده نشان دهنده همه سرمایه گذاری ها در وسایل نقلیه تحت مدیریت a16z نیست، و نمی توان اطمینان داشت که سرمایه گذاری ها سودآور هستند یا سایر سرمایه گذاری های انجام شده در آینده ویژگی ها یا نتایج مشابهی خواهند داشت. فهرستی از سرمایهگذاریهای انجامشده توسط صندوقهای تحت مدیریت آندریسن هوروویتز (به استثنای سرمایهگذاریهایی که ناشر مجوز افشای عمومی a16z و همچنین سرمایهگذاریهای اعلامنشده در داراییهای دیجیتالی عمومی را ارائه نکرده است) در https://a16z.com/investments موجود است. /.
نمودارها و نمودارهای ارائه شده در داخل صرفاً برای مقاصد اطلاعاتی هستند و هنگام تصمیم گیری برای سرمایه گذاری نباید به آنها اعتماد کرد. عملکرد گذشته نشان دهنده نتایج آینده نیست. محتوا فقط از تاریخ مشخص شده صحبت می کند. هر گونه پیش بینی، تخمین، پیش بینی، هدف، چشم انداز، و/یا نظرات بیان شده در این مطالب بدون اطلاع قبلی ممکن است تغییر کند و ممکن است متفاوت یا مغایر با نظرات بیان شده توسط دیگران باشد. لطفاً برای اطلاعات مهم بیشتر به https://a16z.com/disclosures مراجعه کنید.
- رمزنگاری a16z
- آندرسن هورویتز
- بیت کوین
- بلاکچین
- انطباق با بلاک چین
- کنفرانس بلاکچین
- coinbase
- coingenius
- اجماع
- رمز و وب 3
- کنفرانس رمزنگاری
- معدنکاری رمز گشایی
- کریپتو کارنسی (رمز ارزها )
- غیر متمرکز
- DEFI
- دارایی های دیجیتال
- ethereum
- فراگیری ماشین
- رمز غیر قابل شستشو
- افلاطون
- افلاطون آی
- هوش داده افلاطون
- پلاتوبلاک چین
- PlatoData
- بازی پلاتو
- چند ضلعی
- اثبات سهام
- امنیت و حریم خصوصی
- W3
- زفیرنت