سجّل الدخول إلى ERPC CLI واعرف أين تُحفظ مفاتيحك

سجّل دخول هذا الجهاز، وسيحفظ ERPC CLI الجلسة في سلسلة مفاتيحك أو في 1Password. تبيّن هذه الصفحة أيضًا أين تُحفظ مفاتيح العُقد وما الملفات التي يحتفظ بها erpc.
تصف هذه الصفحة ERPC CLI v0.1.0-rc.4، وهو إصدار تمهيدي.

تسجيل الدخول

bash
erpc signup     # opens the sign-up page
erpc login      # signs this machine in; the session goes to the keychain or 1Password
erpc whoami
يحصل erpc login على الجلسة عبر منح تفويض الجهاز في OAuth (device authorization grant). على جهاز بلا متصفح، يطبع erpc login --no-browser عنوان URL والرمز بدلًا من فتح متصفح، ويطبع erpc signup --no-browser عنوان URL لصفحة التسجيل. يعرض erpc whoami لمن تعود الجلسة المحفوظة، ويسجّل erpc logout الخروج ويحذف الجلسة المحفوظة.

اختيار مكان حفظ الجلسة

في الطرفية، يسألك erpc login عن مكان الحفظ الذي تريد استخدامه: سلسلة مفاتيح نظام التشغيل، وهي الخيار الافتراضي، أو 1Password عندما يستجيب. يختار --store و--vault دون سؤال، ويُسجَّل الاختيار في config.toml، حيث تقرؤه الأوامر الأخرى.
--storeمكان حفظ الجلسة
keychainسلسلة مفاتيح نظام التشغيل
1password-desktop (وكذلك 1password، op)1Password، عبر تطبيق سطح المكتب
1password-service-account1Password، عبر رمز حساب خدمة
fileملف على القرص. يترك هذا سرًّا على هذا الجهاز
إذا لم يكن هناك اختيار، لا ممرَّرًا ولا مسجَّلًا، يستخدم erpc حساب خدمة 1Password عند تعيين OP_SERVICE_ACCOUNT_TOKEN، وإلا فسلسلة مفاتيح نظام التشغيل إن وُجدت، وإلا فملفًا في دليل الحالة الخاص به. يبيّن erpc doctor مكان الحفظ المستخدم وسبب اختياره. مع حساب خدمة، لا يمرّر erpc المتغير OP_SERVICE_ACCOUNT_TOKEN إلا إلى عمليات op التي يبدؤها، ولا يكتب ذلك الرمز في أي مكان.
يحمل عنصر 1Password اسم الجهاز عنوانًا له، حتى لا يتشارك جهازان جلسة واحدة أبدًا. ويتجاوز ERPC_HOST_LABEL هذا الاسم.

على Linux

سلسلة المفاتيح هي Secret Service حيث توجد خدمة منها تستجيب. وإلا فهي حلقة المفاتيح الدائمة الخاصة بمستخدمك في النواة، وهي في الذاكرة ولا تكون على القرص أبدًا: تدوم الجلسة حتى إعادة تشغيل الجهاز أو بضعة أيام دون استخدام، ثم يُطلب erpc login من جديد. لا تستطيع صدفة بُدئت دون تسجيل دخول خاص بها (su دون -، sudo -E) استخدام حلقة المفاتيح تلك، فيرفض erpc ويوضّح ذلك.

على macOS

يصل erpc إلى سلسلة المفاتيح عبر /usr/bin/security. يستطيع أي برنامج آخر يعمل باسمك قراءة الجلسة بتشغيل security أيضًا، بينما تظل سلسلة المفاتيح تحفظ الجلسة مشفرةً أثناء التخزين وبعيدًا عن المستخدمين الآخرين.

عندما تكون الجلسة على القرص

يكتب erpc الجلسة في دليل الحالة الخاص به في ثلاث حالات: مع مكان الحفظ file، وللجلسة المركونة (رمز تحديث جرى تدويره ولم يتمكن من الوصول إلى مكان الحفظ)، وبعد كتابة انقطعت. يبيّن erpc doctor كل ملف من هذا النوع طوال مدة وجوده. على Unix تُنشأ هذه الملفات بالوضع 0600؛ أما على Windows فلا يضبط erpc أي أذونات من عنده.

