الميزات الأخيرة وخريطة الطريق لعام 2016

عقدة المصدر: 1576913

تحديث من طابق مصنع MultiChain

كتغيير من مشاركات المدونة حول blockchains بشكل عام ، أود تقديم تحديث حول متعدد السلاسل، من حيث التحسينات الأخيرة وخريطة الطريق لعام 2016.

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

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

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

إذن ، أين تتوافق MultiChain مع كل هذه الضوضاء؟ باختصار ، إنها تركز على المنتج والعملية:

  • استقرار. عن طريق التفرع من بيتكوين الأساسية، التطبيق المرجعي لشبكة البيتكوين ، تعتمد MultiChain على سنوات من الاستقرار والأمن المكتسبين بصعوبة والتي تأتي من رعاية مليارات الدولارات من قيمة العملة المشفرة على الإنترنت المفتوح. لتوضيح الأمر ، فإن قاعدة كود Bitcoin Core لها قيود معمارية ، وقد نضطر في النهاية إلى الابتعاد عنها. ومع ذلك ، بالنسبة لمتطلبات المستخدم الحالية ، فإن تكلفة القيام بذلك ستفوق الفوائد بشكل كبير.
  • سهولة الاستخدام. أخبرنا العديد من مستخدمي MultiChain أنه أسهل بكثير من استخدام منصات blockchain المنافسة. لا أستطيع حتى أن أتذكر عدد المرات التي أخبرت فيها شخصًا ما بأنه يمكنه الانتقال من الصفر إلى بلوكشين الخاص به في دقائق ، ولم يصدقوني. لكن هذا حقيقي - فقط اتبع التعليمات الموجودة على بإمكانك تحميله و الشروع في العمل الصفحات وانظر بنفسك. لا تبعيات ، لا تجميع ، لا تعبث مع Docker. فقط ثلاثة ملفات تنفيذية قائمة بذاتها وملف README.
  • المميزات. عندما تم إصدار MultiChain لأول مرة ، كان لديها ميزات أقل بكثير من اليوم. لا يوجد تحكم في العنوان لكل الأصول ، ولا معاملات التبادل الذري ، ولا بيانات وصفية سهلة للمعاملات. فكيف نقرر ما نضيف؟ بسيط - نستمع لمستخدمينا. في بعض الأحيان يعرفون بالضبط ما يريدون ، مثل متابعة إصدار الأصول ، ويسعدنا أن نلزمهم. في أوقات أخرى ، يعرفون ما يريدون تحقيقه ، ولكن لا يعرفون كيف يعبرون عن ذلك كميزة ، ومهمتنا هي العمل عليه. في كلتا الحالتين ، فإن خريطة طريق MultiChain مدفوعة بلا هوادة بتعليقات المستخدمين ، وبالتالي ستستمر.
  • توافق Bitcoin. إذا كنت تقوم ببناء حل blockchain ، فستجد أن العقدة ليست سوى جزء صغير من الصورة. قد تحتاج إلى محافظ للهواتف المحمولة أو الويب ، وحلول إدارة المفاتيح ومكتبة ببعض اللغات الغامضة لفك رموز المعاملات والتوقيع عليها وترميزها. تم تصميم MultiChain لجعل كل هذا بسيطًا وسريعًا قدر الإمكان ، من خلال الحفاظ على التوافق الأقصى مع البيتكوين ، والذي يتوفر به قدر كبير من المعلومات والأدوات والرموز مجانًا. لإثبات هذه النقطة ، يمكن لـ MultiChain يتم تكوينه كعقدة على شبكة البيتكوين.

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

متابعة إصدار الأصول (ألفا 17)

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

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

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

مكالمات API: issue, issuefrom, issuemore, issuemorefrom, listassets, getinfo استجابات burnaddress الميدان.

مستكشف MultiChain

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

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

وضع الأوامر التفاعلية (ألفا 16)

باعتبارها شوكة من Bitcoin Core ، ورثت MultiChain bitcoin-cli الأداة ، التي أعيدت تسميتها بشكل مناسب multichain-cli بالتاكيد. توفر هذه الأداة واجهة سطر أوامر ملائمة لـ MultiShain JSON-RPC API ، مما يسمح بإرسال مكالمات API من سطر أوامر النظام ، مع عرض ردودها في المحطة. وراء الكواليس ، يقرأ بيانات اعتماد API من ملف تهيئة السلسلة المناسبة ، ويقوم بإنشاء طلب JSON-RPC وفك تشفير استجابته.

