بازیابی کیف پول شبیه یک کار تایپ متن به نظر می‌رسد و در واقع یک کار نگهداری کلید است. عبارتی که تایپ می‌کنید رمز عبوری نیست که سروری آن را بررسی کند؛ ورودی یک تابع اشتقاق است که همان کلیدهای خصوصی‌ای را بازسازی می‌کند که کیف پول پیش از گم شدن داشت. هر چیزی که در آن لحظه بتواند ضربه‌های کلید، بریدگی‌دان یا حافظهٔ فرایند را بخواند، می‌تواند آن‌ها را هم بازسازی کند. پس آماده‌سازی یعنی تصمیم دربارهٔ اینکه راز کجا مجاز به وجود داشتن است، پیش از آنکه وجود داشته باشد.

عبارت را از رسانه تا کلید مشتق‌شده ردگیری کنید

یک یادیار به سبک BIP-39 نرمال‌سازی می‌شود، با PBKDF2-HMAC-SHA512 و با استفاده از یک عبارت عبور اختیاری به‌عنوان نمک گسترده می‌شود و به بذری تبدیل می‌شود که کیف پول کلیدها را از آن مشتق می‌کند. از این دو پیامد مستقیماً حاصل می‌شود. نخست، عبارت یک اختیار پایدار است نه یک اعتبارنامهٔ نشست، بنابراین اگر بیرون برود بازنشانی سمت سرور وجود ندارد. دوم، عبارت عبور اختیاری در اشتقاق مشارکت می‌کند و به همین دلیل بازیابی‌ای که به نظر می‌رسد کیف پول خالی می‌سازد معمولاً یعنی عبارت عبور اشتباه وارد شده است، نه عبارت اشتباه.

هر گام پس از نرمال‌سازی درون فرایندی رخ می‌دهد که در آن تایپ کرده‌اید. همین بخشی است که بیشتر راهنماهای بازیابی از آن می‌گذرند: سطح مواجهه مسیر ورود و حافظهٔ همان فرایند است، نه شبکهٔ میان شما و یک وب‌سایت.

اینکه کدام فرایند مشروع است به کیف پول بستگی دارد. یک دستگاه سخت‌افزاری رابط بازیابی خودش را روی دستگاه دارد؛ یک کیف پول نرم‌افزاری صفحهٔ بازیابی مستندی در یک نسخهٔ تأییدشده دارد. هیچ‌کدام چت پشتیبانی نیستند و هیچ‌کدام صفحه‌ای نیستند که پیشنهاد کند عبارتی را برای شما بررسی کند.

سیستم مهمان اعتماد میزبان خود را به ارث می‌برد

ماشین مجازی مانند یک رایانهٔ جدا به نظر می‌رسد و یک مرز اعتماد مستقل نیست. راهنمای NIST دربارهٔ مجازی‌سازی کامل این وابستگی را مستقیم توصیف می‌کند: امنیت مهمان به میزبان و هایپروایزر زیر آن وابسته است و منابع مشترکی مانند بریدگی‌دان یا یکپارچگی پوشه کانال میان آن‌ها را گسترده‌تر می‌کند. نصب یک مهمان روی ماشینی که از قبل به آن بدگمان هستید مسیر ورود تازه‌ای نمی‌سازد.

ControlWhat it addressesWhat it leaves exposed
Verified wallet buildRunning the code the publisher actually signedEverything the running process can read once it starts
Live-boot environment, no persistent diskSecrets left in swap, caches or a saved sessionThe firmware, the keyboard and the display path
Full-disk encryption on the hostRecovery material at rest after shutdownThe same material while the machine is unlocked
Tunnel to a trusted exitWho can observe traffic in transitLocal processes, screen capture and input hooks

نشت‌های عملی همین خط را دنبال می‌کنند. بریدگی‌دان مشترک هر چیزی را که رونوشت کرده‌اید حمل می‌کند. عکس‌های لحظه‌ای و فایل‌های حالت معلق می‌توانند حافظه‌ای را ثبت کنند که عبارت در آن است. افزونه‌های مهمان با دسترسی به سیستم فایل میزبان به مهمان دیدی از مسیرهای میزبان و به میزبان دیدی از مسیرهای مهمان می‌دهند. هیچ‌یک از این‌ها حملهٔ عجیب نیست؛ ویژگی‌هایی هستند که ماشین مجازی را راحت می‌کنند.