أين تُحفظ مفاتيح العُقد

يُحفظ جرد العُقد، والنسخ الاحتياطية للمفاتيح الأصلية التي يسمّيها دليل كل سلسلة، في 1Password. ليست كل المفاتيح في 1Password، وقد تحتفظ العقدة بمفتاح تحتاجه لتعمل. انسخ ما على المضيف احتياطيًا بنفسك: إعادة بناء ذلك المضيف دون نسخة احتياطية تؤدي إلى فقدان ما عليه. كما يرفض مدقق Sui نشط أو شاهد TRON منتخَب الانتقال إلى مضيف جديد.
العقدةفي 1Passwordعلى المضيف
مدقق Solana (native)الهوية وزوج مفاتيح المزامنة اللذان أنشأتهما. يُعطى حساب التصويت وصلاحية السحب إلى erpc كمفاتيح عامة فقطزوج مفاتيح المزامنة، مشفرًا لذلك المضيف، ومن --activate-validator فصاعدًا الهوية أيضًا. لا تُستورد مفاتيح حساب التصويت والسحب أبدًا
مدقق Solana (solv)الهوية المرهونة، وصلاحية السحب ما لم تعطِ مفتاحها العام فقط. يُحذف مفتاح حساب التصويت بمجرد التحقق من الحسابملف unstaked-identity.json للاستعمال مرة واحدة، بنص صريح. لا ينسخ النشر أبدًا المفتاح المرهون ولا صلاحية السحب إلى العقدة
Solana RPC (native)الهوية التي أنشأتهاالهوية نفسها، مشفرةً لذلك المضيف
Solana RPC (solv)الجردالهوية، المُنشأة هناك. لا تغادره أبدًا
مدقق Ethereumالجردمخازن المفاتيح، وكلمة مرور فتح قفلها، وسجل الـ slashing. يتوقف سجل النسخة الاحتياطية عند لقطتها، لذا فإن استعادة مفتاح وقّع بعدها يمكن أن تعرّضه للـ slashing: انقل الموقِّع باستخدام erpc v --chain eth migrate
Arc RPCمفتاح الإجماعمفتاح الإجماع، مشفرًا
Avalancheنسخة احتياطية من مفاتيح الـ staking وBLSالمفاتيح نفسها، المُنشأة هناك عند أول نشر
مدقق Suiمفاتيح البروتوكول والشبكة والـ worker، المُنشأة على جهازك الخاصالمفاتيح الثلاثة نفسها، مشفرةً باستخدام systemd-creds لذلك المضيف. ولا يكون مفتاح الحساب هناك أبدًا
عقدة Sui الكاملةالجردبيانات اعتماد الشبكة، مشفرةً لذلك المضيف. لا توجد نسخة أخرى منها
شاهد TRONمخزن المفاتيح المشفر وكلمة مرورهالشيء نفسه، كبيانات اعتماد systemd مشفرة
مدقق Polygonمفتاح الموقِّع الذي يولّده init. لا يُطلب مفتاح مالك الـ staking أبدًاالمفتاح نفسه، مشفرًا لذلك المضيف. وما دامت العقدة تراقب فقط، فإنها تعمل بهوية منفصلة
مدقق BNB Chainنسخة احتياطية من مواد التوقيع وهوية النظيرمفتاح الإجماع في مخزن مفاتيح مشفر، ومفتاح التصويت في محفظة مشفرة، وكلمات مرورهما مشفرةً لذلك المضيف
مدقق Kaia (عقدة إجماع أو عقدة بروكسي)نسخة احتياطية من هوية العقدةهوية العقدة، المُنشأة على المضيف والمشفرة له. تبقى محافظ المشغّل خارج erpc
عقدة Monad (RPC أو مدقق)مخزنا المفاتيح الأصليان كلاهمامخزنا المفاتيح نفساهما، مشفرَين لذلك المضيف
مدقق Hyperliquidمفتاح الإجماع الساخن. لا يُطلب مفتاح الحساب البارد أبدًاالمفتاح الساخن، مشفرًا لذلك المضيف ولا تحمّله إلا وحدات المدقق المفعّلة
ناشر Hyperliquid AQAمفتاح API أو مفتاح الوكيل المخصص لهالمفتاح نفسه، مشفرًا لذلك المضيف
مدقق NEARمفتاح الإجماعالمفتاح نفسه، مشفرًا لذلك المضيف
مدقق Arbitrumالمحفظة التي يولّدها init، وبيانات اعتماد المزوّدبيانات اعتماد المزوّد، مشفرةً، ومن --activate-signer فصاعدًا المحفظة أيضًا، مملوكةً لـ root ومشفرةً
مدقق Robinhood Chainالمحفظة التي يولّدها init، وإعدادات المزوّدإعدادات المزوّد، مشفرةً، ومن --activate-signer فصاعدًا المحفظة أيضًا، مملوكةً لـ root ومشفرةً
RPC لعائلة OPالجرد وقيم المزوّدبيانات اعتماد المزوّد، وJWT المحرك، وهويات النظراء، مشفرةً. انسخ سجل المالك وسر التشفير الخاص بالمضيف احتياطيًا
Nitro RPCالجرد وبيانات اعتماد المصدر العلوي (upstream)بيانات اعتماد المصدر العلوي، مشفرةً
لا تحتفظ عُقد RPC الأخرى بأي مفتاح توقيع لمدقق، لكن مضيفاتها تحتفظ بما ينشئه العميل لنفسه، مثل JWT المحرك أو هوية النظير أو ملف تعريف الارتباط (cookie) الخاص بـ RPC.
النسخة الاحتياطية للمفتاح وحدها لا تجعل استعادة المدقق آمنة. اتبع إجراء الاستعادة الخاص بالسلسلة قبل أن تستبدل خادمًا أو تستعيد بياناته؛ يوضّح دليل كل سلسلة كيفية استعادة مفاتيحها (العُقد).
لا يكتب مفاتيحَ العُقد على القرص في جهازك إلا أمرٌ واحد: يكتب erpc validator vote-account مفتاحَي الهوية والتصويت في ملفات بالوضع 0600 داخل دليل الحالة أثناء تشغيل Solana CLI، ثم يمسحها بعد ذلك. قد تترك عملية توقفت فجأة ملفًا إلى أن يزيله تشغيل لاحق.
يُحفظ مفتاح التداول وأسرار تطبيق erpc worker بمعزل عن هذه: المفاتيح والأسرار.

