Cashu بروتوكول مفتوح للنقد الإلكتروني يستخدم التوقيعات العمياء، ويُستخدم كثيرًا مع Bitcoin عبر Lightning Network. تحتفظ المحفظة بإثباتات أصدرتها جهة محددة، لا بصلاحية التوقيع لإنفاق احتياطي تلك الجهة من البيتكوين.
Cashu ليس جهة إصدار واحدة مشتركة. يحدد الرمز مُصدره ووحدته ومجموعة مفاتيح التوقيع؛ فتساوي الرقم لا يعني تساوي العملة أو الالتزام. لا يمكن استرداد رموز جهة تلقائيًا لدى جهة أخرى. يستخدم تنسيق V4 ترميز CBOR ويحتوي إثباتات جهة إصدار واحدة فقط. [Cashu — NUT-00: Protocol and tokens] [Cashu — NUT-02: Keysets and fees] [Cashu — Project introduction]
يستخدم البروتوكول الأساسي BDHKE على secp256k1. تنشئ المحفظة سرًا وتُعمّي نقطته، فتوقّعها جهة الإصدار ثم تزيل المحفظة التعمية. للفئات النقدية مفاتيح مختلفة: تعرف جهة الإصدار قيم الإثباتات التي تصدرها، رغم أنه ينبغي ألا تعرف صورتها المستقبلية بعد إزالة التعمية. [Cashu — NUT-00: Protocol and tokens]
يمكن نسخ الرمز العادي غير المشروط. يبدّله المستلم عبر swap بإثباتات جديدة تحمل أسراره الخاصة، وتُبطل جهة الإصدار المدخلات القديمة. حالة UNSPENT معلومة لحظية فقط، وليست حجزًا للمستلم. تعني PENDING أن المعالجة جارية، وSPENT أن الإثبات استُخدم بالفعل. [Cashu — NUT-03: Swap tokens] [Cashu — NUT-07: Token state check]
يضيف الامتداد الاختياري NUT-12 إثبات DLEQ بأن التوقيع يطابق المفتاح العام لجهة الإصدار. يستطيع المستلم التحقق دون اتصال إذا توفرت البيانات المناسبة. لكن ذلك لا يكشف هل أنفق شخص الرمز لاحقًا، أو هل تستجيب جهة الإصدار، أو هل لديها احتياطيات. لذلك لا يحل التحقق دون اتصال محل الاستلام عبر swap. [Cashu — NUT-12: Offline signature validation]
يميّز NUT-02 بين active=false والحقل الاختياري final_expiry. لا تصدر المجموعة غير النشطة رموزًا جديدة، لكن إثباتاتها تبقى مقبولة كمدخلات؛ وبعد الانتهاء النهائي لا تعود المواصفة تلزم جهة الإصدار بالوفاء بها. تُجمع رسوم المدخلات input_fee_ppk بحسب عدد الإثباتات وتعرفة كل منها، ثم تُقرّب إلى الأعلى. [Cashu — NUT-02: Keysets and fees]
في melt تسلّم المحفظة إثباتات مقابل دفع خارجي، غالبًا عبر Lightning Network. يحدد العرض المبلغ والوحدة والصلاحية وأي احتياطي للرسوم؛ وقد تُضاف رسوم المدخلات. لا تعني استجابة HTTP 200 مع PENDING تأكيد الدفع. يجب التمييز بين النتيجة النهائية وقبول الطلب. [Cashu — NUT-05: Melting tokens]
لا تُزيل التعمية معلومات المبالغ أو التوقيت أو الاتصال الشبكي. توصي NUT-03 بترتيب الفئات المطلوبة كي لا يكشف ترتيبها الفصل بين مبلغ الدفع والباقي. وقد تُسهّل استفسارات المرسل عن حالة الإثباتات المنقولة على جهة الإصدار ربط المرسل بالمستلم. [Cashu — NUT-03: Swap tokens] [Cashu — NUT-07: Token state check]
تشتق NUT-13 الأسرار وعوامل التعمية من seed وفق مجموعة المفاتيح والعداد. تستخدم النسخة 01 خوارزمية HMAC-SHA256، والنسخة القديمة 00 خوارزمية BIP32. تتطلب الاستعادة المجموعات الأصلية والتوقيعات المسترجعة عبر NUT-09، ثم فحص حالة الإنفاق. من دون تعاون جهة الإصدار لا تضمن seed استعادة التوقيعات أو سحب الاحتياطي. [Cashu — NUT-13: Deterministic secrets] [Cashu — NUT-09: Restore signatures]
للحصول على صورة أوضح، اقرأ هذا المدخل مع Fedimint, Chaumian eCash, Blind signature, Lightning Network, Counterparty risk, Satoshi. تشير إلى هذا المدخل أيضًا Chaumian eCash, Blind signature, Fedimint, Fiduciary Media.