آموزش ترید و تحلیل تکنیکال - مرکز تحقیقات بلاک چین

روش تولید و نگهداری کلید خصوصی بیت کوین چگونه است؟

روش تولید و نگهداری کلید خصوصی بیت کوین چگونه است؟

 

حتما بارها این جمله را شنیده اید که "یک کیف پول سخت یا نرم افزاری خیلی امنه"، اما واقعا «امنیت» در اینجا چه مفهومی دارد؟ برای درک این موضوع باید کمی به عقب برگردیم، یعنی حتی قبل از تولید کلیدخصوصی و آدرس بیت کوین.


کلید خصوصی چیست؟


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

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

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

حال فرض کنید شما قصد دارید تا یک کیف‌پول بیت کوین درست کنید. سوال اساسی این است که چگونه کلید خصوصی بیت کوین خود را انتخاب می‌کنید؟

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

خوشبختانه نیازی نیست که خودتان برای تعیین کلید خصوصی اقدام کنید چون تولید آن توسط کامپیوتر و به راحتی انجام می‌شود. به عنوان مثال در عبارت زیر یک کلیدخصوصی بیت کوین را مشاهده می‌کنید:

39BD194E3B989D612E6EDBF48BAE130D3FF32F298E98ECD298282AC3

 


آیا می‌توان این کلید خصوصی را حفظ کرد؟


آیا می‌توان این کلید خصوصی را حفظ کرد؟

 

برای پاسخ به این سوال راهکارهای مختلفی پیشنهاد شده است. یکی از راه کارها این است که کلید خصوصی بیت کوین را به تعدادی کلمه تبدیل کنیم که به خاطر سپردن آن آسان‌تر باشد. این کلمات مجموعه‌ای از ۲۰۴۸ کلمه منحصربفرد هستند که لیست آن‌ها در پروتکل‌‌های داخل شبکه بیت کوین تعریف شده و کامپیوتر شما با یک روش مشخص کل رمز یا همان کلید خصوصی شما را به  ۲۴(یا گاهی ۱۲) کلمه تبدیل می کند. احتمالا باید فهمیده باشید که چرا هر کیف پولی که بر روی گوشی یا کامپیوترتان نصب می‌کنید به شما چند کلمه نشان می‌دهد و از شما می‌خواهد که حتما آن‌ها را در جایی مطمعن نگهداری کنید. به عنوان نمونه کلمات متناظر با کلید خصوصی ۶۴ کاراکتری ما در زیر نمایش داده شده است:

defy trip fatal jaguar mean rack rifle survey satisfy drift twist champion steel wife state furnace night consider glove olympic oblige donor novel left

 

این ۲۴ کلمه، کلمات متناظر کلید خصوصی ۶۴ کاراکتری هستند که در بالا به آن اشاره کردیم. در واقع این کلمات همان حروف و اعداد موجود در کلید خصوصی کیف پول شما هستند و فقط برای اینکه کاربران بتوانند راحت‌تر آن‌ها را یادداشت کنند، تبدیل به کلمات قابل فهم شده‌اند. سوال مهمی که اینجا مطرح می‌شود این است که اگر کلید خصوصی ما را کامپیوترها تعیین می‌کنند، از کجا معلوم که کلید خصوصی ۲ نفر یکسان انتخاب نشود؟

به زبان ساده باید گفت که داخل تمامی سیستم عامل‌ها (ویندوز مکینتاش و لینوکس)، یک منبع تولید بی‌نظمی درنظر گرفته شده و هر زمان که ما از سیستم‌عامل درخواست یک عدد تصادفی می‌کنیم، سیستم‌عامل با استفاده از آن بی‌نظمی مقداری را برمی‌گرداند. ممکن است که این سوال برای شما ایجاد شود که سیستم‌عامل درعمل چطورمی‌تواند این اعداد تصادفی را بوجود آورذ؟ به عبارت دیگر آن‌ها چطور «بی‌نظمی« تولید می‌کنند؟ پاسخ این سوال به منابع تولید بی‌نظمی که ساده‌ترین آن‌ها ۱-فاصله‌های زمانی فشردن کلیدهای کیبورد و ۲-حرکت‌های نشانگر موس بر روی صفحه، مربوط است. در واقع شما با استفاده از کیبورد و موس کامپیوتر خود به سیستم عامل کمک می‌کنید تا برای شما بی‌نظمی تولید کند و درنهایت از این داده‌های تصادفی برای تولید «کلید خصوصی بیت کوین» شما استفاده خواهد کرد. اگر دقت کرده باشید بعضی از سایت‌هایی که آدرس بیت کوین تولید می‌کنند از شما می‌خواهند که نشانگر موستان را به مقدار معینی روی صفحه حرکت دهید تا کلید خصوصی و آدرس شما تولید شود.

 


چگونه می‌توان از تصادفی بودن کلید خصوصی که والت کامپیوتر/موبایل/سخت‌افزاری شما تولید کرده اطمینان حاصل کرد؟


چگونه می‌توان از تصادفی بودن کلید خصوصی که والت کامپیوتر/موبایل/سخت‌افزاری شما تولید کرده اطمینان حاصل کرد؟

 

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

 


چگونه یک کلید خصوصی با امنیت بالا تولید کنیم؟


چگونه یک کلید خصوصی با امنیت بالا تولید کنیم؟

 

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

 


روش تولید کلید خصوصی با استفاده از تاس چیست؟


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

https://github.com/GlacierProtocol/GlacierProtocol

 https://github.com/bitcoinfromscratch/bfs-dice

اگر با مفاهیم کلید خصوصی و نحوه ساخت آن کاملا آشنا نیستید، فقط برای آموزش و یادگیری از این ابزارها استفاده کنید. درغیر این صورت احتمال از دست دادن بیت کوین‌های شما افزایش می‌یابد.

 

 بیشتر بخوانید:

بیت کوین چیست؟ همه چیز درمورد بیت کوین + ویدیو 

ETF بیت کوین چیست

هاوینگ (Halving) یا نصف شدن پاداش استخراج بیت کوین چیست؟

بیت کوین چگونه کار می کند؟ + ویدیو

استخراج بیت کوین چگونه انجام می شود؟


منبع: مرکز تحقیقات بلاکچین


آموزش صفر تا صد ترید و تحلیل تکنیکال ارزهای دیجیتال، بورس و فارکس

درباره ما

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


ادامه درباره ما

 

ارتباط با پشتیبانی در تلگرام bircsupport1@

کانال تلگرام مرکز تحقیقات بلاکچین