2009-04-06 13 views
7

जावा एप्लिकेशन में लाइसेंस प्रवर्तन को लागू करने का सबसे अच्छा तरीका क्या है, ताकि एप्लिकेशन को "वितरित" नहीं किया जा सके और उपयोगकर्ता को लाइसेंस खरीदने के बिना उपयोग किया जा सके?सर्वश्रेष्ठ अभ्यास: जावा डेस्कटॉप एप्लिकेशन के लिए लाइसेंस प्रवर्तन

+0

ध्यान दें कि आप यहां लाइसेंस प्रवर्तन के बारे में बात कर रहे हैं। लाइसेंस नहीं है। लाइसेंसिंग तकनीकी समस्या नहीं है, यह एक कानूनी समस्या है। –

उत्तर

8

मेरा सुझाव है कि आप कॉपी सुरक्षा जोड़ने का प्रयास भी न करें। आप सिर्फ लोगों को परेशान करेंगे। यदि आपके उत्पाद की तरह लोग आपको बिक्री प्राप्त करने की अधिक संभावना रखते हैं। छोटे होने और चोरों जैसे ग्राहकों का इलाज करने में मदद नहीं मिल रही है। (जब तक कि उत्पाद वास्तव में बेकार न हो, और आपको लोगों को खरीदने से पहले इसे आजमाने में सक्षम होना चाहिए।)

आप एक लाइसेंस कुंजी भेजना चाहते हैं जिसका एकमात्र उद्देश्य उन उपयोगकर्ताओं को संतुष्ट करना है जो कुछ प्राप्त करना चाहते हैं उनके पैसे के लिए। यह दिखाने के लिए कि कहीं भुगतान किया गया है या नहीं, बस एक स्थिति जोड़ें। स्थिति को स्पष्ट रूप से स्पष्ट होना चाहिए ताकि यह स्पष्ट हो कि कुछ हुआ है (एक उत्पाद जो मैंने पहले समय पर काम किया था, फ्लॉपी दो डिस्क पर आया - समर्थन कॉल का आधा था क्योंकि इंस्टॉलर ने दूसरे [win32s] के लिए नहीं पूछा था डिस्क)।

+0

मैं पूरी तरह से सहमत हूं, 'नागावेयर' और आर्केन प्रति-सुरक्षा तंत्र मुझे सॉफ़्टवेयर के लिए भुगतान नहीं करना चाहते हैं। – karim79

+1

वैसे भी जावा कोड की सुरक्षा में बहुत कम बिंदु है। मैं जावा सॉफ़्टवेयर के एक बहुत महंगा टुकड़े पर काम करता हूं, जहां तक ​​मेरा संबंध है, सबसे लक्स लाइसेंसिंग व्यक्ति को ज्ञात है। –

+3

मैं असहमत हूं। यदि लाइसेंस के बिना कार्यक्रम का उपयोग करना आसान है तो अधिक लोग लाइसेंस नहीं खरीदेंगे। आपको यह सुनिश्चित करना होगा कि उपयोगकर्ता महसूस करते हैं कि उन्हें सॉफ़्टवेयर के लिए भुगतान करना होगा। – Jules

7

truelicense पर एक नज़र डालें जो कि ऐसा करने के लिए एक ओपन सोर्स फ्रेमवर्क है। यदि आप अपना खुद का बनाना चाहते हैं तो कुछ दस्तावेज हैं जो अवधारणाओं को बताते हैं और आप कोड को देखकर शायद कुछ अच्छे विचार भी प्राप्त कर सकते हैं।

संपादित करें: उल्लेख है कि यह एक कॉपी-संरक्षण योजना

2

नहीं है व्यक्तिगत रूप से मुझे लगता है कि इंटेलीजे यह सही हो जाता है लायक: 30 दिनों के लिए पूरी तरह से विशेषताओं संस्करण। आपको इससे ज्यादा प्रतिबंध नहीं होना चाहिए।

"पूरी तरह से विशेष रुप से प्रदर्शित" हिस्सा महत्वपूर्ण है। यदि आपका अपंजीकृत संस्करण बेकार होने के लिए इतना अपंग है, तो आप लोगों को यह खरीदने का फैसला कैसे करते हैं? उन्हें तय करने से पहले उन्हें विशेषताओं का प्रयास करना होगा कि वे उन्हें पसंद करेंगे और उन्हें चाहते हैं लेकिन विचार है कि कुछ विक्रेताओं के पास यह है कि लोग उन सुविधाओं के वादे पर कुछ खरीद लेंगे जो वे कोशिश करने में सक्षम नहीं हैं।

ओरेकल स्पेक्ट्रम का सबसे उदार अंत में है। आप मूल रूप से अपने सॉफ़्टवेयर का एक पूर्ण-विशेषीकृत संस्करण डाउनलोड कर सकते हैं और इसका उपयोग कर सकते हैं। वे लाइसेंसिंग को सामाजिक समस्या के रूप में देखते हैं और उस तर्क के लिए बहुत योग्यता है।

