کلید خصوصی رمزارز (Private key cryptocurrency )

نسخهٔ تاریخ ‏۲۴ سپتامبر ۲۰۲۱، ساعت ۱۷:۳۸ توسط Wikibadmin (بحث | مشارکت‌ها)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)

مفهوم:

والد:

بعد:

فرزند:


لید

در رمزنگاری متقارن، فرستنده و گیرنده از کلید امنیتی مشابه و الگوریتم رمزنگاری مشابه برای رمزگذاری و رمزگشایی داده ها استفاده می کنند. رمزنگاری نامتقارن یا رمزنگاری کلید عمومی(PKC[۱]) حالتی از رمزگذاری است که در آن کلیدها به صورت جفت آمده و هر طرف تجاری باید کلید خصوصی و عمومی خود را داشته باشد. کلید عمومی تنها می تواند برای رمزگذاری داده ها مورد استفاده قرار گیرد بنابراین شما می توانید آن کلید را به هر فردی که مایل باشید ارسال کنید. آن فرد داده ها را با استفاده از کلید، رمزگذاری کرده و آن را به شما ارسال می کند. اگر کلید خصوصی را در اختیار دارید، آنگاه قادر به رمزگشایی داده ها خواهید بود. مالکیت و کنترل بر روی کلید خصوصی، ریشه کنترل کاربر بر روی همه وجوه مربوط به آدرس بیت کوین مربوطه می باشد و اگر این کلید از دست برود، قابل بازیابی نبوده و وجوه ایمن شده توسط آن نیز برای همیشه از دست خواهند رفت.

تعریف به حد

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

وجوه افتراق یا شقوق مختلف

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

فهرست مطالب

زمینه[ویرایش | ویرایش مبدأ]

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

Private key cryptocurrency.jpg

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

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

درک مفهوم کلید خصوصی[ویرایش | ویرایش مبدأ]

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

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

کیف پول دیجیتال، کلید خصوصی هر کاربر را ذخیره می کند. وقتی که تراکنشی انجام می شود، نرم افزار کیف پول، امضاء دیجیتالی را به وسیله پردازش تراکنش با کلید خصوصی خلق می کند. این امر، سیستم امنی را آپلود می کند زیرا تنها راه ایجاد امضاء معتبر برای هر تراکنش آن است که از کلید خصوصی استفاده شود. امضاء مذکور برای تایید این موضوع مورد استفاده قرار می گیرد که تراکنش از یک کاربر خاص نشات گرفته و اطمینان می دهد که تراکنش هنگام  انتشار نمی تواند تغییر کند. اگر تراکنش حتی به میزان جزئی تغییر کند، امضاء نیز تغییر خواهد کرد.

اگر کلید خصوصی کاربر مفقود شود، او هرگز دیگر دسترسی به کیف پول خود برای خرج کردن، برداشت وجه یا انتقال سکه ها (کوین ها) نخواهد داشت. بنابراین حفظ کلید خصوصی در یک محل امن، الزامی است. راه های زیادی وجود دارند که کیف پول دیجیتال حاوی کلید خصوصی قابل ذخیره می باشد. کلیدهای خصوصی می توانند بر روی کیف پول های کاغذی ذخیره شده و همان اسنادی هستند که با کلید خصوصی چاپ شده و کد QR بر روی آن ها قرار می گیرد تا در زمانی که تراکنش نیاز به امضاء داشته باشد، به آسانی قابل اسکن باشد.

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

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

تولید کلید خصوصی از یک عدد تصادفی[ویرایش | ویرایش مبدأ]

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

کلید خصوصی به درستی می تواند عددی بین 1 و n-1 باشد جایی که n (n=1.158*1077 تا اندازه ای کمتر از 2256 باشد) ثابت بوده و به عنوان ترتیب منحنی بیضوی در بیت کوین مورد استفاده قرار می گیرد. برای خلق چنین کلیدی، یک عدد 256 بیتی را به طور تصادفی برداشته و بررسی می کنیم که آیا کمتر از یک است یا خیر. در اصطلاح برنامه نویسی، این موضوع معمولا با تغذیه رشته وسیع تری از بیت های تصادفی، قابل دستیابی است و از منبع امن رمزنگاری شده تصادفی با الگوریتم هش SHA256 جمع آوری شده و به راحتی یک عدد 256 بیتی را تولید می کنند. اگر نتیجه کمتر از n-1 باشد، کلید خصوصی مناسب را خواهیم داشت. در غیر اینصورت، به راحتی با یک عدد تصادفی دیگر مجددا تلاش خواهیم کرد.

بازیابی کلید خصوصی[ویرایش | ویرایش مبدأ]

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

مطابق برنامه تسهیم امنیت شامیر( SSS[۲])، داده D به  n قطعه تقسیم شده و تعداد k قطعه از داده D می تواند داده D را بازسازی کند اما حتی تعداد k-1 قطعه نیز هیچ اطلاعاتی در خصوص D را آشکار نمی کند. مالکان با استفاده از این روش، راز یا اسم خود را به n قطعه تقسیم نموده و آن ها را به n محل مختلف توزیع می کنند. حتی اگر برخی قطعات از دست بروند، هر k  قطعه برای بازیابی راز یا اسم مالک، کافی خواهد بود. برنامه تسهیم امنیت شامیر(SSS) برای بازیابی کلید خصوصی می تواند بکار گرفته شود. بازیگرانی به نام پیشکار در سیستم های هویت دیجیتالی توزیع شده وجود دارند و خدمات پیشکار می تواند به عنوان محل قرارگرفتن  قطعات توزیع شده تلقی شود. ما در این رویکرد و در ابتدا یک کلید متقارن را با استفاده از داده های انگشت نگاری شده مالک خلق کرده و کلید خصوصی را همراه با کلید متقارن رمزنگاری می کنیم. بعد از اتمام فرآیند رمزنگاری، ستانده رمزنگاری شده به n قطعه تقسیم بندی می شود و هر یک از قطعات به مکان های متفاوت و امن نظیر خدمات پیشکار توزیع می شود. هر k قطعه از n قطعه کافی خواهد بود تا کلید خصوصی رمزنگاری شده را بازیابی کند. بعد از آنکه کلید خصوصی رمزنگاری شده بازیابی شد، کلید متقارن مشابه، مجددا با استفاده از اثرانگشت تولید شده و برای رمزگشایی کلید خصوصی رمزنگاری شده مورد استفاده قرار می-گیرد. گام های این فرآیند در نمودار 2 مشخص شده است.

Private key cryptocurrency 2.jpg

جستارهای وابسته

پانویس/ پاورقی

  1. public key cryptography
  2. Shamir’s Secret Sharing

منابع

  • Furneaux, N. (2018). Investigating cryptocurrencies: understanding, extracting, and analyzing blockchain evidence. John Wiley & Sons.
  • Antonopoulos, A. M. (2014). Mastering Bitcoin: unlocking digital cryptocurrencies. " O'Reilly Media, Inc.".
  • https://www.investopedia.com/terms/p/private-key.asp#:~:text=What%20Is%20a%20Private%20Key,and%20unauthorized%20access%20to%20funds.
  • Aydar, M., Cetin, S. C., Ayvaz, S., & Aygun, B. (2019). Private key encryption and recovery in blockchain. arXiv preprint arXiv:1907.04156.

پیوند به بیرون

الگوهای ناوبری

رده