Что лучший подход должен Защитить Пользовательские Компоненты.NET с Лицензией? [закрытый]

Предполагая, что вы хотите String в качестве вывода, вы можете создать новую UDF для преобразования входной строки из формата yyyyMMdd в yyyy-MM-dd, как показано ниже:

def dateFormatDef(x: String): String = x.patch(4,"-",0).patch(7,"-",0)
val dateFormat = udf[String, String](dateFormatDef)

Выход в строке в ожидаемый формат:

df = df.withColumn("newFormat", dateFormat($"date"))
df.show()
+--------+----------+
|    date| newFormat|
+--------+----------+
|20180103|2018-01-03|
|20180105|2018-01-05|
|20180111|2018-01-11|
|20180112|2018-01-12|
+--------+----------+
7
задан Yoann. B 31 March 2009 в 14:42
поделиться

4 ответа

Существует много недостающей детали здесь.

Вы лицензируете от кого-то или пытаетесь создать лицензию?

Открытый исходный код, закрытый исходный код, продавая? При продаже Вы обеспечиваете источник?

Каково заключительное использование компонента / приложение? Вы размещаете его (как многопользовательский сайт), или это больше COTS?

Что Ваши конкуренты делают с их моделью продаж? Это, кажется, работает на них? например, это звучит разумным? <-эмулируют это.

Поскольку Вы отвечаете на те вопросы, Вы найдете лицензию, которая соответствует Вашим потребностям.

0
ответ дан 7 December 2019 в 10:07
поделиться

Когда Вы выделяете пробные версии своего программного обеспечения, которые являются обновляемыми к полным версиям (другими словами, блоки, которые содержат все функции), нет много, можно сделать, чтобы препятствовать тому, чтобы кто-то взломал его в конце. (с .NET это еще легче затем с собственными блоками).

Подписание и Путаница является единственным способом препятствовать тому, чтобы он был перепроектирован в очень удобочитаемой форме, но просто использовать что-то как отражатель в основном даст Вам полное.

Один из самых простых способов продолжить появление лицензирования к:

  • используйте общественность/шифрование с закрытым ключом для сохранения лицензирования информации (дата истечения срока, активированные опции, и т.д.) в файл
  • включайте открытый ключ в блок
  • декодируйте зашифрованные данные о запуске Вашего приложения, чтобы проверить, разрешают ли кому-то использовать Ваше приложение.
  • генерируйте лицензии при необходимости с Вашим закрытым ключом и распределите те файлы (или ключи, если данные являются достаточно маленькими),

Как альтернатива можно включать информацию о лицензировании в открытый текст с хэш-кодом (это - ключ лицензирования, алгоритм должен также поддерживать общественность/закрытый ключ) в открытом тексте с приложением, и только проверьте, соответствует ли информация о лицензировании хэш-коду.

0
ответ дан 7 December 2019 в 10:07
поделиться

Что касается сценария "С закрытым исходным кодом" рассматривают использование путаницы. Я использовал SmartAssembly и очень удовлетворенный результатами.

Что касается режимов лицензирования. Вы говорите о компонентах .NET, таким образом, целевая аудитория является разработчиками. Я не думаю, что они будут иметь дело с бесплатными ограниченными пробными версиями. Если Вы собираетесь продать что-то ценное сообществу разработчиков, готовятся видеть "Полнофункциональную" версию на Rapidshare или потоках.

Я рекомендовал бы концентрироваться на поддержке и частых обновлениях/улучшениях, а не защите. В большинстве случаев "бизнес" покупает поддержку, а не двоичные файлы.

Если Вам нужны некоторые заголовки инструмента, почему Вы просто не гуглите для этого? ".NET, лицензирующий" запрос, даст Вам тоны ссылок.

Надежда, которая помогает.

6
ответ дан 7 December 2019 в 10:07
поделиться

GPL. Или объявление его общественное достояние. Или 24 страницы EULA, который ограничивает способность пользователей бриться при использовании компонента. Или что-то как этот.

Почему Вы не говорите нам, что Вы пытаетесь сделать, что надлежащие использования, и что требуется иметь, происходят?

0
ответ дан 7 December 2019 в 10:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: