اشکالات شناخته شده ای وجود دارد که باعث می شود کلیدهای اثبات شده در سیستم های 64 بیتی در سیستم های 32 بیتی و بیگ بزرگ غیرقابل استفاده شوند. هنوز مشخص نیست که آیا هشدار در این مورد صادر می شود یا اینکه آیا سیستم اثبات ساکت به خطر می افتد.
رمزگذاری کیف پول
رمزگذاری کیف پول به دلایل مختلف غیرفعال است:
- کیف پول های رمزگذاری شده قادر به تشخیص صحیح خریدهای محافظ نیستند (به دلیل ماهیت غیرقابل تصور Joinsplits) و می توانند به طور نادرست تعادل محافظ بزرگتر را نشان دهند تا دفعه بعد که کیف پول قفل نشود. این مشکل محدود به عدم تشخیص هزینه نبود. این امکان وجود داشت که تعادل نشان داده شده با میزان تغییر از یک هزینه افزایش یابد ، بدون آنکه مبلغ خرج شده را کسر کند.
- در حالی که کیف پول های رمزگذاری شده از هزینه های بودجه جلوگیری می کنند ، آنها ویژگی های محافظت از Joinsplits را حفظ نمی کنند (به دلیل نیاز به تشخیص خریدها). یعنی شخصی که به یک کیف پول رمزگذاری شده دسترسی داشته باشد. DAT از کل نمودار معامله شما (غیر از هزینه های تازه کشف شده ، که از مسئله قبلی رنج می برد) دید کامل دارد.
- ما نگران مقاومت الگوریتم مورد استفاده برای استخراج کلیدهای رمزگذاری کیف پول (به ارث بیت کوین) به حملات فرهنگ لغت توسط یک مهاجم قدرتمند بودیم. اگر و هنگامی که ما رمزگذاری کیف پول را دوباره فعال می کنیم ، احتمالاً با یک الگوریتم مشتق کلیدی مبتنی بر عارضه مدرن که برای مقاومت بیشتر در برابر حمله فرهنگ لغت ، مانند Argon2i طراحی شده است.
برای محافظت از کیف پول خود در حالت استراحت باید از رمزگذاری کامل دیسک (یا رمزگذاری دایرکتوری خانگی خود) استفاده کنید و باید کاربرانی را که در سیستم عامل شما کار می کنند ، فرض کنید می توانند پرونده Wallet. Dat شما را بخوانند.
حملات کانال جانبی
این اجرای ZCASH در برابر حملات کانال جانبی مقاوم نیست. شما باید فرض کنید (حتی بیرونی) کاربرانی که روی سخت افزار کار می کنند ، یا از نظر جسمی در نزدیکی سخت افزار هستند ، که روند ZCASHD شما در حال اجرا است:
- مقادیر کلیدهای مخفی مخفی خود را تعیین کنید ، و همچنین با مشاهده کانال های جانبی حافظه نهان ، هنگام انجام یک عملیات Joinsplit ، چه یادداشت هایی را خرج می کنید. این به دلیل نشت احتمالی کانال جانبی در ماشین آلات اثبات کننده Libsnark است.
- تعیین کنید که با مشاهده نشت اطلاعات کانال سمت حافظه نهان از شاهدان افزایشی که آنها با یادداشت های جدید به روز می شوند ، کدام یادداشت ها را در اختیار شما قرار می دهد.
- تعیین کنید که با مشاهده فرآیند رمزگشایی آزمایشی هر یک از متن های رمزگذاری شده در blockchain ، کدام یادداشت ها را در اختیار شما قرار می دهد.
شما باید اطمینان حاصل کنید که هیچ کاربری دیگر توانایی اجرای کد (حتی غیرقانونی) را بر روی سخت افزاری که فرآیند ZCASHD شما اجرا می شود ، تا زمانی که این آسیب پذیری ها به طور کامل تجزیه و تحلیل و برطرف شود ، ندارند.
رابط استراحت
رابط REST ویژگی ای است که از بیت کوین بالادست به ارث رسیده است. به طور پیش فرض ، غیرفعال است. ما توصیه نمی کنیم تا زمانی که تحت بررسی امنیتی قرار نگرفته باشید ، آن را فعال کنید.
رابط RPC ¶
کاربران باید از تغییر تنظیمات پیش فرض که فقط به اتصالات RPC از LocalHost اجازه می دهد ، خودداری کنند. اجازه اتصالات از میزبان از راه دور ، MITM را قادر می سازد تا دستورات RPC دلخواه را اجرا کند ، که می تواند منجر به سازش حساب در حال اجرا ZCASHD و از دست دادن وجوه شود. برای خدمات چند کاربر که از یک یا چند مورد ZCASHD در پس زمینه استفاده می کنند ، پارامترهای منتقل شده توسط کاربران باید کنترل شوند تا از حملات دلهره آور که می توانند از هر کلید نگهدارنده توسط آن ZCASHD صرف کنند ، جلوگیری شود.
سازماندهی مجدد زنجیره بلوک: تفاوتهای عمده
کاربران باید از رفتار جدید در ZCASH آگاه باشند که با بیت کوین تفاوت چشمگیری دارد: در صورت سازماندهی مجدد زنجیره بلوک ، قانون بلوغ Coinbase بیت کوین به اطمینان حاصل می شود که هر سازماندهی مجدد کوتاهتر از فاصله سررسید هیچ یک از معاملات نورد را باطل نمی کند. ZCASH فاصله بلوغ 100 بلوک بیت کوین را برای معاملات نسل نگه می دارد ، اما از آنجا که Joinsplits باید در یک بلوک لنگر انداخته شود ، این امر محافظت محدود تری در برابر عدم اعتبار معاملات ایجاد می کند. در مورد سازماندهی مجدد زنجیره بلوک برای ZCASH ، تمام Joinsplits که در فاصله سازماندهی مجدد لنگر انداخته شده و هرگونه معامله ای که به آنها بستگی دارد نامعتبر خواهد شد ، معاملات را به عقب می اندازد و وجوه را به مالک اصلی باز می گرداند. مکانیزم مجدد معامله که از بیت کوین به ارث رسیده است ، بسته به Joinsplits بی اعتبار ، در صورت نیاز به تغییر ، معاملات را با موفقیت دوباره بارگذاری نمی کند. خالق یک Joinsplit بی اعتبار ، و همچنین سازندگان کلیه معاملات وابسته به آن ، باید خود معاملات را دوباره بارگذاری کنند.
دریافت کنندگان وجوه از یک JoinsPlit می توانند خطر اتکا به وجوه دریافت شده از معاملات را که ممکن است با استفاده از MinConf بالاتر (حداقل تعداد تأییدیه ها) بازگردانده شود ، کاهش دهد.
ورود به سیستم Z_* RPC تماس
گزین ه-debug=zrpc ثبت تماس های z_* را پوشش می دهد. با این کار اطلاعاتی در مورد یادداشت های خصوصی که ممکن است ترجیح دهید فاش نکنید را نشان می دهد. به عنوان مثال، هنگام فراخوانی z_sendmany برای ایجاد یک تراکنش محافظ، یادداشت های ورودی مصرف می شوند و یادداشت های خروجی جدید ایجاد می شوند.
گزین ه-debug=zrpcunsafe ثبت اطلاعات حساس در تماس های z_* را پوشش می دهد که فقط برای رفع اشکال و اهداف ممیزی به آن نیاز دارید. به عنوان مثال، اگر می خواهید قسمت یادداشت یک یادداشت در حال خرج شدن را بررسی کنید.
کلیدهای مخارج خصوصی برای آدرس های z هرگز ثبت نمی شوند.
تغییرات مورد نیاز بالقوه از دست رفته¶
علاوه بر اشتباهات احتمالی در کدهایی که به Bitcoin Core اضافه کردیم، و اشتباهات احتمالی در اصلاحات ما در Bitcoin Core، همچنین ممکن است تغییرات بالقوه ای در Bitcoin Core ایجاد کنیم، اما انجام ندادیم، زیرا این کار را نکردیم. حتی به ایجاد آن تغییرات فکر نکنید، در غیر این صورت وقت ما تمام شد. ما در شماره 826 انواع مختلفی از این احتمالات را بررسی کرده و مستند کرده ایم و معتقدیم که هر کاری را که برای راه اندازی نسخه 1. 0. 0 لازم بود تغییر داده یا انجام داده ایم. کاربران ممکن است بخواهند خودشان این لیست را بررسی کنند.
استراتژی ترید...
ما را در سایت استراتژی ترید دنبال می کنید
برچسب :
نویسنده : مرجان شیرمحمدی
بازدید : 54
تاريخ : شنبه
26 فروردين
1402 ساعت: 13:58