आपको कभी भी अपने संभावित ग्राहकों को परेशान नहीं करना चाहिए या अन्यथा परेशान नहीं होना चाहिए (संभावित रूप से पूर्व निर्धारित अवधि के बाद सॉफ़्टवेयर की समाप्ति से परे)। एक स्प्लैश स्क्रीन या कुछ कहने पर आपको सबसे ज्यादा नोटिस देना चाहिए "एक्स एन दिनों में समाप्त हो जाता है"।

दूसरी चीज जो आप कर सकते हैं और करना चाहिए, वह आपके सॉफ़्टवेयर के लिए प्रवेश करने में कम बाधा प्रदान करता है।

अकादमिक या व्यक्तिगत संस्करण एक सस्ता (यदि मुफ़्त नहीं) प्रदान करें। विपणन भी एक अच्छा विचार है। इसके द्वारा मेरा मतलब इंटेलिजे लेना है: इसे ओपन सोर्स प्रोजेक्ट्स को अनुमोदित करने की पेशकश की जाती है।

प्रवर्तन के तकनीकी पहलुओं के लिए: तकनीकी पहलुओं के बारे में बहुत चिंतित न हों। अपने उपयोगकर्ताओं को परेशान करने वाली किसी भी योजना का चयन न करें या फिर भी बदतर, आपके सॉफ़्टवेयर को धीमा कर दें (जैसे कुछ योजनाएं करें) या (इससे भी बदतर) उपयोगकर्ता के ऑपरेटिंग सिस्टम की सुरक्षा का उल्लंघन करती है (जैसे सोनी रूटकिट फियास्को)। आपका प्रवर्तन हैक-सबूत होने के लिए नहीं है। अगर लोग आपके सॉफ़्टवेयर को चुरा लेना चाहते हैं तो वे करेंगे। प्रवर्तन प्रणाली सामाजिक रूप से तकनीकी समस्या के लिए एक सभ्य अनुस्मारक (और कुछ और नहीं) के रूप में है।

5

कोई लाइसेंसिंग योजना नहीं है जिसे मैं जानता हूं कि आसानी से ब्रेक करने योग्य नहीं है। मैं विनिर्देशों में नहीं जाऊंगा, लेकिन एक उदाहरण के रूप में, जावा केस में यदि यह जावा में किया जाता है तो इसे डीकंपिल्ड किया जा सकता है (जैसा कि सी ++ या किसी भी संकलित भाषा हो सकता है, लेकिन जावा उदाहरण के लिए सी ++ से आसान है)।यदि यह मूल रूप से किया जाता है तो आपको मूल तरीकों की आवश्यकता होती है, और डीएलएल/तो इसे एक के साथ प्रतिस्थापित किया जा सकता है जो पहुंच की अनुमति देता है।

सी/सी ++ उदाहरण के लिए मैं किसी ऐसे व्यक्ति को जानता हूं जिसने सीएल (माइक्रोसॉफ्ट कंपाइलर) को समझने के लिए यह पता लगाने के लिए कि वे नाम कैसे बदलते हैं। वे सभी बाइनरी थे, और वे इसे एक डिस्सेबलर और बहुत समय से करने में सक्षम थे।

इस तरह की चीज़ से परेशान न हों, यह ईमानदार उपयोगकर्ताओं को परेशान करता है और उनको धीमा कर देता है जो इसे कॉपी करना चाहते हैं। Take a look at World of Goo (great game!) and their take on DRM (जो कि आप किस बारे में बात कर रहे हैं के बारे में एक समान विचार है)।

विश्व के गुओ के डेवलपर्स ने पाया कि उनके product was pirated 90% of the time (वे बताते हैं कि यह संख्या गलत कैसे हो सकती है), इसके विपरीत डीआरएम के साथ भेजे गए दूसरे गेम में और 9 2% पाइरेट किया गया था।

यदि आप वैध व्यवसायों के बारे में बात कर रहे हैं तो वे आम तौर पर लाइसेंस अनुपालन में रहना चाहते हैं, ताकि यह सुनिश्चित किया जा सके कि वे प्रतिलिपि नहीं बना रहे हैं। यदि आप उन लोगों के बारे में बात कर रहे हैं जो उत्पाद शुरू करने के लिए नहीं खरीदते हैं, या सिर्फ इसके लिए भुगतान नहीं करना चाहते हैं, तो आप वास्तव में उन लोगों की संख्या में बदलाव नहीं करेंगे जो आपके सॉफ़्टवेयर को अवैध रूप से प्राप्त करते हैं, आप केवल धीमे हो जाएंगे पहला व्यक्ति जो इसे प्राप्त करता है - उसके बाद बिल्ली बैग से बाहर है।

0

ओरेकल के बीसीएल पढ़ने के बाद (जो वाणिज्यिक स्वतंत्रता की पुष्टि करता है)। तब मैंने एक ओरेकल प्रतिनिधि के साथ बातचीत की, जिन्होंने कहा कि जावाएसई वाणिज्यिक उपयोग के लिए स्वतंत्र है!

+2

प्रश्न जावा एप्लिकेशन के लाइसेंस प्रवर्तन के बारे में है। आपका उत्तर जावा के लाइसेंसिंग के बारे में है जो प्रश्न के लिए प्रासंगिक नहीं है। – xhochy

संबंधित मुद्दे