الملفات التي يحتفظ بها erpc

المسارما يحتويه
~/.erpc/config.tomlالإعدادات العامة (erpc config)
~/.erpc/state/الجلسة والأقفال (يبيّن erpc doctor كيف تُحفظ الجلسة)
~/.erpc/conversations/محادثات ERPC AI المحفوظة
~/.erpc/memory.jsonما يتذكره ERPC AI
~/.erpc/vps_hosts.jsonمفاتيح المضيف لخوادم VPS التي سجّل ERPC AI الدخول إليها
~/.erpc/skills/المهارات التي يكتبها erpc skills install
~/.erpc/storage-keyمفتاح تشفير التخزين، عندما يحفظ erpc login الجلسة في ملف
~/.erpc/backup-password, ~/.erpc/backup-admin-keyكلمة المرور الرئيسية للنسخ الاحتياطي ومفتاح read_write، عندما يحفظ erpc login الجلسة في ملف
~/.erpc/keystore/مخزن مفاتيح الـ worker: أسرار التطبيق ومفتاح التداول الخاص به، كلٌّ منها في ملف مشفر بعبارة المرور الخاصة بك، على جهاز لا يتوفر فيه 1Password ولا سلسلة مفاتيح تدوم
~/.erpc/workers.tomlقائمة تطبيقات erpc worker على هذا الجهاز
~/.erpc/backup.envبيانات اعتماد النسخ الاحتياطي لهذا الجهاز (0600)
~/.erpc/bin/restic-0.19.1إصدار restic المحدَّد الذي يثبّته erpc backup