كمستخدمين لـ MultiChain بأنفسنا ، كان أحد الإحباط الذي كان لدينا multichain-cli يجب تشغيله بشكل منفصل لكل طلب API. وبصرف النظر عن النفقات العامة للنظام ، فإن هذا يمنع نوع التفاعل المرن الذي توفره قواعد بيانات SQL. وهكذا أصلحناه. اعتبارًا من alpha 16 ، إذا قمت بتشغيل multichain-cli [chain-name] بدون أمر ، يتم وضعك في وضع تفاعلي يتيح لك كتابة الأوامر بشكل متكرر ورؤية استجابتها. يدعم الوضع التفاعلي ميزات التحرير القياسية مثل السجل (السهمان لأعلى ولأسفل) والقفز إلى بداية السطر (Ctrl A) أو النهاية (Ctrl E) والانتقال إلى الكلمة التالية (Ctrl →) والكلمة السابقة (Ctrl ←) .

تحقق أسرع من التوقيع (ألفا 15)

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

قدمت الإصدارات الأخيرة من Bitcoin Core مكتبة جديدة للتوقيع والتحقق من ECDSA تسمى libsecp 256 ك 1. هذه المكتبة مكتوبة من الصفر مطوري blockchain من الطراز العالمي، ويزيل التبعية على OpenSSL ، ويحل مشاكل قابلية الطرق ، ويؤدي بشكل أسرع عدة مرات. واحدة من فوائد كونها مشتقة من Bitcoin Core هي أن MultiChain يمكنها الاستفادة من هذه الأنواع من التحسينات ، والتي تتم مراجعتها واختبارها على نطاق واسع قبل نشرها في شبكة bitcoin. وهكذا يفعل alpha 15 ذلك بالضبط مع libsecp256k1.

تفعيل الإذن (ألفا 14)

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

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

واجهات برمجة تطبيقات معاملات المحفظة (ألفا 13)

باعتبارها شوكة من Bitcoin Core ، ورثت MultiChain بعض السيئ جنبًا إلى جنب مع الخير. واحدة من النقاط الضعيفة في Bitcoin Core هي واجهة برمجة التطبيقات لاسترداد المعلومات حول المعاملات في محفظة العقدة المحلية. يقدم خيارين: (أ) ال getrawtransaction المكالمة التي ترمز إلى المحتوى الثنائي للمعاملات ، ولكنها لا توضح كيف أثرت على المحفظة المحلية ، و (ب) gettransaction و listtransactions المكالمات التي تهدف إلى وصف المعاملات من منظور المحفظة ، ولكنها تفعل ذلك بطريقة مربكة ، مع عناصر استجابة متعددة لكل معاملة. مما يزيد الأمور سوءًا ، لا يمكن بسهولة توسيع مخرجات هذه المكالمات للعمل مع تطبيق MultiChain للأصول التي تصدرها blockchain.

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

مكالمات API: listwallettransactions, getwallettransaction, listaddresstransactions, getaddresstransaction.

التطلع إلى 2016

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

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

ما الذي يحفز هذه الميزة؟ ملاحظاتك ، بالطبع ، التي علمتنا أن التخزين غير القابل للتغيير للأغراض العامة هو حالة استخدام شائعة جدًا في blockchains. وإذا رأينا في أي وقت طلبًا كبيرًا على "العقود الذكية" (أي حساب على سلسلة الكتل) في MultiChain ، يمكن أن يعمل هذا النظام كطبقة تخزين أساسية ، مع إجراء حسابات لكل عقدة ، عند اللزوم. كما فعلت وأوضح سابقا، هناك قيمة ضئيلة في مطالبة كل عقدة في blockchain خاصة بإجراء حسابات على السلسلة في الوقت الحقيقي.

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

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

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

إذا كنت مهتمًا بمناقشة الإصدار المميز من MultiChain ، فيرجى إرسال بريد إلكتروني premium@multichain.com or استخدم هذا النموذج. يسعدنا أن نتعرف على متطلباتك ونرى كيف يمكننا تلبيتها.

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

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

وأخيرًا ، شكرًا لك على القراءة ، وكونك مستخدمًا مبكرًا لمنصة MultiChain.

الطابع الزمني:

اكثر من متعدد السلاسل