مهارات الحياة

اسم رمز ERC20: هل يكفي لتحديد العقد الذي تقرأه؟

شبكة مؤلفة واحدة تضم أ وب باسم نور ورمز ن، وج باسم مدار ورمز م؛ ثلاث هويات واسمين متميزين.
رسم أصلي لمدخلات مؤلفة؛ الشروط والوحدات في المقال.

يجعل معيار ERC20 حقلي الاسم والرمز المختصر اختياريين، فلا يفترض التطبيق وجودهما. [1] وتوضح إيثريوم أن عقودًا مختلفة قد تحمل الاسم والرمز نفسيهما، مع اختلاف عنوان العقد. [2] لهذا لا يكفي نص جذاب في بطاقة لتحديد الأصل الذي يسأل عنه سجل، ولا يمنح تطابق الهوية ضمانًا اقتصاديًا أو حكمًا على سلوك العقد.

تعد رنا فهرسًا ورقيًا ضمن شبكة واحدة محددة في جميع الأمثلة. نسمي ثلاثة عقود أ وب وج، وهذه اختصارات لثلاث هويات مختلفة أعطيناها في القصة، وليست عناوين حقيقية أو تعليمات بحث أو شراء. الأسماء والشعارات والمقادير مؤلفة؛ نراجع مطابقة البطاقات ولا نقيّم رموزًا منشورة أو نعرض سعرًا أو سيولة.

الخلاصة السريعة

الاسم والرمز قد يتكرران، وهما اختياريان في المعيار. [1][2] في شبكتنا المؤلفة، بطاقة أ ليست بطاقة ب لمجرد أن كليهما يعرض «نور»؛ نربط السؤال بالهوية المحددة، ونبقي غياب الاسم غيابًا للمعلومة لا اسمًا اخترعناه. هوية صحيحة لا تكفي وحدها لإثبات أمان أو قيمة.

  • في البداية ثلاثة عقود مختلفة؛ اثنان يحملان الاسم نفسه. عد الأسماء المتميزة يعطي 2 ، وعد الهويات يعطي 3 ، ولا يبدل تشابه الكتابة هذا الفرق.
  • القيمة المعطاة 80 تخص بطاقة أ و 30 تخص ب، بوحدتيهما المؤلفتين. لا يصبح الأول 110 بسبب اسم مشترك، ولا نجمع وحدتين مختلفتين كمقدار من أصل واحد.
  • الاسم الغائب في بطاقة ج لا يعني اختفاء ج من الفهرس، ولا يثبت أنه يحمل اسم ب. تظل هويته المعطاة محفوظة والسؤال عن اسمه مفتوحًا.
  • ملفان للبطاقة أ يبقيان عنصرًا واحدًا في الفهرس؛ تغيير وصف عرضه لا يخلق عقدًا رابعًا في نموذجنا.
  • ترتيب البحث أو تشابه شعارين لا يعين العنصر المطلوب. وعندما تختلف اختصارات العرض، نعود إلى الهوية الكاملة المحفوظة في الورقة.
  • في لقطة لاحقة مقادير أ وب تتغير مستقلًا في القصة؛ تغير أحدهما لا يحدث الآخر بالاسم. جميع المطابقات ضمن شبكة واحدة، ولا تقدم حكمًا عن ربح أو نقل أو ضمان تنفيذ.

اسم واحد في بطاقة لا يعني اسمًا فريدًا في الفهرس

نبدأ بفهرس يحتوي العقود أ وب وج. تمنح رنا أ الاسم «نور» والرمز المختصر ن، وتمنح ب الاسم نفسه والرمز نفسه. أما ج فتحمل الاسم «مدار» والرمز م. هذه تسميات وضعناها لثلاث بطاقات داخل شبكة واحدة. يوضح المصدر إمكان تكرر تلك النصوص بين عقود مختلفة. [2] لذلك لا نحول الاسم المشترك إلى قاعدة تقول إن البطاقتين عنصر واحد.

