it-swarm.asia

آمن وورد دفع البرنامج المساعد

أرغب في إنشاء مكون إضافي لبرنامج WordPress ، لكنني أريد أيضًا التأكد من أنه لا يمكن استخدام المكون الإضافي إلا بعد تنشيطه باستخدام مفتاح تسلسلي يجب أن يكون فريدًا لكل مجال.

ما هي أفضل طريقة للقيام بذلك على افتراض:

  1. يتعين علي إعطاء الكود المصدري الفعلي للمستخدمين ولا يمكن أن يكون لدي نوع من أمان VideoPress - وهو مجرد برنامج JavaScript للمحتوى الفعلي الذي يأتي من خادم المكون الإضافي.
  2. أريد التأكد من أن المبتدئ إلى المتوسط ​​PHP لن يتمكن مطور البرامج من حماية الأمان بسهولة.
5
Adhip Gupta

الخيار 1 - معالجة بعض البيانات على نظامك

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

الخيار 2 - تشفير البيانات المخزنة ويتطلب مفتاح فك تشفير مستضاف

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

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

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

الخيار 3 - الحد من ميزات الإصدار "المجاني"

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

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


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

4
EAMann

لا يمكنك إخفاء الكود المصدري بعيدًا عن مستخدمي WordPress ولا يُسمح لك بالحد من إعادة توزيع المكون الإضافي بسبب آثار الترخيص.

أنت بصدد إنشاء مشتق من WordPress مع المكون الإضافي الخاص بك وللمستخدمين الحق في الحصول على مصدره وإعادة توزيعه بحرية (راجع الحريات الأربع في البرامج المجانية ).

بافتراض أن WordPress مرخص بموجب GPLv2 ولديك عملاء من غير الولايات المتحدة ، يجب عليك التعامل مع الآثار المترتبة على انتهاك GPL الذي قد يكون لديك في منتجك ("المحمي").

أنت تحاول تطبيق تأمين بائع لمستخدميك.

3
hakre

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

2
John P Bloch