دانه یادگاری

  • 2022-12-18

رمزگذاری یک عدد تصادفی در کلمات و استفاده از آنها برای ایجاد یک دانه.

یک جمله یادگاری ("کد یادگاری"، "عبارات بذر"، "کلمات بذر") راهی برای نمایش یک عدد بزرگ به صورت تصادفی به عنوان دنباله ای از کلمات است که ذخیره آن را برای انسان آسان تر می کند.

سپس از این کلمات برای ایجاد یک دانه استفاده می شود که می تواند برای تولید کلیدهای توسعه یافته در یک کیف پول قطعی سلسله مراتبی استفاده شود.

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

به دانه های تولید شده در وب سایت ها اعتماد نکنید. هنگام ایجاد کیف پول، باید seed خود را به صورت خصوصی در رایانه شخصی خود تولید کنید. من استفاده از Electrum را توصیه می کنم

آن را امتحان کنید!

چگونه یک جمله یادگاری تولید می کنید؟

1. ایجاد آنتروپی

برای ایجاد یک یادگاری ابتدا باید آنتروپی ایجاد کنید، که منبع تصادفی ما است.

می توانید فکر کنید که آنتروپی یک عدد تصادفی بسیار بزرگ است که هیچ کس قبلاً آن را ایجاد نکرده است یا هرگز در آینده ایجاد نخواهد کرد. همچنین بهتر است این عدد را به عنوان یک سری بیت (مثلاً 10011010010001) در نظر بگیرید، که رایانه‌ها چگونه اعداد را ذخیره می‌کنند.

نکته: بیت ( 0 یا 1 ) کوچکترین واحد ذخیره سازی در رایانه است.

آنتروپی که تولید می کنیم باید مضربی از 32 بیت باشد، زیرا به ما امکان می دهد آنتروپی را به تکه های زوج تقسیم کنیم و بعداً به کلمات تبدیل کنیم. علاوه بر این، آنتروپی باید بین 128 تا 256 بیت باشد، زیرا این برای ایجاد آنتروپی یکسان برای دو نفر کافی است.

احتیاط: همیشه از یک مولد اعداد تصادفی امن برای آنتروپی خود استفاده کنید. از تابع "تصادفی" پیش فرض زبان برنامه نویسی خود استفاده نکنید، زیرا اعدادی که تولید می کند برای رمزنگاری به اندازه کافی تصادفی نیستند. 1

2. آنتروپی به Mnemonic

اکنون که آنتروپی خود را به دست آورده ایم، می توانیم آن را در کلمات رمزگذاری کنیم.

اول از همه، ما برای کمک به تشخیص خطاها (که جمله پایانی را کاربرپسندتر می کند)، یک چک جمع به آنتروپی خود اضافه می کنیم. این چک‌سوم با هش کردن آنتروپی از طریق SHA256 ایجاد می‌شود که اثر انگشت منحصر به فردی برای آنتروپی به ما می‌دهد. سپس به ازای هر 32 بیت آنتروپی، 1 بیت از آن هش را می گیریم و آن را به انتهای آنتروپی خود اضافه می کنیم.

سپس آن را به گروه های 11 بیتی تقسیم می کنیم، آنها را به اعداد اعشاری تبدیل می کنیم و از آن اعداد برای انتخاب کلمات مربوطه استفاده می کنیم.

2048 کلمه در فهرست کلمات وجود دارد.

و در آنجا ما جمله یادگاری خود را داریم.

نکته: یک عدد 11 بیتی می تواند یک عدد اعشاری بین 0-2047 داشته باشد (به همین دلیل است که 2048 کلمه در لیست کلمات وجود دارد).

نکته: با افزودن 1 بیت چک جمع به هر 32 بیت آنتروپی، همیشه مضربی از 33 بیت خواهیم داشت که می‌توانیم آن را به تکه‌های 11 بیتی مساوی تقسیم کنیم.

نکته: یک عبارت یادگاری معمولاً بین 12 تا 24 کلمه است.

3. Mnemonic به Seed

اکنون که جمله یادگاری خود را دریافت کرده ایم، می توانیم آن را به دانه نهایی خود تبدیل کنیم.

برای ایجاد seed، جمله یادگاری خود را از طریق تابع PBKDF2 قرار می دهید. این اساساً یادگاری شما (+ عبارت عبور اختیاری) را چندین بار هش می کند تا زمانی که نتیجه نهایی 64 بایتی (512 بیتی) ایجاد شود.

عبارت عبور اختیاری به شما امکان می دهد تا دانه نهایی را تغییر دهید.

این نتیجه 64 بایتی seed شما است که می‌تواند برای ایجاد کلید توسعه یافته اصلی برای کیف پول قطعی سلسله مراتبی استفاده شود.

PBKDF2 -تابع اشتقاق کلید مبتنی بر رمز عبور 2

PBKDF2 اساساً یک تابع هش است که به گونه ای طراحی شده است (با هش کردن چندین بار قبل از تولید نتیجه). این امر این مزیت را دارد که هر کسی را برای هر کسی دشوارتر کند تا جملات منمونیک را بی رحمانه امتحان کند و بذرهایی را که مردم در واقع از آنها استفاده کرده اند ، بدست آورند.

علاوه بر این ، PBKDF2 همچنین به شما امکان می دهد تا ورودی دوم به نام نمک ("عبارت عبور" ، "پسوند بذر") را به همراه داده هایی که می خواهید هش دهید ، تهیه کنید ، که به شما امکان می دهد بذرهای کاملاً متفاوتی را از همان جمله mnemonic تولید کنید.

پیوندها

معتبر Mnemonic

یک جمله mnemonic حاوی یک چک است ، به این معنی که می توانید یک جمله mnemonic خاص را بررسی کنید.

برای انجام این کار ، شما کلمات را در قسمت Mnemonic به بیت ها تبدیل می کنید ، قسمت آنتروپی و قسمت چک را تعیین می کنید و بررسی می کنید که آیا چک شما از آنتروپی با چک در Mnemonic مطابقت دارد یا خیر.

یک جمله Mnemonic با استفاده از آنتروپی به علاوه چک ساخته شده است.

هشدار: با تولید تصادفی 12-24 کلمه ، یک جمله mnemonic ایجاد نکنید. اگر فقط به طور تصادفی 12-24 کلمه را از WordList انتخاب کنید ، آخرین کلمه ای که انتخاب می کنید احتمالاً شامل چک صحیح برای بقیه کلمات نیست. بنابراین ، هنگامی که شما سعی می کنید آن را به کیف پول وارد کنید ، ممکن است به شما بگوید که نامعتبر است.

bip39 wordlist

کلمات در یک جمله mnemonic از لیست ثابت 2048 کلمه (مشخص شده توسط BIP39) تهیه شده است. 4 حرف اول هر کلمه در لیست بی نظیر است.

ثبت دیدگاه

مجموع دیدگاهها : 0در انتظار بررسی : 0انتشار یافته : ۰
قوانین ارسال دیدگاه
  • دیدگاه های ارسال شده توسط شما، پس از تایید توسط تیم مدیریت در وب منتشر خواهد شد.
  • پیام هایی که حاوی تهمت یا افترا باشد منتشر نخواهد شد.
  • پیام هایی که به غیر از زبان فارسی یا غیر مرتبط باشد منتشر نخواهد شد.