آیا تراکنش محرمانه همان تراکنش ناشناس است؟
آیا تراکنش محرمانه همان تراکنش ناشناس است؟
خیر. CT بهطور معمول مبلغ را میپوشاند و در بعضی شبکهها نوع دارایی را نیز مخفی میکند، اما ناشناسکردن فرستنده و گیرنده نیازمند سازوکارهای دیگری است.
تراکنش محرمانه در بلاکچین (Confidential Transaction یا CT) روشی رمزنگاری است که اجازه میدهد شبکه، درستی یک انتقال را بررسی کند، بیآنکه لازم باشد مبلغ دقیق آن برای همه کاربران آشکار باشد. در بعضی پیادهسازیها، مانند شبکه Liquid، نوع دارایی منتقلشده نیز مخفی میشود. این قابلیت برای کسبوکارهایی که نمیخواهند حجم پرداخت یا جزئیات داراییشان در دفترکل عمومی افشا شود، و برای افرادی که به محرمانگی مالی اهمیت میدهند، کاربرد دارد.
بااینحال یک مرز بسیار مهم وجود دارد: CT بهتنهایی فرستنده و گیرنده را کاملاً ناشناس نمیکند. در Liquid، آدرسها، پیوند ورودیها و خروجیها، زمان ثبت و کارمزد همچنان در اطلاعات زنجیرهای قابل مشاهدهاند. پس اگر شخصی از روی اطلاعات بیرونی صاحب یک آدرس را بشناسد، پنهانبودن مبلغ لزوماً جلوی تحلیل سایر ارتباطات او را نمیگیرد. در این مقاله سازوکار فنی CT را با مثال توضیح میدهیم، آن را با تراکنش عادی و RingCT مقایسه میکنیم و مزایا، محدودیتها و نکات کاربردی را مرور میکنیم.
در تراکنش معمول بیتکوین، مقدار هر خروجی بخشی از دادههای عمومی تراکنش است. هر کسی که به یک کاوشگر بلاکچین دسترسی داشته باشد میتواند مبلغ، ورودیها، خروجیها و مسیر حرکت دارایی را مشاهده کند؛ هرچند نام واقعی صاحبان آدرسها الزاماً در زنجیره نوشته نشده است. CT با جایگزینکردن مقدار آشکار با یک تعهد رمزنگاری این وضعیت را تغییر میدهد. تعهد شبیه جعبهای مهرومومشده است: همه میتوانند اعتبار برخی ویژگیهای آن را بسنجند، ولی محتوا را بدون اطلاعات لازم نمیبینند.
مرز این پنهانسازی به شبکه و پروتکل بستگی دارد. در پیادهسازی Liquid، مقدار و نوع دارایی هر خروجی محرمانهاند؛ در عوض آدرسهای مورد استفاده، ساختار اتصال تراکنشها، تعداد ورودی و خروجی و کارمزد آشکار باقی میمانند. به همین دلیل بهتر است به جای اصطلاح مبهم «تراکنش کاملاً ناشناس»، عبارت دقیقتر «تراکنش با مبلغ و نوع دارایی پوشیده» را به کار ببریم.
محرمانگی یعنی دسترسی به یک داده خاص، مانند مبلغ، محدود شود. ناشناسبودن به دشوارشدن شناسایی هویت یا ارتباط اشخاص اشاره دارد. امنیت تراکنش نیز یعنی کسی نتواند بدون مجوز دارایی را خرج کند یا قواعد اعتبارسنجی را دور بزند. یک سامانه میتواند محرمانگی مبلغ خوبی داشته باشد ولی هویت کاربر هنگام واریز به یک خدمت دارای احراز هویت مشخص باشد. همچنین محرمانگی باعث نمیشود امضای اشتباه یا سرقت کلید خصوصی بیخطر شود.
در شبکهای عمومی، شرکتکنندگان میخواهند بدون اعتماد به یک حسابدار مرکزی بفهمند ورودیها از پیش خرج نشدهاند، پرداختکننده حق خرجکردن دارد و دارایی جدید بهشکل نامعتبر ساخته نشده است. عمومیبودن مبلغ سادهترین راه کنترل برابری مجموع ورودیها و خروجیها در مدل UTXO است. اما همین شفافیت ممکن است برای حقوقبگیران، خیریهها، شرکتهای تجاری و اشخاصی با پرداختهای حساس، اطلاعات ناخواسته آشکار کند.
مثلاً اگر شرکت الف دستمزد پیمانکار خود را از آدرسی مشخص بپردازد، مشاهدهکننده میتواند در تراکنش عادی مبلغ را ببیند و شاید از کنار هم قرار دادن اطلاعات بیرونی، تخمینی از رابطه مالی طرفین بسازد. CT کوشش میکند اعتبارسنجی عمومی را از افشای مقدار جدا کند؛ نه اینکه دفترکل را به یک سامانه غیرقابل حسابرسی تبدیل کند.
سه جزء درک این فناوری را آسانتر میکند: تعهد پدرسن برای پوشاندن مقدار، اثبات بازه برای جلوگیری از عدد نامعتبر و در شبکههای چنددارایی، اثباتی برای درستبودن نوع دارایی. در کنار اینها، کلیدهای کورکننده به طرفهای مجاز امکان میدهند مقدار واقعی را بازیابی کنند.
در یک صورتبندی رایج، تعهد پدرسن را میتوان به شکل C = vH + rG نوشت؛ در آن v مقدار دارایی، r عامل تصادفی کورکننده و G و H نقاط مبنا روی منحنی بیضویاند. مشاهدهکننده از روی C نمیتواند مبلغ را بهسادگی به دست آورد، ولی خاصیت جمعپذیری تعهدها امکان میدهد شبکه برابری ارزش ورودیها و خروجیها را با لحاظ کارمزد بررسی کند.
این یک هش معمولی نیست. در نوشتههای قدیمی گاهی تعهد پدرسن با «هش مبلغ و کلید کورکننده» یکی معرفی میشد؛ آن مثال شاید مفهوم مهرومومکردن داده را ساده کند، اما خاصیت جبری لازم برای جمعکردن مقادیر پنهان را توضیح نمیدهد. آنچه CT را عملی میکند، همین ویژگی تعهد جمعپذیر در کنار سایر اثباتهاست.
اگر شبکه فقط برابری تعهدها را بسنجد، یک تراکنش دستکاریشده میتواند از ویژگیهای محاسبات پیمانهای سوءاستفاده کند و مبلغ نامعتبر یا منفی را درون تعهد پنهان نگه دارد. اثبات بازه یا Range Proof اجازه میدهد شبکه مطمئن شود مقدار خروجی در محدوده مجاز قرار دارد، بیآنکه عدد دقیق را بفهمد. مستندات Liquid از Bulletproofs برای ارائه این نوع اثبات فشرده یاد میکنند.
اثبات بازه مقدار را لو نمیدهد؛ فقط گزارهای درباره معتبر بودن آن را تأیید میکند. به همین دلیل، مشاهدهکننده برای اعتبارسنجی به دانستن اینکه مبلغ «مثلاً ۰٫۷۵ واحد» بوده نیاز ندارد. نباید Bulletproofs را مترادف تمام انواع اثبات دانش صفر دانست؛ اینجا از آن برای مسئله خاص بازه مبلغ استفاده میشود.
وقتی یک شبکه فقط یک نوع دارایی دارد، بررسی برابری مبلغ سادهتر است. در محیط چنددارایی Liquid، نوع توکن هم ممکن است مخفی شود. بنابراین علاوه بر تعهد مبلغ، از تعهد نوع دارایی و Asset Surjection Proof استفاده میشود تا خروجی نتواند بدون مجوز نوعی دارایی بسازد که در ورودی وجود نداشته است. نتیجه: راستیآزمایی همزمان مقدار معتبر و هویت مجاز دارایی بدون نیاز به افشای آنها.
کلید خرجکردن به مالک اجازه میدهد تراکنش را امضا کند؛ کلید کورکننده یا اطلاعات مرتبط با آن، برای مشاهده و بازیابی مبلغ و نوع دارایی پنهانشده استفاده میشود. این دو وظیفه یکسان ندارند. ممکن است حسابرس با دریافت اطلاعات مجازِ رفع کورسازی بتواند جزئیات یک تراکنش را ببیند، بدون آنکه لزوماً اختیار خرجکردن آن خروجی را داشته باشد.
در آدرس محرمانه Liquid، اطلاعات لازم برای کورسازی از جمله کلید عمومی کورکننده گیرنده در قالب آدرس گنجانده میشود. فرستنده به کمک آن اطلاعات انتقال را بهگونهای میسازد که گیرنده بتواند با کلید متناظر، مبلغ و نوع دارایی را آشکار کند. جزئیات تهیه نسخه پشتیبان و بازیابی این کلیدها به پیادهسازی کیف پول بستگی دارد؛ نباید تصور کرد هر آدرس طولانی لزوماً در هر شبکه یک آدرس محرمانه معتبر است.
محرمانگی به این معنی نیست که جزئیات تراکنش برای همیشه از همه پنهان بمانند. شرکت یا فرد میتواند در شرایط مناسب و با ابزار معتبر، اطلاعات لازم برای مشاهده همان تراکنش را به حسابرس یا طرف قرارداد ارائه کند. این کار باید آگاهانه باشد: بهاشتراکگذاری یک کلید یا داده دیداری ممکن است بسته به دامنه آن، دسترسی بیشتری از یک تراکنش ایجاد کند. بنابراین لازم است نوع کلید، دامنه مجوز و روش افشا پیش از ارسال مشخص باشد.
فرض کنیم سارا میخواهد روی شبکهای با پشتیبانی CT مبلغی به نیما بپردازد. در تراکنش عادی، مشاهدهکننده خارجی مقدار خروجی را مستقیماً میبیند. در تراکنش محرمانه، کیف پول سارا از آدرس محرمانهای که نیما ارائه کرده استفاده میکند؛ خروجی دارای تعهد مبلغ، اطلاعات کورسازی مناسب و اثباتهای اعتبارسنجی است. نیما با اطلاعات کیف پول خودش مقدار دریافتی را مشاهده میکند.
ناظران شبکه میتوانند اعتبار ساختار و تعادل تراکنش را بررسی کنند؛ ولی مقدار دقیق و، در پیادهسازی چنددارایی مانند Liquid، نوع دارایی خروجی برایشان آشکار نیست. بااینحال هنوز ممکن است آدرسها، ارتباط ورودی و خروجی، کارمزد و زمان ثبت تراکنش را ببینند. بنابراین اگر سارا از قبل با یک آدرس عمومی شناخته شده باشد، CT بهتنهایی همه ارتباطات او را پاک نمیکند.
در خرید بیتکوین و انتقال روی شبکه اصلی BTC، دادههای تراکنش مطابق قواعد همان شبکه ثبت میشوند؛ قابلیت CT که در این مقاله توضیح میدهیم بهصورت پیشفرض در شبکه اصلی بیتکوین وجود ندارد. Liquid یک شبکه جداگانه با مدل امنیت و داراییهای خاص خود است که از فناوری Elements بهره میبرد. نباید آدرس یا موجودی این دو شبکه را بهجای هم به کار برد.
| ویژگی | انتقال عادی روی بیتکوین | انتقال محرمانه در Liquid |
|---|---|---|
| مبلغ خروجی | عموماً آشکار | برای ناظر بیرونی پنهان |
| نوع دارایی | BTC بومی شبکه | برای خروجی محرمانه قابل پوشاندن |
| آدرسها و ساختار تراکنش | داده عمومی | همچنان قابل مشاهده |
| کارمزد | قابل بررسی | قابل بررسی؛ در Liquid با LBTC |
| اثبات درستی مقدار | کنترل مقادیر آشکار | تعهد و اثبات رمزنگاری |
| شبکه و دارایی | BTC روی شبکه بیتکوین | LBTC و داراییهای صادرشده روی Liquid |
| ناشناسبودن کامل | خیر | خیر؛ CT کافی نیست |
این جدول به معنی بهتر بودن مطلق یک شبکه نیست. انتخاب شبکه بر امنیت مدل اجماع، نقدشوندگی دارایی، امکانات کیف پول، سازگاری مقصد، هزینه واقعی و ریسکهای عملیاتی اثر دارد. قیمت بیتکوین نیز موضوعی جدا از قابلیت محرمانهبودن انتقال است و نمیتوان از وجود CT نتیجهای درباره بازده سرمایهگذاری گرفت.
نماد یکسان به معنی شبکه یکسان نیست. داراییهایی که در Liquid منتشر میشوند شناسه و مسیر انتقال مخصوص همان شبکه را دارند. کسی که صرفاً عبارت «USDT» را میبیند نباید فرض کند میتواند آن را به آدرس شبکه دیگری بفرستد. پیش از انتقال، شبکه مقصد، شناسه دارایی و پشتیبانی واقعی کیف پول و دریافتکننده باید کنترل شود. برای مشاهده مفاهیم پایه خرید تتر و قیمت تتر نیز توجه کنید که این صفحات، پشتیبانی عملی از نسخه Liquid را تضمین نمیکنند.

