ستة أشياء لا تضعها جلسة Citadel على السلسلة: مفتاح محفظتك، الترخيص الذي استخدمته، مفاتيح المُصدِر والخدمة، السمات المُوقَّعة، ومسار إثبات ميركل. ما يحدث على السلسلة هو جلسة واحدة فقط. عامة، قابلة للتحقق، ومملة.
@Dusk يصنّف هذا ضمن الكشف الانتقائي، وليس كمفتاح خصوصية. يقوم مزوّد الترخيص بالتحقق منك خارج السلسلة، ويوقّع سماتك، وينشر ترخيصًا مُشفّرًا، ويسجّله في عقد Citadel. لاحقًا تُثبت في معرفة صفرية أنك تمتلك ترخيصًا مُسجّلًا. ليس أي ترخيص تحديدًا. فقط أنه موجود. يتحقق العقد ويُسجّل جلسة، ثم تُسلم “كوكي الجلسة” إلى الخدمة.
بعد ذلك، تُوضّح الوثائق الخط بشكل واضح. يُثبت Citadel أن الجلسة صالحة تشفيرياً. لا يقرر سياسات الخدمة. ما تزال الخدمة تختار أي المُصدِرين تثق بهم، وأي السمات تقبلها، وما إذا كانت الجلسة قد أُبطلت، وما إذا كان هذا الكوكي يعمل مرتين أم لا.
وظيفتي اليومية هي اختبار تطبيق لتداول الأوراق المالية، وهذا الفصل يبدو كأنه شيء نُقل من على مكتبي حرفيًا. لا أحد هناك يرى الصورة كاملة، عمدًا. المستخدم يرى طلبه. قسم العمليات يرى الدفعة. جهة الإيداع ترى تعليمات التسوية. المدير يسحب تقريرًا عند الطلب. أربع وجهات نظر لصفقة واحدة، تم ترتيبها قبل وقت طويل من كتابة أي دارة لإثبات.
رأيي: الجزء القيم من Citadel ليس التشفير، بل الرفض. سلسلة قررت أهلية شخص ما لا يملك أي موقع أن يتبناها. الأهلية هي اختصاص قضائي، وشروط المنتج، وشهية المُصدِر للمخاطر. لا ينبغي أن يحتاج أي من هذا إلى “hard fork”.
هل يجعل هذا تطبيقًا على Dusk متوافقًا؟ لا. ما يزال على شخص أن يكون مزوّد الترخيص، ويجري فحوصات خارج السلسلة، ويجيب عندما يكون فحص ما خاطئًا. الأدوات اليوم: مكتبة Rust، وعقد الترخيص، وأداة سطر أوامر للمحفظة، وSDK من JavaScript مُدرج حتى الآن كقادم. $DUSK يدفع الغاز ويؤمّن الشبكة عبر الرهان.
فمن ينبغي أن يتولى دور “مزوّد الترخيص” لأصل مُنظّم: الجهة المستضيفة، أم المُصدِر، أم طرف ثالث وظيفته الوحيدة التحقق؟ أنا أميل إلى الخيار الثالث، رغم أنني لم أجد سببًا واضحًا.
#dusk
@Dusk يصنّف هذا ضمن الكشف الانتقائي، وليس كمفتاح خصوصية. يقوم مزوّد الترخيص بالتحقق منك خارج السلسلة، ويوقّع سماتك، وينشر ترخيصًا مُشفّرًا، ويسجّله في عقد Citadel. لاحقًا تُثبت في معرفة صفرية أنك تمتلك ترخيصًا مُسجّلًا. ليس أي ترخيص تحديدًا. فقط أنه موجود. يتحقق العقد ويُسجّل جلسة، ثم تُسلم “كوكي الجلسة” إلى الخدمة.
بعد ذلك، تُوضّح الوثائق الخط بشكل واضح. يُثبت Citadel أن الجلسة صالحة تشفيرياً. لا يقرر سياسات الخدمة. ما تزال الخدمة تختار أي المُصدِرين تثق بهم، وأي السمات تقبلها، وما إذا كانت الجلسة قد أُبطلت، وما إذا كان هذا الكوكي يعمل مرتين أم لا.
وظيفتي اليومية هي اختبار تطبيق لتداول الأوراق المالية، وهذا الفصل يبدو كأنه شيء نُقل من على مكتبي حرفيًا. لا أحد هناك يرى الصورة كاملة، عمدًا. المستخدم يرى طلبه. قسم العمليات يرى الدفعة. جهة الإيداع ترى تعليمات التسوية. المدير يسحب تقريرًا عند الطلب. أربع وجهات نظر لصفقة واحدة، تم ترتيبها قبل وقت طويل من كتابة أي دارة لإثبات.
رأيي: الجزء القيم من Citadel ليس التشفير، بل الرفض. سلسلة قررت أهلية شخص ما لا يملك أي موقع أن يتبناها. الأهلية هي اختصاص قضائي، وشروط المنتج، وشهية المُصدِر للمخاطر. لا ينبغي أن يحتاج أي من هذا إلى “hard fork”.
هل يجعل هذا تطبيقًا على Dusk متوافقًا؟ لا. ما يزال على شخص أن يكون مزوّد الترخيص، ويجري فحوصات خارج السلسلة، ويجيب عندما يكون فحص ما خاطئًا. الأدوات اليوم: مكتبة Rust، وعقد الترخيص، وأداة سطر أوامر للمحفظة، وSDK من JavaScript مُدرج حتى الآن كقادم. $DUSK يدفع الغاز ويؤمّن الشبكة عبر الرهان.
فمن ينبغي أن يتولى دور “مزوّد الترخيص” لأصل مُنظّم: الجهة المستضيفة، أم المُصدِر، أم طرف ثالث وظيفته الوحيدة التحقق؟ أنا أميل إلى الخيار الثالث، رغم أنني لم أجد سببًا واضحًا.
#dusk