الهدف من هذا المشروع هو تطوير نسخة لا مركزية من بروتوكول لوروان بفضل استخدام blockchain. نسمي هذا البروتوكول الجديد لورا ماك. بالإضافة إلى ذلك ، تم تطوير حالة الاستخدام اللامركزية كامتداد. الامتداد concit في المكافآت في الشبكات المصدر الحشود.
تم تطوير بروتوكول جديد يحل محل بروتوكول Lorawan الحالي. بدلاً من استخدام التشفير المتماثل مثل Lorawan ، فإنه يستخدم التشفير غير المتماثل من أجل توفير عدم التعيد بالإضافة إلى السرية والأصالة. يتم إنشاء زوج المفاتيح بين القطاعين العام والخاص باستخدام منحنيات الإهليلجي. يتم استخدام هذا الزوج الرئيسي للتوقيع على محتوى الرسالة المتبادلة بين كيانين. يتم إنشاء مفتاح سياسي يستخدم لتشفير محتوى الرسائل بين الكيانين باستخدام المفتاح الخاص للمرسل والمفتاح العام للمستقبل. يتم هذا الإجراء باستخدام ECDH ثم عن طريق تطبيع المفاتيح مع HKDF.
يتم استخدام COSE كتنسيق للحزم التي تعرّضها بين الكيانات التي تشارك في البروتوكول. وبالتالي يتم تشفير الحزمة في رسالة COSE_ENCRYPT0 ثم يتم إضافة cose_countersignature داخلها. منذ وقت تطوير هذا المشروع ، COSE_CounterSignature حيث لم يتم تطويره بالفعل في مكتبة Pycose ، تم إجراء شوكة من المكتبة التي تحتوي على توقيع مضاد.
يتمثل التحدي في حالة استخدام المكافآت في انبعاث المعاملات الدقيقة (بترتيب بضعة سنتات) لدفع الرسائل المرسلة بواسطة بوابة. في الواقع ، فإن القيام بذلك أصليًا على ethereum blockchain سيكلف الرسوم أكثر من الرسوم الدقيقة الفعلية. وبالتالي ، تم تجربة طريقتين لتوسيع نطاق السلسلة (تحجيم الطبقة 2):
ينقسم المشروع إلى 4 مكونات رئيسية:
يتكون الجهاز النهائي من توت العليق متصل من خلال المسلسل إلى lopy. وبالتالي ، يتم تقسيم الجهاز النهائي إلى دليلان: /lora_device و /lopy. هناك المزيد من الإرشادات حول كيفية تشغيل البرنامجين داخل كل دليل.
يمكن تشغيل دليل /forwardingnetworkserver على Raspberry Pi بمثابة بوابة. يتوافق البرنامج مع مشروع توجيه Network Packet.
Blockchain المستخدم لهذا المشروع هو Ethereum. يمكن العثور على العقد الذكي الذي تم نشره لهذا الغرض في دليل /blockchain /العقود.
يتم تقسيم دليل /Server إلى 3 أدوات فرعية: /خادم التطبيق ، /homenetworkserver ، /الدفع. يتم تعبئة الخادم الذي يتكون من نهاية خلفية ، واجهة أمامية وخدمة دفع ، في مثيل Docker من أجل نشره بسهولة على خادم.