کلید عمومی (Public Key) چیست؟ توضیح کامل در رمزنگاری و بلاکچین + تفاوت با کلید خصوصی

اگر وارد دنیای ارزهای دیجیتال شدهاید، حتماً با اصطلاح “کلید عمومی” یا Public Key برخورد کردهاید.
کلید عمومی بخشی کلیدی از رمزنگاری نامتقارن است که امنیت تراکنشهای بلاکچین را تضمین میکند.
این کلید یک رشته طولانی از اعداد و حروف است که برای رمزگذاری دادهها و تولید آدرس ولت استفاده میشود، بدون اینکه کلید خصوصی (که مخفی است) را افشا کند.
تفاوت اصلی با کلید خصوصی این است که Public Key عمومی و قابل اشتراکگذاری است، در حالی که Private Key باید کاملاً محرمانه بماند.
در بلاکچین، کلید عمومی اجازه دریافت ارز (مانند بیتکوین) را میدهد، اما فقط کلید خصوصی میتواند تراکنشها را امضا کند و وجوه را خرج کند.
این سیستم بدون نیاز به واسطههایی مثل بانک، امنیت را فراهم میکند.
در این مقاله، چیستی Public Key را توضیح میدهیم، نحوه کار آن در رمزنگاری و بلاکچین، تفاوت با Private Key، و کاربردها در ۲۰۲۵ را بررسی میکنیم.
اگر مبتدی هستید، این پست گامبهگام شما را راهنمایی میکند.
کلید عمومی (Public Key) چیست؟
کلید عمومی یک کد رمزنگاریشده از اعداد و حروف (معمولاً ۶۵ بایت در سیستمهای Elliptic Curve) است که در رمزنگاری نامتقارن برای Encrypt پیامها یا Verify امضاهای دیجیتال استفاده میشود.
این کلید عمومی است و میتواند با هر کسی به اشتراک گذاشته شود، بدون ریسک افشای اطلاعات حساس.
در ارز دیجیتال، Public Key از Private Key مشتق میشود، اما برعکس آن ممکن نیست — این امنیت بر اساس سختی محاسباتی (مثل مسئله Logarithm گسسته) است.
برای مثال، در بیتکوین، Public Key برای تولید آدرس ولت (مانند:bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq
) استفاده میشود که دیگران برای ارسال ارز به آن نیاز دارند.
تاریخچه: مفهوم Public Key در دهه ۱۹۷۰ توسط Whitfield Diffie و Martin Hellman معرفی شد و بعداً با الگوریتم RSA تکمیل شد.
در بلاکچین، ساتوشی ناکاموتو آن را برای بیتکوین در سال ۲۰۰۸ به کار برد.
تفاوت کلید عمومی با کلید خصوصی
کلید عمومی و خصوصی جفتی هستند در رمزنگاری نامتقارن:
-
کلید عمومی (Public Key): عمومی، برای Encrypt دادهها یا Verify امضا. هر کسی میتواند از آن استفاده کند.
-
کلید خصوصی (Private Key): مخفی، برای Decrypt دادهها یا Sign تراکنش. فقط صاحب آن دسترسی دارد.
در بلاکچین:
-
Public Key → دریافت ارز (تولید آدرس).
-
Private Key → خرج ارز (امضای تراکنش).
جدول مقایسه:
ویژگی | کلید عمومی | کلید خصوصی |
---|---|---|
دسترسی | عمومی و قابل اشتراک | مخفی و شخصی |
کاربرد اصلی | رمزگذاری پیام، تولید آدرس والت، Verify امضا | رمزگشایی پیام، امضای تراکنش |
امنیت | افشا بیخطر | افشا = از دست دادن وجوه |
مثال در بیتکوین | 02bd… (hex) | WIF Format، مخفی |
⚠️ اگر کلید خصوصی لو برود، هکر میتواند وجوه را بدزدد. اما Public Key حتی در صورت افشا، امن است.
(لینک داخلی: برای جزئیات بیشتر، به پست “کلید خصوصی چیست” مراجعه کنید.)
نحوه کار کلید عمومی در بلاکچین و رمزنگاری
در رمزنگاری نامتقارن (Asymmetric Cryptography)، کلیدها با الگوریتمهایی مثل ECDSA (برای بیتکوین) یا EdDSA تولید میشوند.
فرآیند:
-
تولید جفت کلید: کاربر Private Key تصادفی تولید میکند، سپس Public Key را از آن مشتق میگیرد.
-
رمزگذاری: فرستنده با Public Key گیرنده، پیام را Encrypt میکند.
-
رمزگشایی: گیرنده با Private Key، Decrypt میکند.
-
امضا دیجیتال: فرستنده با Private Key امضا میکند، گیرنده با Public Key Verify میکند.
در بلاکچین: وقتی تراکنشی ارسال میکنید، Private Key آن را Sign میکند تا ثابت شود مالک هستید. نودها با Public Key تراکنش را Verify میکنند.
مثال: ارسال ۰.۱ بیتکوین — آدرس (از Public Key) دریافتکننده عمومی است.
در ۲۰۲۵: با پیشرفت کوانتوم، الگوریتمهای مقاوم مثل Lattice-based در حال آزمایش هستند تا حملات کوانتومی را خنثی کنند.
کاربردهای کلید عمومی در ارز دیجیتال و فراتر از آن
-
دریافت ارز: آدرس ولت از Public Key Hash شده تولید میشود (مثل P2PKH در بیتکوین).
-
امنیت تراکنش: Verify مالکیت بدون افشای Private Key.
-
خارج از کریپتو: SSL/TLS برای وبسایتها (https)، امضای ایمیل (PGP)، و حتی در NFTها برای تأیید مالکیت.
ریسکها:
-
افشای Public Key بیخطر است.
-
اما حمله ۵۱% یا Quantum Computing میتواند تهدید باشد.
💡 نکته: همیشه از ولتهای سختافزاری برای حفاظت Private Key استفاده کنید.
مثال عملی: استفاده از Public Key در ولت بیتکوین
فرض کنید میخواهید بیتکوین دریافت کنید:
-
ولت (مثل Electrum) جفت کلید تولید میکند.
-
Public Key:
02bd71...
(hex). -
آدرس:
bc1q...
(base58 یا bech32). -
دوستتان با این آدرس ارسال میکند.
-
برای خرج، Private Key تراکنش را Sign میکند.
در اتریوم، Public Key برای قراردادهای هوشمند هم استفاده میشود.
نتیجهگیری
کلید عمومی پایه امنیت بلاکچین است که بدون افشای اطلاعات حساس، تراکنشهای امن را ممکن میکند.
با درک تفاوت آن با کلید خصوصی، میتوانید ایمنتر در دنیای کریپتو فعالیت کنید.
در ۲۰۲۵، با رشد DeFi و NFT، اهمیت Public Key بیشتر میشود.
💬 حالا نوبت شماست: تجربهتان از ولتها را در کامنتها بنویسید یا به دوره آکادمی بپیوندید!
FAQ (سؤالات متداول)
❓ کلید عمومی چیست؟
✅ کد عمومی برای رمزگذاری و Verify در رمزنگاری نامتقارن، که در بلاکچین برای دریافت ارز استفاده میشود.
❓ تفاوت کلید عمومی و خصوصی چیست؟
✅ عمومی برای Encrypt/Verify، خصوصی برای Decrypt/Sign — عمومی ایمن برای اشتراک، خصوصی محرمانه.
❓ آیا کلید عمومی امن است؟
✅ بله، افشای آن بیخطر است. اما Private Key را هرگز به اشتراک نگذارید.
❓ کاربرد Public Key در بلاکچین چطور است؟
✅ تولید آدرس ولت و Verify تراکنشها، بدون نیاز به واسطه.
دیدگاهتان را بنویسید