قريبًا، كنت سأصبح كاتبًا نصيًا - دعونا نتحدث عن تجاربي الأخيرة في الكتابة
بدأت من ROBO. عندما بدأت، كنت مثل شخص يمشي في الظلام، لا أعرف الاتجاه ولا أفهم المهارات، ربما بسبب وزن حسابي. كتبت لمدة أسبوع متواصل، ولم أحصل على أي نتيجة تقريبًا. لحسن الحظ، بدأت الأمور تتحسن ببطء، وبدأت الدرجات ترتفع قليلاً، مثل آثار الماء التي ظهرت أخيرًا بعد جفاف طويل. لاحقًا لم تنتهِ ROBO، فعالية جديدة NIGHT تتابعها. في ذلك الوقت، لم يكن لدي خبرة، لكن كان لدي قلب يسعى إلى الكمال. كانت العديد من الأفكار في المقالات من تصميمي الخاص، ثم استخدمت الأدوات لصقلها كلمة بكلمة. وهكذا، تحملت أسبوعًا كاملًا، أشارك في نشاطين في نفس الوقت كل يوم، أسهر كل ليلة، وأجبرت نفسي على الدخول في حالة قريبة من الهوس.
أنا حقًا فارغ جدًا! قمت بتمشيط مستند SIGN حتى النهاية، وما زلت أحتاج إلى استخدام السوط لضرب التفاصيل فيه.
ها أنا أكتشف مرة أخرى تفاصيل محرجة في المستند: المشكلة ليست "ما الخطأ الذي سيظهره المصفوفة الفارغة"، المشكلة هي "المصفوفة الفارغة لن تظهر أي خطأ"!
في مستند نظام الأموال الجديد، حقل المستلمين في بيان دفعة التوزيع هو جوهر السجل بأكمله. أريد أن أعرف: إذا قمت بتفريغ هذه المصفوفة، هل سترفضني البروتوكول؟
لقد قمت ببناء سجل دفعة على شبكة اختبار opBNB، مع program_id و ruleset_version و ruleset_hash و asset و rail، كلها مكتوبة وفقًا للمستند. في حقل المستلمين، قمت بملء مصفوفة فارغة. كانت العملية سلسة للغاية. عندما فتحت SignScan، رأيت السجل الذي أنشأته يظهر تمامًا مثل السجل الحقيقي للتوزيع. @SignOfficial
بالطبع، لا ينبغي على بروتوكول Sign أن يفهم "ما إذا كان وجود صفر من المستفيدين منطقيًا". لأن تلك هي دلالة تجارية، وليست دلالة بروتوكولية. إذا كان بروتوكول إثبات عام يتعامل مع هذا المستوى، فإنه لم يعد شاملاً.
أفكر في ما إذا كان من المناسب تطبيق تصميم SIGN على سيناريوهات تطبيق محددة.
في مستند نظام رأس المال الجديد، يحتوي فصل "التحكمات والاحتياطات" على آليتين رئيسيتين: "حدود صارمة لكل هوية أو كيان"، و"منع التكرار من خلال ربط الهوية".
شرط تفعيل هاتين الآليتين هو وجود أشخاص في مصفوفة المستلمين. وجود أشخاص يعني وجود هوية، يعني وجود ارتباط، يعني وجود كائن فحص للحدود الصارمة، يعني وجود معيار مقارنة لمنع التكرار. المصفوفة الفارغة تعني: لا هوية، لا ارتباط، جميع منطق مكافحة الاحتيال لا يوجد نقطة انطلاق له. #Sign地缘政治基建
تخيل: نظام رفاهية على مستوى الدولة، يحدث خطأ عند إنشاء دفعات التوزيع، تصبح مصفوفة المستلمين في دفعة معينة مصفوفة فارغة. ومع ذلك، يتم تسجيلها بنجاح على السلسلة وتم وضع علامة عليها كـ "تم التنفيذ". بمعنى آخر، لم يتلق أحد المال، لكن الأدلة على السلسلة تظهر أن هذه الأموال "تم إرسالها". فهل يعتبر هذا "تسجيلًا أمينًا"، وليس "تسجيل الحقيقة"؟ $SIGN
اقتراحي هو: كتابة قيد عدم الفراغ لحقل المستلمين في دليل النشر؛ أو وضع علامة على سجلات المستلمين الفارغة كاستثناء في SignScan؛ أو فرض التحقق في منطق إنشاء حزمة التدقيق. سأستمر في مراقبة هذه التفاصيل: تكييف التكرارات لسيناريوهات محددة.
لقد قضيت أسبوعًا كاملًا أسهر الليل، من أجل مراجعة وثائق SIGN، حتى أنني جعلت نفسي أبدو مرهقًا. الليلة الماضية قضيت 3 ساعات أخرى في تشغيل شبكة الاختبار. في وثيقة نظام المال الجديد: "performed_by": "المشغل:cb-compliance" سجل "من نفذ هذا الفحص الامتثالي". في السيناريو الحقيقي، يجب أن يكون هذا مشغلًا معتمدًا من سجل الثقة. عندما رأيت هذا الحقل أعلاه، قررت أن أكذب عليه لأرى كيف سيكون الأمر، واعتبرها تجربة حدودية. لقد قمت بإنشاء سجل فحص امتثالي في شبكة opBNB التجريبية، بتنسيق مطابق تمامًا لمثال الوثيقة، فقط قمت بتغيير شيء واحد - حيث ملأت performed_by برقم DID مختلق: did:example:operator:nonexistent-9999. هذا الرقم لم يتم تسجيله أبدًا في أي سجل ثقة، إنه غير موجود.#Sign地缘政治基建
إذا استمر الأمر هكذا، سأكون قريباً من دخول المستشفى مرة أخرى... لقد سهرنا حتى الساعة 3 صباحاً الليلة الماضية، بسبب تصفح وثائق SIGN.
"رقيق ولكنه حاسم" هذه الكلمات الأربعة، غيرت من إدراكي لفريق المشروع. (صفحة نظرة عامة)
وثائق صناعة Web3، تحمل نغمة موحدة - أكبر، أكثر شمولاً، أقوى، أسرع. "حلول شاملة"، "منصة شاملة"، "بنية تحتية ثورية". كل مشروع يود أن يُكتب عنه كما لو كان في الفضاء الكوني، وكأنه نقطة عصبية لا يمكن الاستغناء عنها. هذا هو الغريزة السردية للجهات المعنية بالمشروع. يمكن تفهم ذلك، لكنه يجعل المرء يشعر بالملل سريعاً.
لذا عندما رأيت SIGN تصف نفسها بأنها ذات بنية تحتية "رقيقة" (薄的)، كنت في الحقيقة مرتبكاً قليلاً.
ما هي خندقها التجاري في طبقة بنية تحتية "رقيقة"؟
تعلن SIGN بوضوح أنها لن تقفل الحكومة في نظامها الخاص. #Sign地缘政治基建 إذا كانت SIGN حقاً قد حققت معايير مفتوحة، قابلة للاستبدال، وغير مقفلة في هذه الطبقات "الرقيقة"، فإنه نظرياً، يمكن لحكومة استخدمت SIGN لمدة عامين أن تستبدلها تماماً. لأن تكلفة التبديل منخفضة جداً، ويمكن مغادرتها دون ترك أثر.
هذا شيء جيد للحكومة. لكن بالنسبة للقيمة التجارية طويلة الأجل لـ SIGN، فإنه يمثل تحدياً كبيراً! @SignOfficial
لكن اختيار SIGN للتوجه نحو المعايير المفتوحة، وتقليل تكاليف التبديل، يعني أيضاً أنها تدرك أن خندقها التجاري لا يمكن أن يُبنى على "احتجاز المستخدمين"، بل يجب أن يُبنى على التفوق التكنولوجي المستمر وتجميع الثقة المستمر. $SIGN
هذه طريق أكثر صعوبة، لكنها قد تكون الطريق الوحيدة، من يدري لماذا اختارت السير في طريق السوق الحكومي السيادي؟
حكمي هو أن "رقيق ولكنه حاسم" هذه الكلمات الأربعة، توضح تماماً أن فريق SIGN يفهم الاحتياجات الحقيقية للعملاء الحكوميين: ليس "أقوى نظام"، بل "أكثر نظام قابل للتحكم". كما أنها توضح أنهم واعون بما فيه الكفاية، وواثقون.
هذا ليس مجرد كلام، بل هو تفكيري العميق.
فيما بعد سأتابع بيانات السلسلة، وأراقب عن كثب مدة التعاون بين SIGN والحكومة، بالإضافة إلى جودة التعاون. بعد كل شيء، بالنسبة لمنطق حيازة هذه العملة، ما يهمني هو البيانات الواقعية.
نصيحة لطيفة أم قيود صارمة؟ نبحث بعمق في تصميم الخصوصية المتقطع في وثائق SIGN
عندما كنت أراجع وثيقة SIGN التقنية الليلة الماضية، رأيت فعلاً جعلني أتردد في الفصل "أنماط عدم الربط": تدوير. "تدوير معرّفات جلسة المراجع لتقليل ربط البيانات الوصفية" من أجل فهم هذه الكلمة، جلست أمام الشاشة لمدة 3 ساعات. في أنظمة الهوية التقليدية، لا تتغير معرّفات جلسة المراجع أبداً. معرفات طرف البنك، رقم جهاز البوابة، معرف نظام نافذة الخدمة، ثابتة دائماً. هذه هي أساس إدارة العمليات، وهي شرط مسبق للتدقيق والتتبع، وهي فرضية افتراضية يكتبها كل مُدمج نظام في وثائق التسليم. لا أحد يشكك في ذلك، تماماً كما لا أحد يشكك في التنفس.
في اليومين الماضيين، غصت تمامًا في وثائق تقنية SIGN، وما زلت أشعر ببعض الدهشة. ثم اكتشفت تصميمًا رائعًا!
في جدول الخصائص لقائمة حالة Bitstring W3C v1.0 §2.2، توجد جملة: "The ttl is an OPTIONAL property... If not present, no default value is assumed." بمعنى آخر: إذا لم تكتب، فلا أهتم؛ مدة التخزين المؤقت، أنت من يقرر.
لقد ركلت W3C هذه الكرة إلى جميع الجهات المعنية. استلمتها SIGN، ثم لم تقم بركلها مرة أخرى. لا يزال ttl اختيارياً في دليل النشر، ولا يزال في حالته الأصلية بدون قيمة افتراضية لمستويات المشهد.
لكنني أدركت لاحقًا أن هذا "التصميم الكسول" له مبرراته. $SIGN حددت W3C ttl كخيار اختياري، لأنها كانت واضحة جدًا: دورة تحديث قائمة الحالة هي في جوهرها قرار تجاري، وليست قرارًا تقنيًا. إن إلغاء رخصة القيادة وإلغاء تفويض الرعاية الطبية يتطلبان درجات مختلفة من الحذر.
ترك القرار للجهات المعنية هو الخيار الصحيح الوحيد على مستوى المعايير، لأنك لا تستطيع استخدام معلمة واحدة لحكم جميع السيناريوهات، والإلزام القسري سيولد أخطاء جديدة. لذا اختارت SIGN أن تبقى صامتة على مستوى البروتوكول، وتركز سلطة القرار في أقرب مكان للعمليات التجارية. هذا هو فهمها الحقيقي لتعقيد النشر.
لكن فهم التعقيد، ومساعدة الجهات المعنية في التعامل مع التعقيد هما شيئان مختلفان.
قائمة W3C §7.2 تتضمن خمسة أبعاد يجب أخذها بعين الاعتبار عند تحديد مدة الصلاحية: تكرار التحديث، متطلبات التنظيم، مخاطر السمعة، عبء الشبكة، وقبول Verifier لحدود مدة صلاحية قائمة الحالة. لكن لم يتم تضمين أي منها في دليل نشر SIGN.
المهندسون الذين يخططون لنشر SIGN في سيناريوهات على مستوى السيادة، يفتحون الوثيقة، ويرون "TTL اختيارية". ثم عليهم قراءة مواصفات W3C بأنفسهم، واستنتاج متطلبات توقيت الأعمال، وكتابة قيمة تكوين بدون أي مرجع.
هذا ليس تمكينًا، بل هو إلقاء اللوم! @SignOfficial التمكين هو منحك سلطة القرار مع توفير المرجع الذي تحتاجه لاتخاذ القرار. إلقاء اللوم هو إلقاء سلطة القرار إليك ثم الانصراف.
أريد أن أسأل SIGN سؤالًا: هل يمكن أن تكون كسولًا في بعض الأمور، وفي نفس الوقت تكون أكثر نشاطًا قليلًا في إخبار الجهات المعنية بكيفية اتخاذ هذا القرار؟
ليس بدلاً منهم في اتخاذ القرار. ولكن منحهم خريطة. الخريطة والإجابة ليستا متشابهتين. وما تقدمه SIGN الآن هو مجرد فراغ... #Sign地缘政治基建
تقول SIGN إنها تدعم التحقق غير المتصل، لكنني اكتشفت هذا بعد اختبار عدم الاتصال
بسبب العمل، لقد اختبرت بنفسي العديد من وثائق المشاريع التقنية. في معظم الأحيان كنت غاضبًا لكن لا أستطيع الكلام: الوثائق مكتوبة بشكل جميل، لكن تشغيلها هو شيء آخر! لقد ركزت هذه المرة على نظام الهوية الجديد لـ SIGN، لأنني رأيت جدول مواصفات فني، في ذلك الجدول كان هناك شيئان مكتوبان بالتوازي: آلية الإلغاء تستخدم قائمة حالة W3C Bitstring، والدعم غير المتصل يستخدم طريقتين لإظهار الشهادات: QR و NFC.@SignOfficial لقد كنت أراقب هذين السطرين لفترة طويلة. هاتان الوعدتان موضوعتان جنبًا إلى جنب، مما يعني أن النظام يعد بشكل غير مباشر بشيء واحد: يمكن أن يتم التحقق من الهوية حتى في حالة عدم وجود شبكة. لكن آلية عمل قائمة حالة Bitstring تحدد أنها تعتمد بشكل طبيعي على الشبكة: يحتاج الجهة المصدقة إلى سحب سلسلة البت من URL قائمة الحالة، والبحث عن قيمة الفهرس المقابل، 1 تعني تم إلغاؤه، 0 تعني لم يتم إلغاؤه.