هر کیف پول و اپلیکیشنی که با بلاکچین صحبت میکند این کار را از طریق یک نقطه پایانی RPC انجام میدهد. این مقاله توضیح میدهد آن چیست، بدهبستانهای نقاط پایانی عمومی کداماند و چگونه یکی را بهطور امن بررسی و اضافه کنید.
نقطه پایانی RPC چیست
RPC مخفف فراخوانی رویه از راه دور (remote procedure call) است. نقطه پایانی RPC آدرس وب یک نود بلاکچین است که به پرسشها پاسخ میدهد و تراکنشها را میپذیرد. نود رایانهای است که نسخهای از زنجیره را نگه میدارد.
مثلاً نقطه پایانی میتواند به «موجودی این آدرس چقدر است؟»، «آخرین بلوک کدام است؟» یا «این تراکنش چقدر هزینه دارد؟» پاسخ دهد. همچنین میتواند تراکنش امضاشدهای را بپذیرد و به شبکه برساند. در زنجیرههای به سبک اتریوم، قالب رایج JSON-RPC روی HTTPS است. سولانا قالب JSON-RPC مشابهی با متدهای مخصوص خود دارد.
نقطه پایانی خود زنجیره نیست. دری به سوی آن است. اگر در کند یا غلط باشد، آنچه میبینید کند یا غلط است.
کیف پولها و اپلیکیشنها چگونه از آن استفاده میکنند
وقتی کیف پول را باز میکنید و موجودیتان را میبینید، کیف پول از یک نقطه پایانی RPC پرسیده است. وقتی «ارسال» را میزنید، کیف پول تراکنش را روی دستگاه شما امضا میکند و داده امضاشده را به نقطه پایانی میفرستد که آن را به شبکه میرساند. کلیدهای خصوصی شما هرگز به نقطه پایانی نمیرسند. کیف پولها و کلیدها را ببینید.
کیف پول برای هر زنجیره یک نقطه پایانی پیشفرض دارد. میتوانید آن را تغییر دهید. در شبکههایی که کیف پول نمیشناسد، خودتان یکی اضافه میکنید، همراه با شناسه زنجیره (chain ID)، نام شبکه و نماد سکه.
ارائهدهندگان عمومی و خصوصی
- نقاط پایانی عمومی رایگان و باز برای همهاند. بنیادها، زنجیرهها، جوامع و شرکتها آنها را اداره میکنند. برای استفاده سبک خوباند.
- ارائهدهندگان خصوصی یا پولی کلید دسترسی مخصوص خودتان، محدودیتهای بالاتر، پشتیبانی بهتر و اغلب سرویس سریعتر و پایدارتر میدهند. اپلیکیشنهای دارای کاربران زیاد از آنها استفاده میکنند.
نقاط پایانی عمومی ظرفیت را میان همه کاربران تقسیم میکنند، پس کمتر قابل پیشبینیاند. طرح پولی کنترل بیشتری میدهد، اما پول میدهید و به یک شرکت وابسته میشوید. برای کاربر عادی کیف پول، نقطه پایانی عمومی اغلب کافی است. برای اپلیکیشن تجاری، خصوصی مناسبتر است. ChainMonitor هیچ ارائهدهندهای را توصیه نمیکند.
محدودیت نرخ
برای محافظت از خود، نقاط پایانی عمومی تعداد درخواستهای شما در ثانیه یا روز را محدود میکنند. اگر از آن بگذرید، با خطایی مثل «429 too many requests» پاسخ میدهند یا شما را کند میکنند. آنگاه کیف پول ممکن است موجودی خالی نشان دهد یا ارسال نکند. درمان صبر کردن، استفاده از نقطه پایانی دیگر یا طرح خصوصی است.
تأخیر و عقبماندگی بلوک
دو عدد نشان میدهد نقطه پایانی چقدر سالم است.
- تأخیر (latency): مدت زمانی که یک درخواست تا پاسخ میگیرد، بر حسب میلیثانیه. کمتر بهتر است. به فاصله و بار بستگی دارد.
- عقبماندگی بلوک (block lag): نقطه پایانی چند بلوک از جدیدترین بلوک شبکه عقب است. نقطه پایانی که چند بلوک عقب است موجودیهای قدیمیتر نشان میدهد، ممکن است بگوید تراکنشی وجود ندارد در حالی که دارد و ممکن است تخمین کارمزد غلط بدهد.
چرا یک نقطه پایانی ممکن است عقب باشد؟ نودش ممکن است اتصالهایش را از دست داده باشد، هنوز همگامسازی کند یا پشت کشی باشد که کند بهروز میشود. اگر موجودی کیف پولتان غلط به نظر میرسد، نقطه پایانی عقبمانده از اولین چیزهایی است که باید بررسی کنید. همچنین میتوانید همان آدرس را در اکسپلورر بلوک امتحان کنید.
حریم خصوصی
نقطه پایانی هر درخواستی را که میفرستید میبیند. این شامل آدرس IP شما و آدرسهایی است که جستجو میکنید. اپراتور میتواند IP شما را به آدرسهای کیف پولتان پیوند دهد. برخی ارائهدهندگان سیاست حریم خصوصی منتشر میکنند که میگوید چه چیزی ثبت میکنند. برخی نمیکنند.
برای کاهش ریسک:
- سیاست ردیابی و ثبت ارائهدهنده را بخوانید.
- اگر نمیخواهید اپراتور IP شما را ببیند، نقطه پایانی دیگری یا VPN به کار ببرید.
- به یاد داشته باشید همه تراکنشها در هر حال روی زنجیره عمومی میشوند. ریسک مربوط به پیوند دادن هویت شما به آدرسهایتان است.
- اگر حریم خصوصی بسیار مهم است نود خودتان را اجرا کنید.
چگونه RPC سفارشی به کیف پول اضافه کنیم
جزئیات بین کیف پولها فرق میکند، اما گامها مشابهاند.
- تنظیمات شبکه کیف پول را باز کنید و افزودن یا ویرایش شبکه را انتخاب کنید.
- نام شبکه، نشانی RPC، شناسه زنجیره، نماد ارز و در صورت درخواست نشانی اکسپلورر بلوک را وارد کنید.
- ذخیره کنید و به شبکه بروید.
- بررسی کنید موجودیتان بارگذاری میشود و کیف پول شبکه درست را نشان میدهد.
شناسه زنجیره را از منبع معتبر بگیرید. شناسه زنجیره غلط یا نشانی RPC جعلی میتواند داده کاذب نشان دهد. فقط نقاط پایانی منابع مورد اعتمادتان را اضافه کنید.
صفحه سلامت RPC در ChainMonitor
صفحه زنجیرهها نقاط پایانی RPC عمومی زنجیرههایی را که سایت پوشش میدهد فهرست میکند. برای هر نقطه پایانی اندازه میگیرد:
- تأخیر (Latency): زمان پاسخ به یک درخواست.
- ارتفاع بلوک (Block height): آخرین شماره بلوکی که نقطه پایانی گزارش میکند.
- عقبماندگی (Lag): این ارتفاع چند بلوک از جدیدترین بلوک گزارششده توسط دیگر نقاط پایانی سالم زنجیره عقب است.
فهرست با سریعترینها در ابتدا مرتب شده، پس میتوانید با یک نگاه ببینید کدامها سالماند. یک زنجیره را باز کنید، مثلاً از /chains/<id>، تا نقاط پایانی آن را بهتفصیل ببینید. هر کدام دکمه تککلیکی افزودن به کیف پول (add to wallet) دارد که از کیف پول شما میخواهد آن شبکه را با شناسه زنجیره درست اضافه کند. باز هم درخواست را در کیف پول خودتان تأیید میکنید. پیش از تأیید مقادیر را بررسی کنید.
اعداد اندازهگیریهایی هستند که در یک لحظه از سرورهای سایت گرفته شدهاند. تأخیر خودِ شما به محل شما بستگی دارد. آنها را راهنما بدانید، نه تضمین.
پرسشهای متداول
RPC در رمزارز یعنی چه؟
یعنی remote procedure call. نقطه پایانی RPC آدرس وبی است که به کیف پولها و اپلیکیشنها اجازه میدهد با نود بلاکچین صحبت کنند.
آیا نقاط پایانی RPC عمومی امناند؟
نمیتوانند دارایی شما را بردارند، چون امضا در کیف پول شما انجام میشود. اما میتوانند IP شما و آدرسهایی را که میپرسید ببینند و میتوانند داده غلط یا قدیمی نشان دهند. از نقاط پایانی منابع مورد اعتمادتان استفاده کنید.
چرا کیف پولم موجودی اشتباه نشان میدهد؟
ممکن است نقطه پایانی از زنجیره عقب باشد، به محدودیت نرخ خورده باشد یا از کار افتاده باشد. به نقطه پایانی دیگری بروید و دوباره بارگذاری کنید. همچنین میتوانید آدرس را در اکسپلورر بررسی کنید.
عقبماندگی بلوک چیست؟
تعداد بلوکهایی است که نقطه پایانی از جدیدترین بلوک عقب است. عقبماندگی زیاد یعنی داده قدیمی.
آیا به ارائهدهنده RPC خودم نیاز دارم؟
بیشتر مردم نه. نقطه پایانی پیشفرض کیف پول برای استفاده عادی خوب است. اگر اپلیکیشن میسازید یا درخواستهای زیادی میفرستید، طرح خصوصی یا نود خودتان میتواند مناسبتر باشد.