كل محفظة أخرى في هذا المشروع مفتاح خاص بسلطة غير محدودة على ما تحمله. هذه ليست كذلك. إنفاقها مفوَّض عبر جلسة Altana: قائمة سماح بالعقود، وسقف يومي، وتاريخ انتهاء — يفرضها عقد الحساب، فأي استدعاء خارج النطاق يُرفض قبل أن يُنفَّذ. مفتاح الجلسة مسجّل في KeyStore على السلسلة، أي أنك لست مضطرًا لتصديق أي من هذا على كلمتنا.
الجلسة التي تنفّذ استدعاءً مسموحًا تثبت أن المفتاح يعمل. لكنها لا تقول شيئًا عن أن الحدود مرتبطة به. لذلك جُرِّب الاثنان:
approve() على $U، موقَّع بمفتاح الجلسة لا بمفتاح الإدارة:transfer() من $U إلى عنوان من اختيارنا، وهي بالضبط الخطوة التي سيقوم بها مفتاح جلسة مسروق. رفضه الحساب بـ UnauthorizedCall. لا توجد معاملة لربطها، لأنها لم تصبح معاملة أبدًا.الإلغاء هو نية Altana واحدة موقّعة من الإدارة، ويسري خلال كتلة — يتوقف المُدخل أعلاه عن التحقق ويرفض عقد الحساب الاستدعاء التالي للجلسة.
ألغِها من هنا. الزر أدناه يُنهي جلسة من هذه الصفحة. قفلان يجعلان نشر ذلك آمنًا: مفتاح الإدارة الذي يوقّع سرٌّ على الـ worker (ليس في هذه الصفحة أبدًا، ولا في المصدر)، ولا يوقّع الـ worker إلا عندما يحمل الطلب رمز المشغّل. نقطة اتصال عامة تستطيع إنهاء الجلسة بدونه ستكون مفتاح إيقاف يمكن لأي غريب ضغطه — هجوم حرمان من الخدمة متنكّر في زي ميزة أمان — لذا بدون الرمز يكون الجواب 401 ولا يُوقَّع شيء. كل إلغاء يُطلق من هنا يُسجَّل مع معاملته، أسفل الحالة الحية، فيصبح التحكم حقيقة يمكنك التحقق منها على السلسلة.
الإلغاء نفسه من جهاز المشغّل، بدون الصفحة: node scripts/altana-session.mjs --mainnet --revoke --confirm. يوقّع المساران بمفتاح الإدارة نفسه ويصلان إلى الاستدعاء نفسه على السلسلة.
الشفافية هي الجزء الذي يجب أن يكون علنيًا، وهو كذلك: يمكن لأي أحد استدعاء getKeys() و isValidKey() على KeyStore والحصول على الإجابة نفسها التي تعرضها هذه الصفحة، دون أن يسألنا.
الخام: agent.brainonbnb.com/session · المصدر في /source (scripts/altana-session.mjs, worker-agent/session.js).