نتیجهٔ صادقانه از «ماشین مجازی ناامن است» باریک‌تر است. ماشین مجازی می‌تواند ظرف درست برای کار باشد وقتی میزبان همان ماشینی است که به آن اعتماد دارید و ویژگی‌های اشتراک‌گذاری را حذف کرده‌اید. نمی‌تواند میزبانی را که به آن اعتماد ندارید نجات دهد.

تونل رمزگذاری‌شده در واقع چه چیزی را پوشش می‌دهد

یک VPN بسته‌ها را میان دو نقطهٔ پایانی محافظت می‌کند. نظری دربارهٔ اینکه چه کسی در هر سر تصویر را می‌خواند ندارد و مانع نمی‌شود که یک فرایند محلی آنچه در پنجره تایپ می‌کنید را ببیند. پس تونل وقتی نگرانی مسیر است مرتبط است و وقتی نگرانی میزبان است بی‌ربط.

این تفکیک مهم است چون این دو با هم فروخته می‌شوند. «اتصال رمزگذاری‌شده» گذر را توصیف می‌کند؛ «دستگاه مورد اعتماد» نقطهٔ پایانی را توصیف می‌کند. یک رویهٔ بازیابی به پاسخ جداگانه برای هر دو نیاز دارد و تنها یکی از آن‌ها را می‌تواند یک سرویس شبکه بدهد.

بررسی آنچه دانلود کرده‌اید به همان خانوادهٔ پرسش‌های نقطهٔ پایانی تعلق دارد. بررسی هش و بررسی امضا ثابت می‌کنند که آرشیو با آنچه ناشر منتشر کرده مطابقت دارد؛ دربارهٔ ماشینی که آن را اجرا خواهد کرد چیزی نمی‌گویند.

sha256sum -c SHA256SUMS.txt
gpg --verify SHA256SUMS.txt.sig SHA256SUMS.txt

محیط را پیش از پیدایش ماده آماده کنید

ترتیب از ابزار مهم‌تر است. میزبان را تعیین کنید، ویژگی‌های اشتراک‌گذاری را بردارید، آنچه نیاز به اتصال ندارد را قطع کنید و تنها پس از آن سابقهٔ بازیابی را از انبارش بیرون بیاورید. انجام این کار به ترتیب معکوس یعنی راز پیش از آنکه تصمیم بگیرید کجا باید برود، در حافظه است.

سپس راز را در جریانی نگه دارید که سازندهٔ کیف پول مستند می‌کند. آن را در رابط بازیابی خود کیف پول، روی شبکه‌ای که کیف پول انتظار دارد وارد کنید و تنها عملیاتی را تأیید کنید که می‌توانید روی نمایشگر مورد اعتمادی که کیف پول فراهم می‌کند بررسی کنید. یک پنجرهٔ آشنای میزکار اثبات آن نیست که دستگاه آنچه را پنجره ادعا می‌کند مجاز می‌داند.

اگر به مواجهه بدگمان هستید، وارد کردن ماده را روی آن سیستم متوقف کنید و به محیطی بروید که می‌توانید مستقل به آن اعتماد کنید. بستن ماشین مجازی، تغییر رمز VPN یا نصب دوبارهٔ برنامهٔ کیف پول اختیار کیف پول را نمی‌چرخاند؛ تنها انتقال دارایی‌ها به کیف پول تازه با کلیدهای تازه‌تولیدشده این کار را می‌کند. عبارت خام را تا زمانی که گام‌های مخصوص کیف پول را به دست می‌آورید از هر گفت‌وگوی پشتیبانی بیرون نگه دارید، چون هیچ فرایند پشتیبانی مشروعی به آن نیاز ندارد. همین یک قاعده بیش از هر فهرست بازبینی سخت‌سازی جلوی زیان می‌گیرد.

مقالات مرتبط