RingCT یا «تراکنش محرمانه حلقهای» نام سازوکاری است که در شبکه مونرو برای پنهانکردن مبلغ استفاده میشود. اما حریم خصوصی مونرو فقط حاصل RingCT نیست؛ مستندات رسمی آن، سه فناوری مکمل را توضیح میدهند: امضاهای حلقهای برای ابهام درباره فرستنده، RingCT برای مخفیکردن مبلغ و آدرسهای پنهان (Stealth Addresses) برای پنهانکردن گیرنده. در نتیجه، مقایسه منصفانه نباید تمام قابلیتهای مونرو را به CT معمولی نسبت دهد.
از سوی دیگر، حتی ترکیب چند ابزار محرمانگی نیز مصونیت مطلق ایجاد نمیکند: افشای اطلاعات هویتی بیرون زنجیره، بدافزار روی دستگاه، دادن داده دیداری به شخص نامناسب یا استفاده نادرست از کیف پول میتواند به افشای اطلاعات منجر شود. فناوری خصوصی، جایگزین امنیت دستگاه و انتخاب درست سرویس نیست.
در دفترکل عمومی، مشاهده مبالغ میتواند اطلاعات مربوط به دستمزدها، اندازه قراردادها و جریان مالی یک مجموعه را آشکار کند. CT خطر افشای مستقیم مبلغ را کاهش میدهد. این مزیت در معاملات تجاری و پرداختهایی که طرفین نمیخواهند اندازه رابطه مالیشان برای عموم روشن باشد، معنای عملی دارد؛ البته اطلاعات بیرون زنجیره همچنان میتوانند بخشی از تصویر را بسازند.
مزیت فنی برجسته CT این است که همه ناظران برای کنترل درستبودن تراکنش، لازم نیست عدد پرداخت را ببینند. ترکیب تعهدها و اثباتها به شبکه اجازه میدهد قواعد موردنیاز را بررسی کند. این موضوع با روش ساده «مخفیکردن اطلاعات از کاوشگر» متفاوت است، چون تغییر در لایه خود تراکنش و اعتبارسنجی اتفاق میافتد.
یک مجموعه میتواند بهجای عمومیکردن همه صورتحسابها، دادههای لازم را برای بررسی مشخص در اختیار فرد مجاز قرار دهد. البته این ظرفیت به ابزارها و مدیریت درست کلید وابسته است و به معنای اینکه همه شبکههای CT قابلیت حسابرسی یکسانی دارند نیست.
زمان تراکنش، آدرسهای آشکار، تعداد ورودی و خروجی و پیوندهای گراف تراکنش ممکن است باقی بمانند. اگر آدرس به هویت واقعی وصل شود، ناظر هنوز بخشی از مسیر دارایی را ردیابی میکند. در نتیجه نباید محرمانگی مبلغ را به «ردیابیناپذیری مطلق» ترجمه کرد.
تعهدها و اثباتها به داده و پردازش بیشتری نسبت به نگارش ساده یک عدد نیاز دارند. فناوریهایی مانند Bulletproofs برای کاهش سربار توسعه یافتهاند، ولی هزینه نهایی تابع شبکه و نوع پیادهسازی است. نمیتوان بدون اندازهگیری واقعی گفت هر تراکنش CT همیشه چند برابر یک انتقال استاندارد فضا اشغال میکند.
داشتن ارز دیجیتال در کیف پول لزوماً به معنای پشتیبانی از آدرس محرمانه، کلید کورکننده یا ساخت خروجی CT نیست. همچنین برخی خدمات ممکن است برای نوع خاصی از آدرس، محدودیت واریز یا برداشت داشته باشند. پیش از استفاده، لازم است شبکه دقیق و سازگاری هر دو طرف از اسناد همان سرویس بررسی شود.
محرمانهبودن مقدار، مسئولیت نگهداری امن کلیدها، احراز هویت نزد ارائهدهندگان مشمول مقررات یا تعهد به ارائه مدارک قانونی را حذف نمیکند. وضعیت قانونی استفاده از داراییهای محرمانه به کشور، نوع کسبوکار و مقررات روز بستگی دارد؛ هیچ حکم یکسانی برای همه کشورها یا همه کیف پولها وجود ندارد. این مقاله راهنمای دورزدن کنترلهای قانونی یا پنهانکردن فعالیت غیرقانونی نیست.
وقتی یک پروژه یا اپلیکیشن مدعی انتقال خصوصی است، پیش از اتکا به آن شش سؤال بپرسید: کدام دادهها پنهان میشوند؟ آیا آدرس و فراداده باقی میمانند؟ نودها چگونه عدم ایجاد دارایی نامعتبر را بررسی میکنند؟ دریافتکننده چطور مبلغ را بازیابی میکند؟ چه شخص یا سرویسی توان افشای جزئیات را دارد؟ و آیا کیف پول و شبکه مقصد واقعاً از آن استاندارد پشتیبانی میکنند؟
این ارزیابی مستقل از انتخاب سرویس معامله است. برای شناخت تفاوت نگهداری دارایی و عملیات معامله، مطالعه راهنمای خرید ارز دیجیتال مفید است؛ اما وجود یک دارایی در فهرست خرید به معنای پشتیبانی آن سامانه از انتقال CT نیست. هنگام بررسی محصولات، همچنین باید شبکه و شرایط همان صرافی ارز دیجیتال را در لحظه مراجعه استعلام کرد.
تراکنش محرمانه نشان میدهد «قابل بررسی بودن» لزوماً به معنای «افشای همه جزئیات» نیست. با تعهدهای رمزنگاری و اثباتهای مناسب، شبکه میتواند اعتبار مبلغ را کنترل کند در حالی که عدد واقعی برای عموم قابل مشاهده نباشد. مثال عملی Liquid همچنین روشن میکند که CT بهتنهایی همه ردپاهای تراکنش را مخفی نمیکند و در انتخاب شبکه یا کیف پول، باید ساختار امنیت، کارمزد، سازگاری و قواعد حقوقی را همزمان دید.
محتوای این مقاله صرفاً آموزشی است و توصیه خرید، فروش، استفاده از ابزارهای ناشناسسازی یا دورزدن تکالیف قانونی محسوب نمیشود. پیش از هر جابهجایی دارایی، شبکه مقصد، وضعیت پشتیبانی کیف پول و مقررات مربوط به شرایط خود را از منابع رسمی بررسی کنید.
خیر. CT بهطور معمول مبلغ را میپوشاند و در بعضی شبکهها نوع دارایی را نیز مخفی میکند، اما ناشناسکردن فرستنده و گیرنده نیازمند سازوکارهای دیگری است.
خیر، تراکنشهای استاندارد شبکه اصلی بیتکوین بهصورت پیشفرض از CT استفاده نمیکنند. فناوری آن در پروژههایی مانند Elements و شبکه جداگانه Liquid پیادهسازی شده است.
تعهد پدرسن امکان بررسی تعادل مقادیر را فراهم میکند و اثبات بازه مانع اعتبارپذیری خروجی با مبلغ خارج از محدوده میشود. در شبکه چنددارایی، اثباتهای مربوط به نوع دارایی نیز لازماند.
در Liquid کارمزد آشکار است و با LBTC پرداخت میشود. نباید ویژگی یک پیادهسازی خاص را بدون بررسی به تمام پروتکلهای محرمانگی تعمیم داد.
خیر. گیرنده آدرس و اطلاعات عمومی لازم برای ساخت خروجی محرمانه را ارائه میکند؛ کلید خرجکردن و دادههای محرمانه بازیابی را نباید به دیگری داد.
بسته به شبکه، شکل انتشار دارایی و پشتیبانی کیف پول ممکن است نسخهای از تتر روی شبکه دارای CT وجود داشته باشد. اما نسخههای تتر در شبکههای مختلف یکسان نیستند و هر انتقالی که نام USDT دارد محرمانه محسوب نمیشود.
خیر. RingCT در زمینه طراحی حریم خصوصی مونرو به کار میرود و با اجزای مکملی مانند امضای حلقهای و آدرس مخفی همراه است؛ CT در Liquid عمدتاً مقدار و نوع دارایی را پنهان میکند.
خیر. محرمانگی یک ویژگی فنی است و تضمینی برای رشد قیمت، کاهش نوسان یا حفظ سرمایه ایجاد نمیکند. برای فهم بازار باید دادههای روز قیمت ارز دیجیتال، نقدشوندگی و ریسک دارایی را جداگانه سنجید.