إذا كان السؤال عدد الهويات في الفهرس، فالجواب ثلاثة لأننا قدمنا أ وب وج بوصفها مختلفة. وإذا كان عدد الأسماء المتميزة المعروضة، فالجواب اثنان: نور ومدار. وإذا كان عدد البطاقات التي تحمل نور، فالجواب اثنتان. جميع هذه الأجوبة صحيحة للورقة التي عرفناها، لكنها لا تجيب السؤال نفسه؛ تحفظ رنا العنوان مع كل عدد بدل تداول أرقام مجردة.

يمكن أن يكتب زميل «أرسل بطاقة نور» وهو يقصد واحدة من البطاقتين. تعيد رنا السؤال ليحدد أ أو ب، ولا تختار التي ظهرت أولًا في نسخة الفهرس. لا يحل عرض ترتيب من واحد إلى ثلاثة نقص الطلب، لأن ترتيب الملف قد يتغير عند الفرز. يحدد عنصر القصة بالهوية التي حفظناها له، لا بمكانه المؤقت في القائمة.

ثم نؤلف نسخة ثانية تجعل الأسماء الثلاثة متساوية كلها. يصبح عدد النصوص المتميزة واحدًا، بينما يبقى عدد الهويات ثلاثة. لم ندمج أي بطاقة في أخرى؛ غيرنا وصف العرض في قصة بديلة. يساعد هذا الفرع على فصل سؤال التصنيف بحسب الكتابة من سؤال عد العناصر، دون افتراض أن أيًا من الأسماء يمثل علامة مرخصة أو أصلًا حقيقيًا.

لا تحتاج المقارنة رأيًا في شكل الاسم أو شهرة صاحبه. نحن نراجع مفاتيح جدول أعطيناها صراحة، ونحدد أين يصلح الوصف للبحث وأين يعجز عن تعيين نتيجة واحدة. إذا وجد البحث أكثر من بطاقة، لا يصبح غموضه دليلًا على اختلاف قيمة أو غرض. إنه يثبت فقط أن شرط البحث الذي اخترناه لا يميز جميع عناصر هذه الورقة.

لا تجمع مقدارين لأن عنوانهما متشابه

نعطي حسابًا مؤلفًا ح مقدار 80 من وحدات أ و 30 من وحدات ب. ليسا مبلغين بالإيثر ولا قيمتين نقديتين موحدتين؛ كل مقدار مرتبط بوحدته التي سميناها. بقاء الاسم نور على البطاقتين لا يمنحنا قاعدة تحويل بين الوحدتين. إذا أراد زميل نتيجة 110 ، يمكن أن يسميها جمع العددين مجردًا، لكنه لا ينسبها إلى مقدار من أ أعطيناه للحساب.

تكتب رنا سطرين منفصلين: ح مع أ يساوي 80 ، وح مع ب يساوي 30. إذا طلبت المراجعة مقدار أ، تجيب 80. وإذا طلبت عدد العناصر ذات مقدار معلوم في هذه اللقطة، تجيب اثنين. لا يصبح الحساب مالكًا 110 وحدة من أ لأن الصفين متجاوران، ولا يحذف ب من الفهرس لأن المقدار الأقل يبدو جزءًا من العدد الأكبر في بطاقة تشبهه.

في فرع جديد مستقل نعطي أ وب مقدار 50 لكل منهما. يتساوى الرقمان وتختلف وحدتا البيان اللتان فرضناهما. لا نستنتج أن لهما سعرًا متساويًا، أو أن نقل 50 من أحدهما يعادل نقل 50 من الآخر. لم يقدم المقال أي سعر أو حركة أصلًا. تظهر هذه المقارنة لماذا لا تكفي المساواة العددية لجعل سجلين مختلفين قابلين للاستبدال في سؤال عن أحدهما.

وفي فرع ثالث نعطي مقدار أ وحده 100 ، ونبقي مقدار ب مجهولًا. لا نملأ خانته بصفر ولا بالمقدار 100 لأن الاسم مشترك. لدينا قيمة واحدة معلومة وأخرى غائبة؛ مجموع مشروط يمكن كتابته 100 زائد المقدار المجهول، لكن لا نقدم مجموعًا نهائيًا بلا معطاه الثاني. ربط القيمة ببطاقتها يحافظ على حدود ما قدمته القصة.

