عندما ظهرت عملة البيتكوين، لم تكن الفكرة مجرد إنشاء عملة رقمية جديدة، بل كانت الفكرة الأهم هي إثبات أن مجموعة من الأشخاص يمكنهم استخدام سجل مالي مشترك دون الحاجة إلى بنك أو جهة مركزية تدير هذا السجل.
لكن في عام 2014 بدأ سؤال جديد يظهر:
من هنا جاءت فكرة شبكة بلوكتشين الإيثيريوم Ethereum. في ورقتها البيضاء، لم يقدّم فيتاليك بوترين مشروع إيثيريوم باعتباره مجرد عملة منافسة لبيتكوين، وإنما باعتباره منصة عامة يمكن برمجتها لبناء تطبيقات تعمل على شبكة البلوكتشين — وهذه هي الفكرة الأساسية التي سنبني عليها فهم الورقة الكاملة.
أولًا: من أين بدأت الفكرة؟
لفهم فكرة الإيثيريوم، نحتاج أولًا إلى فهم ما الذي كانت بيتكوين تفعله. بيتكوين تستطيع تسجيل عملية مثل:
والشبكة تتحقق من أن أحمد يملك هذه القيمة وأن العملية صحيحة، ثم تسجلها ضمن تاريخ مشترك. لكن ماذا لو أردنا شيئًا أكثر تعقيدًا؟
مثلًا، إمكانية سحب 10% من الأموال يوميًا، أو اشتراط موافقة شخصين من أصل ثلاثة من أجل تحويل الأموال، أو تحويل الأموال بشكل تلقائي إلى طرف معيّن عند حدوث حالة محددة، أو تنفيذ إجراء محدد عند انخفاض قيمة أصل معيّن. هنا تبدأ تظهر حدود النموذج البسيط للعملات الرقمية مثل بيتكوين، التي تملك لغة برمجية بسيطة تسمح ببناء بعض الشروط، لكنها تظل محدودة.
لذلك، كان السؤال الجوهري لمؤسس مشروع الإيثيريوم هو: لماذا لا يتم بناء شبكة بلوكتشين تحتوي على لغة برمجة عامة يمكنها تنفيذ أنواع مختلفة من القواعد؟ وهذا هو الاتجاه الذي اقترحته شبكة بلوكتشين الإيثيريوم.
فكرة غيّرت اتجاه تقنية البلوكتشين
يمكن توضيح الفرق الجوهري بين بيتكوين وإيثيريوم من خلال العبارة التالية:
الإيثيريوم: يعمل على تنفيذ قواعد وبرامج مختلفة دون الحاجة إلى جهة مركزية.
ومن هنا أصبحت شبكة البلوكتشين أكبر من مجرد سجل مالي، حيث يمكن أن تصبح سجلًا بالإضافة إلى آلة لتنفيذ القواعد، وهذا هو جوهر فكرة الإيثيريوم في الورقة: بناء طبقة عامة يستطيع المطورون استخدامها لبناء تطبيقات مختلفة فوقها، بدلًا من تصميم شبكة بلوكتشين تخدم تطبيقًا واحدًا.
أوجه قصور البيتكوين من وجهة نظر الإيثيريوم
تشرح الورقة أن شبكة بلوكتشين البيتكوين قادرة بالفعل على تنفيذ نوع محدود من العقود، مثلًا يمكن تحديد عدم صرف الأموال إلا إذا قدّم شخصان من أصل ثلاثة توقيعات صحيحة — مفيد للحسابات المشتركة وتقديم الضمانات. على أي حال، تم بناء لغة برمجة البيتكوين لتكون محدودة بشكل متعمد لأسباب متعلقة بالأمان، ما يجعل بناء تطبيقات عليها مهمة صعبة جدًا، حيث حددت شبكة بيتكوين عدة قيود، ومنها:
- عدم تمكين الحلقات البرمجية: لا تسمح لغة البيتكوين بتنفيذ برامج تتكرر بشكل مستمر، ما يجعلها أكثر أمانًا من ناحية، لكنه يحد من أنواع البرامج الممكن تنفيذها.
- عدم وجود حالة داخلية معقدة: في بيتكوين، يمكن أن تكون القيمة إما غير مستخدمة أو مستخدمة، لكن من الصعوبة بناء برنامج يتذكر مراحل متعددة.
- لا يمكن للعقد الاستفادة بسهولة من معلومات البلوكتشين: يحد هذا من تطبيقات تحتاج معرفة معلومات محددة، مثل بيانات الكتلة Block أو قيم مرتبطة بالشبكة.
ومن هنا رأى بوترين أن الحل ليس إضافة المزيد من التعقيدات إلى بيتكوين، وإنما بناء منصة جديدة أكثر عمومية.
ماذا تريد شبكة بلوكتشين الإيثيريوم أن تكون؟
تصف شبكة الإيثيريوم نفسها بأنها طبقة أساسية عامة قابلة للبرمجة. أي أنك لا تحصل فقط على شبكة بلوكتشين مخصصة للعملة، بل تحصل على شبكة تستطيع من خلالها تنفيذ قواعد تكتبها أنت. يمكن للمطور أن يقول: إذا حدث الشرط (أ) ابدأ بتنفيذ الشرط (ب)، أو إذا وافق شخصان من ثلاثة بتحويل الأموال، أو إذا مرّ ثلاثون يومًا ابدأ بتنفيذ قاعدة معيّنة، أو حتى قم بتخزين معلومة محددة ولا تسمح بتعديلها إلا إذا تحققت شروط محددة.
يمكن أن تصبح هذه القواعد عقودًا ذكية Smart Contracts، وهنا تبرز أحد أهم أفكار شبكة الإيثيريوم: العقد الذكي ليس مجرد عقد قانوني مكتوب على الإنترنت، بل برنامج يتم تنفيذ قواعده داخل شبكة البلوكتشين.
فكرة العقد الذكي ببساطة
تخيل آلة بيع، تلك الآلة التي لا تحتاج أن تتفاوض معها. تضع أنت المبلغ الصحيح، ثم تختار المنتج، والآلة تنفّذ القاعدة التي صُممت عليها. إذا تحقق الشرط: المبلغ صحيح + المنتج متاح، فإن النتيجة: المنتج يخرج. بنفس الفكرة يعمل العقد الذكي، لكن في عالم رقمي كامل، حيث تكون القاعدة: إذا تحقق الشرط، قم بتنفيذ العملية.
الفرق المهم هو أن تنفيذ القاعدة لا يعتمد بالضرورة على موظف أو شركة تنفّذها يدويًا، بل تنفّذها الشبكة وفق القواعد البرمجية الموجودة في العقد. وهذا هو السبب الذي جعل شبكة الإيثيريوم ترى نفسها أساسًا لتطبيقات كثيرة لم تكن العملة الرقمية وحدها قادرة على تقديمها.
السؤال الأهم: من يقوم بتنفيذ البرامج؟
هنا تظهر فكرة مهمة جدًا، وهي Ethereum Virtual Machine (EVM)، بيئة حاسوبية داخل شبكة الإيثيريوم تعمل على تنفيذ البرامج الموجودة على شبكة البلوكتشين، بدل حصر البلوكتشين في كتابة المعاملات فقط. تعمل الشبكة على الاتفاق على نتيجة تنفيذ هذه التعليمات، فإذا كان العقد يقول: أرسل 5 وحدات إلى أحمد إذا تحقق الشرط، فإن المطلوب أن تصل أجهزة الشبكة إلى النتيجة نفسها. لذلك لا تعمل الإيثيريوم على نقل البيانات فحسب، بل تجعل الشبكة قادرة على تنفيذ منطق برمجي مشترك.
الحسابات في شبكة بلوكتشين الإيثيريوم
تعتمد المعاملات في البيتكوين على نموذج يُدعى UTXO، أما في تصميم الإيثيريوم المقترح، فإن الحالة العامة للشبكة تتكون من حسابات Accounts، ميّزتها الورقة إلى نوعين:
- حساب يملكه المستخدم: يُتحكم فيه بواسطة مفتاح خاص، مثل حساب شخص يريد إرسال عملة Ether.
- حساب العقد: يحتوي على كود برمجي، ويبدأ بتنفيذ الكود الموجود فيه بمجرد أن يتلقى رسالة.
وهنا يظهر الفرق المهم: في شبكة الإيثيريوم، لا يمثل الحساب شخصًا فقط، بل يمكن أن يمثل برنامجًا أيضًا — وهذه الفكرة هي التي تجعل العقد الذكي جزءًا أساسيًا من النظام.
ما هو Ether؟
يجب ألا نخلط بين Ethereum وEther، حيث أن الإيثيريوم هي المنصة أو الشبكة، بينما الإيثر هي الوحدة الرقمية المستخدمة داخل هذه الشبكة. تقوم الإيثر بوظيفتين أساسيتين:
- وسيلة لتبادل القيمة.
- وسيلة لدفع تكلفة تنفيذ العمليات داخل الشبكة (مهمة جدًا لفهم فكرة الإيثيريوم).
ولو كان تنفيذ البرنامج مجانيًا، لواجهت الشبكة خطر استخدام الموارد بلا حدود، لذلك احتاج النظام إلى طريقة تجعل استخدام موارد الشبكة له تكلفة، وكانت الطريقة هي استخدام Gas.
مفهوم Gas
يُعد مصطلح Gas أحد أهم المصطلحات في مشروع شبكة الإيثيريوم، ولا يعني الوقود بالمعنى الحرفي، بل هو طريقة لقياس كمية العمل الحاسوبي التي تحتاجها العملية. تخيل أنك تدخل مركزًا للخدمات وتقول: أريد تنفيذ عملية محددة، وكلما كانت العملية أكثر تعقيدًا، احتجت موارد أكثر. لذلك، يدفع المستخدم مقابل الموارد التي يستهلكها البرنامج. حددت ورقة الإيثيريوم قيمتين مهمتين:
- STARTGAS: الحد الأقصى لكمية العمل التي يسمح المستخدم بتنفيذها.
- GASPRICE: السعر الذي يحدده المستخدم لكل وحدة من هذا العمل.
لماذا نحتاج إلى Gas؟
السبب المباشر هو منع البرامج من استهلاك الشبكة بطريقة غير قابلة للإيقاف. تخيل برنامجًا يطلب من الشبكة تنفيذ أمر إلى الأبد ولا يتوقف أبدًا — قد يعطّل هذا جميع الموارد لخدمة مستخدم واحد فقط. لكن شبكة الإيثيريوم تقول: أنت تحدد مسبقًا الحد الذي يمكنك إنفاقه على تنفيذ البرنامج. وإذا انتهى Gas قبل انتهاء التنفيذ، تتوقف العملية تلقائيًا وتُلغى تغييرات الحالة، بينما تبقى رسوم التنفيذ مستحقة. بهذه الطريقة، لا يستطيع البرنامج الاستمرار بلا نهاية على حساب موارد الشبكة.
هذا يقودنا إلى فكرة جوهرية: Turing Complete
عندما تشير شبكة الإيثيريوم إلى أنها آلة Turing Complete، فهي تقصد أن لغة البرمجة تستطيع تنفيذ مجموعة واسعة جدًا من أنواع الحسابات والبرامج، أي أن الشبكة لم تُصمم لتكون آلة بعدد محدود من الوظائف، بل منصة عامة يمكن برمجتها لتنفيذ قواعد مختلفة. لكن هذه الحرية لها مشكلة: قد تحتوي بعض البرامج على حلقات لا نهائية، ولذلك تعود فكرة Gas مرة أخرى لتقول ببساطة: أعطت الإيثيريوم المطور حرية أكبر في البرمجة، ثم وضعت عدادًا يمنع هذه الحرية من استنزاف موارد الشبكة.
كيف تتغير حالة الشبكة؟
من المفاهيم الأساسية التي قدّمتها الورقة البيضاء لشبكة الإيثيريوم: الحالة State، التي يمكن تخيلها بأنها صورة للشبكة في لحظة معيّنة. مثلًا:
ثم عند تنفيذ المعاملة، إذا أرسل أحمد 20 إلى محمد تتغير الحالة لتكون:
تُسمّى هذه الفكرة State Transition، أي الانتقال من حالة إلى حالة جديدة نتيجة تنفيذ معاملة. وهذا المفهوم مهم جدًا لأن شبكة الإيثيريوم لا تعمل على تسجيل حدث المعاملة فقط، بل يتجاوز الأمر إلى معرفة الحالة الجديدة للشبكة بعد تنفيذ هذه المعاملة.
ماذا يحدث عندما يرسل المستخدم معاملة محددة؟
يمكن تبسيط العملية بهذه الطريقة: ينشئ المستخدم المعاملة، ثم تُضاف بيانات وتعليمات على المعاملة، ثم تتحقق الشبكة من صحتها، ثم يُدفع تكلفة التنفيذ، ثم تُنفَّذ العملية، ثم تتغيّر حالة الشبكة. هذه التغييرات تصبح جزءًا من الحالة التي تتفق عليها الشبكة.
ماذا لو كانت المعاملة تتعامل مع عقد ذكي؟
هنا تصبح الفكرة أكثر إثارة، فبدلًا من أن يكون الطرف الآخر شخصًا فقط، يمكن أن يكون برنامجًا. ترسل أنت رسالة، يقرأ البرنامج تلك الرسالة، ثم تُنفَّذ القاعدة الموجودة بداخله. والنتيجة إما تغيير البيانات، أو انتقال القيمة، أو إرسال رسالة إلى عقد آخر، أو إنشاء عقد جديد. لذلك تتمتع العقود في شبكة الإيثيريوم بقدرات قريبة من قدرات الحسابات الخارجية — العقد ليس مجرد ملف جامد، بل يمكنه المشاركة في تنفيذ عمليات أخرى.
ما هو الاختلاف الجذري في هذه الفكرة؟
الفكرة الرئيسية أننا لم نعد نحتاج إلى إنشاء شبكة بلوكتشين مستقلة لكل فكرة. فلو أردت إنشاء عملة رقمية جديدة، يمكنك بناء عقد على شبكة الإيثيريوم يحدد من يملك الوحدات، وكيفية انتقالها، وملكية كل شخص منها، بدلًا من إنشاء شبكة كاملة من الصفر. بذلك، يصبح إنشاء بعض أنواع الأصول الرقمية أقرب إلى كتابة برنامج على منصة موجودة مسبقًا — وهذا هو السبب الذي جعل شبكة الإيثيريوم طبقة عامة يمكن بناء تطبيقات كثيرة فوقها.
أمثلة على التطبيقات المتخيَّلة في الورقة
إنشاء Token
منطق التوكن في شبكة البلوكتشين بسيط جدًا: طرح X من رصيد الطرف الأول وإضافته إلى رصيد أحمد، بشرط أن يكون أحمد مالكًا لهذه القيمة، وأن يكون التحويل مصرّحًا به. بذلك يمكن بناء نظام يمثّل عملة رقمية، أسهمًا، أصلًا رقميًا، قسيمة، نقاطًا، أو وحدة رقمية تمثل أي شيء آخر. الفكرة المهمة هنا: شبكة الإيثيريوم لا تحتاج معرفة مسبقة بما يمثله التوكن، لأن المطور هو من يكتب العقد.
العقود المالية
تتخيل الورقة أيضًا عقودًا مالية أكثر تعقيدًا: شخصان يضعان أموالًا في عقد ذكي، ثم بعد ثلاثين يومًا يُنفَّذ العقد قاعدة محددة لتوزيع الأموال. لكن هناك مشكلة مهمة يجب التنبيه إليها: كيف يعرف العقد شيئًا يحدث خارج البلوكتشين؟ مثل سعر الريال، درجة الحرارة، أو نتيجة المباريات. هذه المعلومات لا توجد داخل شبكة البلوكتشين، لذلك تحتاج العقود إلى مصدر خارجي للبيانات، وهو ما يُشار إليه بمفهوم Data Feed أو ما أصبح يُعرف بفكرة Oracle.
نظام الأسماء والهوية
لا تتوقف فكرة مشروع الإيثيريوم عند المال، بل تقترح إمكانية بناء نظام لتسجيل الأسماء. فبدل التعامل مع عنوان رقمي طويل، يمكن أن يكون لديك اسم مسجّل على الشبكة، بطريقة تشبه قاعدة بيانات: الاسم ← المعلومات المرتبطة به. الميزة هنا أن تسجيل الاسم يصبح جزءًا من النظام اللامركزي، وهنا تبدأ البلوكتشين بالتحول من سجل للأموال إلى سجل عام يمكن تخزين أنواع مختلفة من المعلومات والقواعد عليه.
التخزين اللامركزي
تطرح الورقة فكرة استخدام المساحات التخزينية غير المستعملة لدى المستخدمين، من خلال بناء سوق لامركزي: شخص لديه مساحة تخزين يؤجرها لشخص آخر يخزّن ملفاته عنده، بدل أن تكون كل ملفات العالم موجودة لدى عدد قليل من الشركات. وبينما يتحقق العقد من استمرار التخزين، يحصل صاحب المساحة على مقابل لذلك. الفكرة الأساسية: تحويل الموارد غير المستغلة لدى المستخدمين إلى خدمة يمكن بيعها بطريقة لامركزية.
الشركات والمنظمات: DAOs
شرحت الورقة أحد أكثر أفكارها طموحًا، وهي المنظمات المستقلة اللامركزية Decentralized Autonomous Organization (DAO). تخيل شركة تضع أجزاء من قواعدها في برنامج على البلوكتشين، بدل تدوينها في وثائق قانونية وإدارية: أحقية التصويت، كيفية اتخاذ القرار، وقت صرف الأموال، كيفية إضافة أو إزالة عضو، وعدد الأصوات اللازمة لتغيير قاعدة متفق عليها. يمكن تحويل هذه القواعد إلى منطق برمجي، فيصبح جزء من إدارة المنظمة قابلًا للتنفيذ تلقائيًا بواسطة النظام.
تطبيقات أخرى تخيّلتها الورقة
- محافظ ادخار: وضع قواعد تحدد مقدار ما يستطيع كل طرف سحبه.
- التأمين الزراعي: ربط العقد ببيانات الطقس، بحيث يحصل المزارع على تعويض إذا حدثت حالة جوية معينة.
- أسواق التنبؤ: استخدام العقود لإنشاء أسواق تعتمد على توقع نتائج الأحداث.
- الضمان متعدد التوقيع: تحديد عدد الأطراف المطلوبة للموافقة على استخدام الأموال.
- الحوسبة السحابية: تصور سوق لامركزي للموارد الحاسوبية.
- الأسواق اللامركزية: إنشاء أسواق تعتمد على العقود الذكية بدل منصة مركزية تقليدية.
هل تحل شبكة الإيثيريوم كل شيء؟
بشكل مباشر: لا. وهذه نقطة مهمة في فهم الورقة، حيث ناقش بوترين عدة مشكلات صراحة، أهمها:
- مشكلة الرسوم: كل عملية تحتاج موارد من الشبكة، لذلك لا يمكن السماح لأي شخص بإغراق الشبكة بعمليات بلا تكلفة.
- مشكلة المركزية في التعدين: إذا أصبح التعدين أكثر كفاءة لدى عدد قليل من الجهات، فقد تزداد المركزية.
- مشكلة قابلية التوسع: إذا كان كل جهاز مطالبًا بمعالجة كل عملية، فإن زيادة عدد العمليات يمكن أن تسبب مشكلة.
- مشكلة البيانات الخارجية: لا تعرف الأجهزة تلقائيًا ما يحدث خارج شبكة البلوكتشين.
- مشكلة البرامج غير المنتهية: لذلك احتاجت شبكة الإيثيريوم إلى فكرة Gas.
قابلية التوسع: المشكلة التي ظهرت مبكرًا
تتوقع الورقة أن نمو التطبيقات والمعاملات سيخلق ضغطًا على الشبكة، لأن كل عملية تحتاج معالجة من قبل الأجهزة، وتحذّر من سيناريو قد تصبح فيه البيانات ضخمة جدًا بحيث لا يستطيع تشغيل الأجهزة بشكل كامل إلا عدد قليل من الجهات الكبيرة. وهنا تظهر المشكلة: إذا أصبحت الشبكة تعتمد على عدد قليل جدًا من المشاركين، فقد تفقد جزءًا من اللامركزية التي قامت من أجلها. وهذا يوضح أن قابلية التوسع لم تكن مشكلة ظهرت بعد سنوات من الإطلاق، بل كانت موجودة في الجوهر الأصلي للمشروع منذ انطلاقه.
الخلاصة: ماذا اخترعت شبكة بلوكتشين الإيثيريوم في جوهرها؟
أثبتت شبكة بيتكوين أنها تستطيع أن تكون سجلًا لامركزيًا للقيمة، بينما اقترحت شبكة الإيثيريوم أن يكون ذلك السجل قابلًا للبرمجة، بحيث لا نستخدمه فقط لنقل الأموال، بل لبناء قواعد وتطبيقات ومنظمات تعمل فوقه.
لذلك فإن أهم كلمة في فهم شبكة الإيثيريوم هي القابلية للبرمجة، وهي الفكرة التي نقلت تقنية البلوكتشين من سجل للمعاملات إلى منصة يمكن بناء تطبيقات عليها. وهذا ما جعل شبكة الإيثيريوم أكبر من أن تكون عملة رقمية جديدة، لتصبح طبقة أساسية عامة يمكن بناء تطبيقات مالية وغير مالية فوقها.
شبكة بلوكتشين الإيثيريوم هي محاولة لتحويل تقنية البلوكتشين من دفتر يسجّل ما حدث، إلى منصة تستطيع تنفيذ قواعد لما يجب أن يحدث.