بررسی 9بهبود امنیت فنی برای کیف پول سخت افزاری
آمار نشان میدهد که تعداد کاربران بیت کوین در ایالات متحده در سال ۲۰۲۰ نسبت به سال قبل ، حدود ۸۱ درصد افزایش یافته است. اینک حدود ۳۶.۵ میلیون نفر در ایالات متحده به نوعی مالک ارز دیجیتال هستند. همزمان با این افزایش کاربران، قطعا امنیت هم تبدیل به چالشی جدی خواهد شد. وقتی که از امنیت سخن به میان میآید، پیشنهادی که اغلب میشنویم استفاده از کیف پول سخت افزاری (hardware wallet) است.
امنیت یک کیف پول سخت افزاری را میتوان از دو جهت مورد تجزیه و تحلیل قرار داد:
بعد اول امنیتی مهم در این راستا، خطاهای انسانی است. تا کنون حداقل ۴ میلیون بیت کوین در اثر خطاهای انسانی برای همیشه از بین رفتهاند. البته امروزه ابزارهایی برای به حداقل رساندن این خطاها ایجاد شدهاند که از جمله آنها میتوان به کیف پولهای اچ دی (HD) اشاره کرد.
دومین جنبه امنیت فنی است که در جامعه بیت کوین زیاد از آن صحبت شده است. این به معنی نحوه جلوگیری از حملاتی مانند حمله شخص ثالث (man in the middle attack)، حملات کانال جانبی و غیره از منظر فنی است.
در این مقاله سعی شده پیشنهادهایی در مورد بهبود امنیت فنی ارائه شود که امید است مورد توجه و استفاده شما کاربر عزیز قرار گیرد.
معیار امنیتی شکاف هوا
نحوه اتصال این کیف پول به ابزار یا برنامه همتا در اینجا بسیار اهمیت دارد. همگی میدانیم که منطق اساسی پشت یک کیف پول سخت افزاری این است که کلیدهای خصوصی فرد را از اینترنت جدا میکند. این عامل معیار امنیتی شکاف هوا کیف پول سخت افزاری شما را تعیین میکند و میزان هزینهای که یک هکر (hacker) برای دزدیدن داراییهای شما باید متحمل شود به این عامل بستگی دارد.
در اینجا لازم است بگوییم که شکاف هوا یک مفهوم نسبی است و نحوه تعامل کیف پول سخت افزاری شما را با برنامه همتا اندازهگیری میکند. امروزه چهار راهحل اصلی در این میان وجود دارد و این چهار راهحل پورت یو اس بی (USB port)، بلوتوث (Bluetooth)، کارت مایکرو اس دی (Micro SD Card) و کدهای کیو آر (QR Codes) هستند. USB یا بلوتوث به شیوه متعامل متصل میشود و ریسک حمله بزرگتری را به همراه دارد. کارتهای Micro SD و کدهای QR راهحلهایی با امنیت بیشتر هستند.
یکی ازمورد توجه ترین مزیتهای برجسته کارت Micro SD و یا کد QR این است که اتصال به قدری فیزیکی است که ادغام کیف پول سخت افزاری با برنامه همتای شخص ثالث بسیار آسانتر است. در اینجا دیگر مشکلات اتصال و سازگاری مطرح نیست. کیف پول سخت افزاری تنها میتواند به عنوان یک امضاکننده عمل کند و این کیف پول فقط به کار تایید میپردازد.
ریزپردازنده امنیتی (secure element)
ریزپردازنده امنیتی یک تراشه ریزپردازنده است که میتواند اطلاعات حساس را ذخیره کند و برنامه های ایمنی نظیر پرداخت ها را اجرا کند. بعضی بر این باورند که ریزپردازنده امنیتی توسط حکومت تایید میشود و جامعه بیت کوین هم به حکومتها اعتماد ندارد، پس چرا باید به این المانها اعتماد داشته باشد؟ لازم نیست که برای تایید امنیت یک المان، به حکومت اعتماد کنید؛ شما میتوانید خود نیز امنیت یک ریزپردازنده امنیتی را تایید کنید.
لازم است به اطلاعتان برسانیم که جامعه بیت کوین به این اجماع رسیدهاند که یک ریزپردازنده امنیتی نمیتواند متن باز باشد. اما حقیقت این است که این قضیه بستگی دارد و تا حدود زیادی وابسته به قدرت خرید شما است. چیزی که در اینجا میتوانیم انجام دهیم این است که سفت افزار آن ریزپردازنده امنیتی را متن باز کنیم.
جالب است بدانید که با یک سفت افزار متن باز میتوانید به آسانی موارد زیر را تایید کنید:
۱- چگونه عبارت ریکاوری (recovery) و کلید خصوصی اصلی از آنتروپی (entropy) ایجاد میشوند؟
۲- کلیدهای خصوصی تولید شده و کلیدهای عمومی چگونه تولید میشوند؟
۳- اینکه فرآیند تایید کاملا در داخل ریزپردازنده امنیتی انجام میگیرد یا نه؟
۴- اینکه کلیدهای خصوصی شما هرگز ریزپردازنده امنیتی را ترک نمیکنند.
اما هنوز سه عملکرد موجود است که نمیتوان آنها را به صورت متن باز درآورد. این عملکردها به قرار زیر هستند:
۱- ایجاد شماره تصادفی (TRNG)
۲- الگوریتمهای رمزنگاری مانند ECDSA
۳- نحوه جلوگیری آن از حملات فیزیکی
TRNG را میتوان با انجام آزمایشی مانند FIPS 140-2 تایید کرد. برای الگوریتمهای (algorithm) رمزنگاری مانند ECDSA، به آسانی میتوان الگوریتم رمزنگاری ریزپردازنده امنیتی را را مورد آزمایش قرار داد.
از لحاظ حملات فیزیکی نیز، با توجه به تاریخچه حمله کیف پول سخت افزاری میتوان متوجه شد که ریزپردازنده امنیتی هزینه حمله را افزایش میدهد یا نه. امنیت مفهومی نسبی است و هیچگاه نباید آن را مطلق تلقی کرد. در کل باید گفت که اگر سفت افزار یک ریزپردازنده امنیتی متن باز باشد، همه فعالیتهای کلیدی را میتوان اثبات و یا تایید کرد.
پشتیبانی چند امضایی PSBT
بدون اینکه عمیقا وارد مبحث BIP 174 شویم که PSBT را تعریف میکند، میتوان گفت که دو سناریوی اصلی برای PSBT موجود است:
۱- Coinjoin که باعث میشود افراد بهتر از حریم خصوصی خود در برابر ردیابی توسط تحلیل تراکنش روی زنجیره محافظت کنند.
۲- PSBT پروتکل را بین کیف پولهای مختلف تراز میکند و این پردازش تراکنشهای چند امضایی را بین کیف پولهای مختلف ممکن میکند.
پشتیبانی PSBT یکی از ضرورتهایی است که در یک کیف پول سخت افزاری آینده باید موجود باشد.
ساختن سخت افزار خود
ساختن سخت افزار خود نیاز به اعتماد به فروشندگان کیف پول سخت افزاری را به حداقل میرساند و روشی عالی است محسوب میشود. روشی رایج برای اینکه این امکان را برای افراد فراهم آورد تا سخت افزار خود را بسازند این است که کل محصول از جمله طراحی شماتیک (schematic) آن را متن باز کرد.
اما دو مشکل در اینجا مطرح است:
۱- آن هزینه مورد نیاز برای دزدیدن بیت کوینها را توسط هکرها پایین میآورد.
۲- افراد کمی دارای مهارت لازم برای ساخت کیف پول سخت افزاری از مرحله طراحی شماتیک تا آخر هستند. این کار نیازمند مهارت در حیطه سخت افزار و نرم افزار است.
بنابراین بهترین راهحل این است که بورد (board) توسعه ریزپردازنده امنیتی را به کاربر فروخت و کاربر با استفاده از آن اقدام به ساخت کیف پول سخت افزاری خود کند.
صفحه لمسی بزرگ
کاربران مدتهای طولانی است که از دکمههای کوچک و صفحه لمسیهای مختلف رنج میبرند. این ناکارآمدیها در دراز مدت ممکن است باعث اشتباه انسانی و از دست رفتن بیت کوینها شود. این در حالی است که صفحه لمسی بزرگتر میتواند تایپ را آسان کند و امکان خطا را پایین بیاورد.
بنابراین،صفحات بزرگ به کاهش حملات نیز کمک خواهند کرد. این ممکن است برای کاربران حرفهای چندان خوشایند نباشد اما برای پذیرش عام بیت کوین باید کاربران جدید را نیز مد نظر قرار داد.
محافظت در برابر سفت افزار بدکار
ازمنظر خطای انسانی باید بگوییم که متن باز بودن باعث ظهور حملات جدیدی خواهد شد. ما میدانیم که یک کیف پول سخت افزاری متن باز به کاربران اجازه میدهد که کد را سفارشی کنند و آن را جهت انجام مقاصد خود بر روی ابزار آپلود کنند.
اگرچه هشدارهای واضحی به کاربرانی که در حال نصب آپدیت غیر رسمی هستند داده میشود، اما تعدادی از مهاجمان سعی در اغفال کاربران در جاهایی مانند ردیت (Reddit) و تلگرام (telegram) دارند و آنها را به نصب سفت افزار بدکار متقاعد میکنند. محافظت از کاربران جدید لزوما به معنی فدا کردن انعطافپذیری نیست و فروشندگان کیف پول سخت افزاری میتوانند نسخههای جداگانهای را برای کاربران حرفهای فراهم کنند.
باتری ماژولار
میدانید که باتری آسیبپذیرترین بخش در محصولات الکترونیک است. افراد باید کیف پول سخت افزاری را برای مدتهای طولانی نگهداری کنند و حتی به وارثان خود منتقل کنند. اگر یک کیف پول سخت افزاری پس اندازهای افراد را در خود نگه دارد، در فاصله زمانی ۶ تا ۱۲ ماه مورد استفاده قرار خواهد گرفت.
در حال حاضر کیف پولهای سخت افزاری بیشتر و بیشتری از بلوتوث پشتیبانی میکنند و این نیاز به تقویت باتری را بسیار مطرح میکند. ممکن است افرادی در این میان فکر کنند که این قضیه مهم نباشد و اگر باتری دچار مشکل شود، با ابزاری جدید میتوان ارزهای خود را بازیابی کرد. اما توجه داشته باشید که تا جایی که امکان دارد باید کلیدهای خصوصی خود را کمتر به کار گیرید. هر بار که کلیدهای خصوصی خود را وارد میکنید، لایهای جدید از ریسک را اضافه میکنید.
برنامه همتای موبایل
امروزه بیشتر برنامههای همتای کیف پول سخت افزاری برنامههای دسکتاپ و یا وب هستند. زیرا این برنامهها مزایای زیادی دارند و این مزایا برای کاربران حرفهای بسیار مناسب هستند. برای کاربران عادی، یک برنامه همتای موبایل ریسک کمتری دارد زیرا:
۱- برنامههایی که بر روی موبایل اجرا میشوند، توسط سند باکس (Sandbox) جدا میشوند. آنها تنها میتوانند به دادههای خود دسترسی داشته باشند.
۲- رمزگذاری سیستم فایل کامل به صورت پیش فرض فعال شده است.
۳- اجازه کاربران در موبایل بسیار محدودتر از برنامههای دسکتاپ است.
موجود بودن برای خرید آفلاین
میدانید که بسیاری از افراد نمیتوانند از حریم خصوصی آنلاین خود محافظت کنند بنابراین اگر ما خرید آنلاین را به عنوان یک تهدید در نظر بگیریم، باز کردن کانال خرید آفلاین بسیار مناسب خواهد بود. پذیرش پرداخت نقدی و یا بیت کوینی در این میان بسیار بهتر از کارتهای اعتباری خواهد بود.
دیدگاهتان را بنویسید