در کیف پولهای قطعی یا HD، کلید عمومی اصلی آن اصل کلید عمومی است که از کلید خصوصی اصلی مشتق شده است.
برای این منظور، یک فرآیند عادی ریاضی ضرب منحنی بیضوی.
تعداد بی نهایت کلید عمومی (Xpub) از کلید عمومی اصلی که آدرس های کیف پول را کنترل می کند، تولید می شود، اما به کلیدهای خصوصی آن آدرس ها دسترسی ندارند.
کلید عمومی Master این ویژگی را دارد که می تواند چندین کلید عمومی تولید کند.
این بدون نیاز به دسترسی به کلیدهای خصوصی. بنابراین در صورت فاش شدن هر یک از کلیدهای عمومی یا حتی خود کلید عمومی اصلی (MPK)، خطر از دست دادن یا سرقت وجوه وجود نخواهد داشت، هرچند حفظ حریم خصوصی وجود خواهد داشت.
زیرا کلیدهای عمومی به کلیدهای خصوصی آدرس ها دسترسی ندارند و این کلیدها قابل تولید نیستند، بنابراین فقط مقدار موجود در کیف پول را نشان می دهند و می توانند تاریخچه خود را در بلاک چین ببینند.
اما آنها دسترسی به استفاده یا خرج کردن وجوه موجود در آنجا را نخواهند داد.
مانند کلید خصوصی اصلی، کیف پول های HD باید به عنوان یک درخت درک شوند.
از هر شاخه می توان شاخه های جدیدی پدید آمد. خوب، هر گره ای از این شاخه ها می تواند یک کلید خصوصی اصلی و همچنین یک کلید عمومی اصلی تولید کند.
کلید عمومی اصلی به شما این امکان را می دهد که فقط کلیدهای عمومی تمام شاخه های “دختری” که از آن گره تولید می شوند را تولید کنید.
اما نمیتوانید آدرسهایی را که میتوان از سایر گرههای موازی یا قبلی ایجاد کرد، بشناسید.
کلید عمومی اصلی گره ۰، کنترلی برای دانستن تمام آدرس هایی که تولید می شوند را دارد.
برخلاف کلید خصوصی اصلی، اگر این کلید را فاش کنید، سرمایه خود را به خطر نمی اندازید، اما حریم خصوصی خود را به خطر می اندازید.
این به این دلیل است که با کلید عمومی اصلی می توانید تمام آدرس های عمومی کیف پول خود را بدانید.
با این حال این قابلیت کاربردهای خوبی دارد که در این مقاله به شما خواهیم گفت.
کلید عمومی اصلی (MPK) و کیف پول HD
کیف پول های HD 32 BIP ساختاری سلسله مراتبی و قطعی دارند.
این به آنها اجازه می دهد سازماندهی بیشتری داشته باشند، گویی یک درخت از نسل است.
این ساختار به کیف پول ها اجازه می دهد تا از یک شاخه درخت برای دریافت وجوه و تراکنش ها و از شاخه دیگر برای مدیریت این وجوه استفاده کنند.
این اجازه می دهد تا هر دو به هم مرتبط باشند اما در عین حال از یکدیگر جدا شوند.
بنابراین با یکی می توانید وجوه موجود را بدون دسترسی به آنها ببینید.
و با دیگری، می توانید آن وجوه را امضا کرده و خرج کنید.
این جداسازی کامل کلیدهای اصلی نیز امنیت و قابلیت اطمینان بیشتری را برای کیف پول تضمین می کند.
کلید عمومی La MAster (MPK) اجازه تولید بی نهایت کلید عمومی (Xpub) و آدرس های مربوط به آن را می دهد.
بنابراین نیازی به پشتیبان گیری از آدرس ها هر بار که آدرس جدیدی ایجاد می شود وجود نخواهد داشت.
در عوض، با شروع از seed، که کلیدهای اصلی به آن مرتبط هستند (هم عمومی و هم خصوصی)، کیف پول را می توان به طور کامل با تمام کلیدهای تولید شده (Xpub و Xpriv)، آدرس ها و وجوه موجود بازیابی کرد.
به همین ترتیب، همه کلیدهای عمومی و آدرسهای مشتقشده از کلید عمومی اصلی به خودی خود امکان مشاهده مقادیر موجود در آن را دارند.
اما آنها از دسترسی به این وجوه جلوگیری می کنند زیرا کلیدهای خصوصی مرتبط با آدرس های حاوی وجوه را کنترل نمی کنند.
این ویژگی همچنین به ویژه در مواردی مفید است که میخواهید یک کیف پول ذخیرهسازی سرد را پیکربندی کنید، به عنوان مثال، که فقط باید تعادل موجود در آن را مشاهده کنید.
در این کیف ها، یک سرور را می توان طوری پیکربندی کرد که فقط کلید عمومی اصلی را مدیریت کند.
که با آن می توانید هر تعداد آدرس عمومی برای دریافت وجوه ایجاد کنید، اما به هیچ مهاجمی اجازه استفاده از آن وجوه را نخواهید داد.
تولید کلیدهای عمومی مشتق شده (Xpub)
کیف پول های HD از یک تابع هش استفاده می کنند که به آنها اجازه می دهد کلیدهای عمومی ثانویه (دختران) را در ابتدا از کلید عمومی اصلی (والد) استخراج کنند.
که برای آن از کلید عمومی اصلی، پایه کیف پول، کد رشته ای تولید شده توسط الگوریتم HMAC-SHA512 و یک عدد شاخص ۳۲ بیتی استفاده می کند.
از طریق کد زنجیره ای تولید شده توسط الگوریتم هش HMAC-SHA512، داده های تصادفی در فرآیند استخراج کلیدهای عمومی اضافه می شوند.
این بدون اجازه دادن به ایندکس به سایر کلیدهای عمومی مشتق شده است.
این امر از یافتن یا یافتن کلید عمومی مشتق شده دیگر (خواهر) توسط یک کلید عمومی مشتق شده جلوگیری می کند.
و اینکه این کار فقط در صورتی امکان پذیر است که کد زنجیره ای موجود باشد.
سپس از طریق تابع هش که در ابتدا هم کلید عمومی اصلی و هم کد رشته و شماره فهرست را با هم ترکیب می کند، کلیدهای مشتق شده به صورت هش ۵۱۲ بیتی تولید می شوند.
که متعاقباً به دو نیمه تقسیم می شود: نیمه سمت راست تبدیل به کد زنجیره ای کلید مشتق شده (دختر) می شود.
و نیمه سمت چپ در کنار شماره فهرست به کلید خصوصی (پدر) اضافه می شود که کلید خصوصی (دختر) را ایجاد می کند.
این فرآیند به ترتیب تکرار می شود تا تعداد نامحدودی کلید عمومی ایجاد شود، جایی که کلیدهای عمومی دختر می توانند والدین شوند و کلیدهای دختر خود را تولید کنند.
بنابراین می تواند بی نهایت باشد.
نسل ها
تحت این طرح، تابع هش یک طرفه اجازه نمی دهد که از کلیدهای عمومی مشتق شده برای یافتن سایر کلیدهای عمومی خواهر استفاده شود.
همچنین برای پیدا کردن کلید عمومی اصلی یا اصلی.
به همین ترتیب، این طرح به کلیدهای عمومی دختر اجازه می دهد که از کلید خصوصی دختر شروع شوند یا مستقیماً از یک کلید عمومی والد.
اهمیت تولید کلیدهای عمومی مشتق شده
استخراج کلیدهای عمومی دختر از کلیدهای عمومی والدین به شما این امکان را می دهد که شاخه هایی از کلیدهای عمومی کیف پول را بدون به خطر انداختن وجوه موجود در آن ایجاد کنید.
اینها دیگر در هیچ زمانی به کلیدهای خصوصی مربوط نمی شوند.
بنابراین، تولید کیفهای نظارتی امکانپذیر است، به عنوان مثال برای سرورهای غیر ایمن، که در آن شما فقط میتوانید وجوه موجود در آن را مشاهده کنید، اما بدون گزینه خرج کردن وجوه ذخیره شده در آن آدرسها.
این ویژگی می تواند برای سرورهای در نظر گرفته شده برای تجارت الکترونیک بسیار مفید باشد، جایی که قرار دادن کلیدهای خصوصی در معرض سرور می تواند خطر بالایی داشته باشد.
همچنین در مواردی که کاربران فقط می خواهند یک کیف پول ذخیره سازی سرد یا آفلاین داشته باشند بسیار مفید است.
این به آنها اجازه می دهد تا وجوه خود را ایمن و بدون ریسک نگه دارند.
کلیدهای خصوصی را به صورت آفلاین در کیف پول نگه می دارد، اما امکان انتقال آنلاین کلیدهای عمومی را بدون خطر فراهم می کند.
تولید کلیدهای عمومی تقویت شده
امکان استخراج تعداد بی پایان کلید عمومی دختر از کلید عمومی والد بسیار مفید است.
با این حال، این ممکن است یک خطر امنیتی بالقوه باشد.
از آنجا که کلید عمومی که سایرین را مشتق می کند به کد زنجیره دسترسی دارد و اگر یک کلید خصوصی دختر فاش شود یا شناخته شود، بقیه کلیدهای خصوصی دختر را می توان استنباط کرد که امنیت وجوه را به خطر می اندازد.
دانستن کلید خصوصی دختر به همراه کد رشته کلید عمومی والد می تواند همه کلیدهای خصوصی دختر را آشکار کند و حتی می تواند برای استنباط کلید خصوصی والد استفاده شود. بنابراین برای از بین بردن این شکاف امنیتی، یک تابع بای پس به نام شنت تقویت شده شناخته می شود.
که از کلید خصوصی والد، به جای کلید عمومی والد، برای استخراج کد رشته برای هر کلید فرزند استفاده می کند.
قطع رابطه بین کلید عمومی والد و کد رشته فرزند.
این یک نوع فایروال تولید می کند که امکان تشخیص دنباله پدر و دختر در کلیدهای عمومی مشتق شده را نمی دهد.




