استراتيجيات البرامج التجريبية/الترخيص [مغلق]

StackOverflow https://stackoverflow.com/questions/104291

  •  01-07-2019
  •  | 
  •  

سؤال

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

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

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

التطبيق موجود في .NET 2.0، إذا كان ذلك مهمًا.

هل كانت مفيدة؟

المحلول

يحرر:يمكنك جعل نظام الترخيص الحالي الخاص بك أكثر صعوبة في اختراقه عن طريق تخزين معلومات التسجيل في هيئة الأمان المحلية (LSA).لن يتمكن معظم المستخدمين من إزالة معلوماتك الأساسية من هناك.يجب أن يوفر لك البحث عن LSA على MSDN المعلومات التي تحتاجها.

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

وهذا رأيي الشخصي في الموضوع.سيكون هناك أفراد صريحون لا يوافقون على ذلك.

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

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

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

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

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

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

نصائح أخرى

ليس هناك فائدة كبيرة من القيام بخطط حماية معقدة.في الأساس سيحدث أحد أمرين:

  1. تطبيقك ليس مشهورًا بدرجة كافية، ولا أحد يخترقه.

  2. يصبح تطبيقك شائعًا، ويقوم شخص ما بكسره وإصداره، ثم يمكن لأي شخص ليس لديه أي معرفة أن يقوم ببساطة بتنزيل هذا الكراك إذا أراد خداعك.

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

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

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

جرب مجموعة أدوات كومبيوتري كومبيوتري.لقد تم تطويره بواسطة Microsoft وقد يحتوي على بعض الميزات الأخرى التي تريدها.

http://msdn.microsoft.com/en-us/vs2005/aa718342.aspx

إذا كنت تخطط لمواصلة تطوير برنامجك، فقد تفكر في نموذج الفدية:

http://en.wikipedia.org/wiki/Street_Performer_Protocol

بشكل أساسي، تقوم بتطوير تحسينات للبرنامج، ثم تطلب مبلغًا معينًا من التبرعات قبل إصدارها (بدون أي إدارة الحقوق الرقمية).

إحدى الطرق للقيام بذلك والتي تكون سهلة للمستخدم ولكنها ليست لك هي كتابة تاريخ انتهاء الصلاحية وإنشاء إصدارات جديدة من برنامج التثبيت بين الحين والآخر...:)

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

يمكنك إنشاء إصدار أكثر تقدمًا قليلًا من مخططك عن طريق طلب اتصال بالإنترنت والسماح للخادم بإنشاء المفتاح التجريبي.إذا فعلت شيئًا على غرار علامة Sign(hash(unique_computer_id+when_to_expire)) وسمحت للتطبيق بالتحقق باستخدام مفتاح عام من أن خادمك قد وقع على تاريخ انتهاء الصلاحية، فيجب أن يتطلب اختراقًا "حقيقيًا" لتجاوزه.

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

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

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

بالطبع سيؤدي حذف كلا المفتاحين وإعادة تثبيت التطبيق إلى بدء وقت التقييم مرة أخرى.

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

لذا، في النهاية، أنا فقط أحقق الهدف المتمثل في جعل اختراق التطبيق ليس سهلاً للغاية، وهذا ما أعتقد أنه سيمنع 80-90% من العملاء من القيام بذلك.وبعد كل شيء:وبما أن التطبيق يُباع بسعر منخفض جدًا، فليس هناك أي مبرر لاستثمار المزيد من الوقت في هذه المشكلة أكثر مما لدي بالفعل.

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

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

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

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

في مثل هذه الظروف، لا أعتقد حقًا أن ما تفعله مهم.إذا كان لديك نوع من الحماية فسيؤدي ذلك إلى إيقاف 90% من المستخدمين لديك.الـ 10% الأخرى - إذا كانوا لا يريدون الدفع مقابل برنامجك، فسوف يجدون طريقة للالتفاف حول الحماية بغض النظر عما تفعله.

إذا كنت تريد شيئًا أقل وضوحًا، فيمكنك وضع ملف في System32 يبدو وكأنه ملف نظام يتحقق التطبيق من وجوده عند التشغيل.يمكن أن يكون تعقب ذلك أصعب قليلاً.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top