جميع المشروعات

Supply Chain Tracker

الجامعة · 2025
الفترة
2025
التقنيات
Node.js · Express · Solidity · ERC-1155 · MongoDB · IPFS
Supply Chain Tracker — رسم توضيحي للمفهوم · لا يمثّل شحنة أو سجلًا فعليًا
رسم توضيحي تصوّري · لا يمثّل شحنة أو سجلًا حقيقيًا

كيف بدأت الفكرة

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

المشكلات والقرارات

من الدفعات إلى الرموز

مثّلت الدفعات باستخدام ERC-1155 وواجهات API للنقل والتقسيم والدمج.

فصل البيانات ومقارنتها

البيانات الوصفية العامة موجودة على IPFS. وتخزّن MongoDB البيانات المجمّعة للاستعلام عنها. أدرجتُ فحوصًا للاتساق بين سلسلة الكتل وIPFS وMongoDB لتحديد الاختلافات بين التمثيلات المختلفة للدفعة نفسها.

المفاتيح والمساءلة

في النموذج الأوّلي، تُجري الواجهة الخلفية التوقيع باستخدام مفاتيح اختبار. ولا تزال إدارة المفاتيح والتوقيعات المزدوجة بين المشاركين بحاجة إلى مزيد من العمل قبل الاستخدام الفعلي.

كيف يعمل

  1. تتيح واجهة خلفية مبنية باستخدام Node.js وExpress واجهات REST APIs لإنشاء الدُفعات ونقلها وتقسيمها ودمجها وتحويلها.
  2. تمثّل عقود Solidity ERC-1155 الدفعات وملكيتها على Ethereum. وتربط Ethers.js عمليات التطبيق بسلسلة الكتل.
  3. يخزّن IPFS البيانات الوصفية العامة والمرفقات. وتدعم MongoDB الاستعلامات التجميعية عبر سجلّ الدُفعات والعلاقات بينها.
  4. يُتتبّع انتشار التلوّث عبر الرسم البياني باستخدام BFS. وتظل حالة التلوّث منفصلة عن دورة حياة الدفعة.

تنزيل رسالة الماجستير حول التتبّع (PDF) IT · 3.0 MB

ما تعلمته

علّمتني نمذجة تقسيم دفعات المنتجات وتحويلاتها أن أحدّد العلاقات قبل اختيار طريقة تخزينها. كما يساعدني التمييز بين السجلات الأصلية والبيانات المستخدمة للاستعلام عنها على تكامل الأنظمة.

الحالة الحالية

نموذج أولي لرسالة الماجستير، اختُبر على شبكة Ethereum محلية باستخدام Ganache ومفاتيح اختبار.

المصدر

لديك مشكلة مثيرة للاهتمام؟

أخبرني بما تريد بناءه أو تحسينه، ومن سيستخدمه، وما القيود التي تواجهك. سأتواصل معك لنحدّد معًا نقطة البداية.