تسلم رنا لزميل الجدول مع السؤال المحدد، فيعيد استخراج الصف المطلوب قبل نسخ العدد. إذا حصل على 30 بدل 80 ، يسألان أي بطاقة اختار، لا أي عملية جمع أخطأ فيها. قد يكون النقل العددي سليمًا تمامًا مع اختلاف عنصر السؤال. بهذه المراجعة نكتشف خطأ تعيين لا يظهر عند النظر إلى المقادير وحدها، من غير اختبار عقد أو محفظة حية.

غياب الوصف لا يلغي العنصر

يقرر المعيار أن حقلي الاسم والرمز اختياريان، وألا تتوقع الواجهات وجودهما. [1] نؤلف بطاقة ج ذات هوية معلومة، لكن نترك خانتي الوصف فيها بلا معطى. لا نكتب «لا يوجد عقد» مكان «لم يعط الاسم»، ولا نحذف البطاقة من عد الثلاثة. النقص في عمود معين يختلف عن غياب العنصر الذي عرفناه في صف مستقل.

يمكن أن تظهر في نسخة العرض عبارة «غير معطى» لتوضيح حالة الخانة. هذه عبارة تفسيرية من وضعنا، وليست اسمًا أعطاه العقد أو حقيقة عرفناها عن كل برنامج. إذا بحث زميل عن هذه العبارة في نصوص الفهرس، قد يعثر على الخانة الناقصة، لكن لا يسمي نتيجة البحث رمزًا جديدًا ينافس نور ومدار. نحفظ وظيفة النص قبل عد الأسماء المتميزة.

نضيف بطاقة د في فرع مستقل، ونعطيها أيضًا اسمًا غائبًا. صار لدينا أربعة عناصر في تلك القصة واثنتان بلا وصف معطى. لا ندمج ج ود لأن كلتيهما فارغة، ولا نستنتج أن الاسم المفقود متطابق بينهما. يمكن عد الفراغين لغرض متابعة استكمال الملف، مع إبقاء عدد الهويات ومعنى كل منها مستقلين عن هذا العد الإجرائي.

أما إذا وجدنا اسمًا لج في مستند آخر من دون رابط يبين أنها البطاقة نفسها، فلا نلصقه فيها بالتخمين. تحتاج ورقتنا بيانًا يربط الوصف بالعنصر المعني، ثم نحفظ مصدر النسخة. تشابه شعار أو قيمة أو ترتيب ليس الرابط الذي فرضناه للمثال. السؤال عن اسم مجهول يبقى قابلًا للاستكمال، لكن الرقم الذي يملأه يحتاج معطى لا رغبة في إزالة الفراغ.

لا يعرض هذا الفرع اختبار توافق تقني أو حكمًا على شرعية رمز أو مشروع. إنه استعمال محدود للشرط الاختياري الذي قرأناه، ثم مقارنة بين عنصر معلوم ووصف غير معلوم. يساعد قارئ أعمال على طلب الحقل الناقص دون إسقاط العنصر من سجله أو اعتباره نسخة من آخر. كما يمنع جعل اكتمال وصف العرض شرطًا لمطابقة لم ينص عليه المثال.

نسختان من البطاقة ليستا عقدين جديدين

تصل إلى رنا صورتان لبطاقة أ في زمن التسليم نفسه. تعرض الأولى الاسم نور، والثانية الاسم نفسه بتنسيق خط مختلف. تظل هوية العنصر واحدة في فرضنا. يمكن أن تسجل ملفين في جدول المرفقات، لكن لا ترفع عدد العقود في الفهرس من ثلاثة إلى أربعة. لم تقدم القصة هوية جديدة لمجرد تغيير الصورة أو شكل النص.

إذا أضافت إحداهما شعارًا واكتفت الأخرى بالكلمات، يبقى الفرق فرقًا في الوثيقتين اللتين أعطيناهما. لا نجعل جودة الرسم دليلًا على صحة مقدار أو جهة، ولا نعطي الصورة الأجمل عنصرًا جديدًا. لم نفحص أصالة الشعارات، ولم ننسبها إلى مؤسسة. يستعمل الملف صورةً للعرض، بينما يستعمل الفهرس تعريف العنصر للربط؛ لكل منهما سؤال مختلف.

في نسخة بديلة تعطي الوثيقتان للمقدار نفسه 80 و 85. لدينا تعارض بين بيانين يرتبطان بأ، لا مقدار 165 من أ. نطلب زمن كل لقطة أو تصحيحًا للمصدر قبل الاختيار. إذا أعلن الكاتب أن 80 لقطة أولى و 85 لقطة ثانية مستقلة، يمكن حساب الفرق 5 وحدات من أ؛ وإذا لم يقدم هذا البيان، لا نحولهما إلى مسار زمني من تلقاء أنفسنا.

وقد يعرض زميل اختصارًا طويلًا للهوية وآخر أقصر في نسختين. في ورقتنا تحفظ رنا النسخة الكاملة أصلًا، وتبين أن الاختصار مجرد عنوان عرض موصول بها. لا تفترض أن أي نصين قصيرين متشابهين يعودان إلى العنصر نفسه؛ يحتاج الربط إلى المعطى الكامل الذي عرفناه. لم نعلّم القارئ طريقة تحقق من عنوان حي، وإنما طريقة حفظ الأصل في دفتر مؤلف.

حين تسلم النسخ، تكتب رنا عدد الملفات وعدد العناصر التي تصفها، وتترك التعارض غير المحسوم ظاهرًا. يستطيع المستلم معرفة سبب وجود مرفقين لعنصر واحد، وسبب احتياج المقادير المختلفة إلى سياق. لا تضيف رسائل التسليم قيمة مالية ولا شهادة سلامة، ولا يقوم نجاح فتح صورة مقام معرفة السجل الذي جاءت منه. هذه حدود الوثائق التي أنشأناها في القصة.

فرز نتائج البحث لا يعين المقصود

نضع قائمة نتائج للبحث عن نور تعرض ب أولًا ثم أ. لا يتغير عدد التطابقات بسبب الترتيب: اثنان. إذا كان الطلب عن أ تحديدًا، لا تصبح ب الإجابة لأن محرك عرض مؤلف وضعها في الأعلى. يشير ترتيب القائمة إلى قرار تنسيق أعطيناه، ولا يثبت شعبية أو مصداقية أو قيمة. نستعمل أرقامًا للمواضع إذا أردنا شرح هذا التنسيق فقط.

في نسخة أخرى نفرز البطاقات بحسب المقادير المعطاة 80 و 30 ، فتظهر أ قبل ب. ثم نؤلف فرعًا بقيمتين 20 و 90 فينعكس الترتيب. لم تتبادل الهويتان أماكنهما في معنى السؤال؛ تغيرت القيم والفرز داخل قصتين مستقلتين. يظل طلب أ بحاجة إلى البطاقة أ سواء ظهرت أولًا أو ثانيًا، ويظل مقدارها تابعًا لنسخة القصة لا للمكان الذي وجدت فيه.

يمكن لزميل أن يختار معيارًا جديدًا مثل وجود شعار، لكنه يصرح بأنه يقارن شكل وثائق مؤلفة. لا نسمي الناتج اختيارًا لأصل موثوق أو توجيهًا للشراء. المصدر ينبه إلى أن الاسم والرمز المتطابقين لا يكفيان للأمان. [2] ونحن لا نستبدل هذا النقص بمعيار جمالي أو رقم اخترناه، ولا نحول جدول العرض إلى تقييم مالي لرموز فعلية.

تطلب رنا في المراسلة اسم الشبكة الثابت في نطاق أمثلتنا وهوية العنصر المقصود واللقطة التي ينتمي إليها المقدار. إذا غاب أحدها، تقول أي حقل لم يصل بدل اختيار بطاقة توافق جزءًا من الطلب. قد يكون السؤال عن الاسم وحده مشروعًا، لكنه عندئذ سؤال عن وصف، لا عن تعيين عنصر واحد إذا كانت نتائج البحث أكثر من واحدة.

يساعد هذا الإجراء على مراجعة الملف بسرعة لأن الخلاف يصبح محددًا: هل تغيرت المعطيات، أم ترتيب عرضها، أم العنصر الذي طلبناه؟ لا يلزم إعادة جمع جميع أرقام الفهرس كي نحل كل خلاف. نحدد موضع الاختلاف ثم نقرأ السؤال المناسب. وتبقى النتيجة داخل شبكة واحدة افترضناها؛ لم نختبر تشابه هويات عبر شبكات أخرى أو نقل أرصدة بينها.

المطابقة لا تمنح قيمة أو ضمانًا

نمنح في نهاية القصة لقطة أولى لمقداري ح:80 من أ و 30 من ب. وفي لقطة ثانية معلنة نعطيه 70 من أ و 45 من ب. فرق أ ناقص 10 من وحداته، وفرق ب موجب 15 من وحداته. لم نعط سعرًا أو حركة تربط هذين التغيرين، فلا نقول إن بيع عشرة من الأول اشترى خمسة عشر من الثاني، أو إن المجموعين قيمتان ماليتان قابلتان للمقارنة.

نستطيع مؤلفًا عرض مسار داخل كل وحدة يفسر نتيجتها، لكن ذلك يحتاج أحداثًا جديدة نعلنها. إمكان كتابة مسار لا يثبت أن هذا هو التاريخ الفعلي للقطة. إذا اكتفت الورقة ببدايتين ونهايتين، نحفظ فروقها فقط؛ وإذا طلبت المراجعة أسباب التغير، نطلب جدول الأحداث. الاسم المشترك لا يوفر الأحداث الناقصة، كما لا يحول مقدارًا من أحد العنصرين إلى مقدار من الآخر.

في فرض مستقل تبقى القيمتان 80 و 30 بين لقطتين. هذا يبين ثبات المقادير التي أعطيناها، لا ثبات سوق أو ضمان بقاء قيمة أصل. لم يقدم المقال بيانات سوق من الأساس. كذلك لا تمنح المطابقة الصحيحة لبطاقة أ ضمان تنفيذ طلب أو قبول جهة خارجية؛ معرفة العنصر الذي قرأناه مختلفة عن تقييم ما يمكن القيام به أو ما سيحصل له.

تجهز رنا بطاقة تسليم تبين الهوية والاسم إن كان معلومًا والرمز إن كان معلومًا، مع مقدار ووحدة ولقطة إن تناولها السؤال. تميز عمود العرض من عمود الربط، وتبقي الأسماء المكررة والحقول الغائبة ظاهرة. يستطيع زميل إعادة المقارنة دون شبكة حية، ومعرفة لماذا كان عدد النصوص اثنين وعدد العناصر ثلاثة في البداية، ولماذا لم يصبح 80 مقدار 110.

يظل المقال تمرينًا على قراءة سجل محدد، لا دليل شراء أو إرسال أو تقييم. تتوقف الإجابة عند ما قدمه الفهرس، مع شرط الشبكة الواحدة الذي حافظنا عليه في جميع المقارنات. وصف جميل قد يساعد على القراءة، لكنه لا يحدد وحده أي بطاقة نعني. عندما يبقى التعريف والعدد والمقدار واللقطة في حقول منفصلة، يستطيع السؤال الحصول على جواب واضح بلا ضمان لم تعطنا إياه البيانات.

المصادر ومتابعة القراءة

  1. EIP20: الحقول (يفتح في نافذة جديدة)eips.ethereum.org
  2. إيثريوم: الهوية (يفتح في نافذة جديدة)ethereum.org
  3. موضوع: مفردات فقط (يفتح في نافذة جديدة)mawdoo3.com

أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.