LINUX.ORG.RU

Как защитить код на JS?

 ,


1

1

В общем, наверное, клиентский код на JS наиболее уязвим в плане плагиата, он доступен всем. Понятно, что можно использовать различные методы обфусцирования и шифрования, это будет работать в большинстве случаев. Но хотелось бы узнать, как можно юридически это сделать? Вот, например, в так называемом свободном коде ставят ссылку на стандартную лицензию GPL, и это, видимо, работает отчасти, во-всяком случае, крупные компаниии, видимо, побаиваются судебных разбирательств. А можно ли аналогичным образом защитить код, с условиями запрещения любого копирования и использования в любых целях?

UPD Короче, насколько я понял, распространяя код по лицензии, мы заключаем договор с использующим код. Если копирайтов и лицензии нет — значит и договора никакого нет, и никто по дефолту не имеет права использования. Доказательство авторских прав — это отдельный вопрос, в том числе и в случае свободных лицензий.



Последнее исправление: portquest2016 (всего исправлений: 4)

юридически

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

x3al ★★★★★
()
Ответ на: комментарий от portquest2016

... и использования в любых целях

Ну так в браузере используется же код. А Вы пишите, что запретить любое использование.

Если так, то если на Вашем коде не указана лицензия, то по умолчанию он Ваш, и его использовать низя.

zamazan4ik ★★
()
Ответ на: комментарий от portquest2016

залей в свой бложик.

А можешь сам написать, как твой код распространяется.

zamazan4ik ★★
()
Последнее исправление: zamazan4ik (всего исправлений: 1)
Ответ на: комментарий от portquest2016

Как угодно, это отдельный вопрос, но при наличии всяких internet wayback machine — вряд ли проблемно.

x3al ★★★★★
()

А что мешает-то? Это такой же код, указываешь лицензию и всё.

Deleted
()
Ответ на: комментарий от portquest2016

А как я буду потом, в случае чего, доказывать свое авторство?

прошить в коде копирайты, не?

anonymous
()
Ответ на: комментарий от zamazan4ik

В сторонних приложениях имеется в виду. Естественно, самому себе я код не запрещаю использовать.

то по умолчанию он Ваш, и его использовать низя.

Но ведь надо как то защищать и фиксировать авторские права? Иначе как доказать авторство?

portquest2016
() автор топика
Ответ на: комментарий от portquest2016

Это Вы точно знаете? А как я буду потом, в случае чего, доказывать свое авторство?

Глупый, а как ты вообще будешь в случае чего доказывать своё авторство? Выкинут твой гпл из файла и всё.

anonymous
()
Ответ на: комментарий от x3al

internet wayback machine

Вот это, я не считаю, как раз, надежным. Там может и не проиндексироваться то что надо, и быть удалено.

portquest2016
() автор топика

линк оставь сдесь, что все знали, куда не нужно переходить.

ukr_unix_user ★★★★
()
Ответ на: комментарий от portquest2016

Но ведь надо как то защищать и фиксировать авторские права?

Зависит от местечковых законов, очевидно. Я посещал курс по айти-праву в Германии, там твоё авторское право автоматически твоё, как только ты свой шедевр написал. И оно остаётся твоим навсегда и не может быть передано другим людям. А права на использование/продажу итд. могут быть переданы. В России вероятно как-то также. А пока ты их официально не передал, никто не имеет права твой шедевр использовать.

Иначе как доказать авторство?

С такими вопросами к юристу. Серьёзно.

anonymous
()

Если хочешь защититься от копирования — пиши на C/C++ :-P

Deathstalker ★★★★★
()

Ты не на тот форум написал, пшол вон от седава, мы тут за коллективный труд, сообщества все дела, а ты, ай тьфу

Dron ★★★★★
()

Как защитить код на JS?

Нельзя «защитить» код. Его никто не обижает. Можно пытаться защитить свои шкурные интересы. Законы всех известных мне капиталистических стран здесь всецело на вашей стороне, а вот люди — нет. Так что нет: аналогии со свободными программами (и особенностями с программами под авторским левом лицензий GNU) здесь не работают, — со своей проприетарщиной вы одни, и когда ваши шкурные интересы будут обижать другие проприетарщики, никто за вас не вступится даже на словах. Обратитесь к вашему юрисконсульту или внештатному адвокату за профессиональной консультацией.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

Так что нет: аналогии со свободными программами (и особенностями с программами под авторским левом лицензий GNU)

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

portquest2016
() автор топика

Большинство разработчиков пишет такой код, что лучше его не видеть

mystery ★★
()
Ответ на: комментарий от portquest2016

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

Ой-ой. И какие такие страшные «последствия» вы готовы ему посулить? Вы кто, в смысле кто за вами стоит? Микрософт? Или хотя бы «Студия Лебедева»? Что вы тогда делаете здесь, на ЛОРе со такими вопросами? Или у вас все таки под впечатлением от свободного окружения сложилось впечатление, что вы можете рассчитывать на коллективный авторитет? Это впечатление ложно. Отношение коллектива к вашим, копирастов, проблемам варьируется от безразличия до прямого злорадства.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от portquest2016

Не корми упоротого, а то он свой коллектив наполеонов позовёт. Что можно сказать о человеке, кторый упоролся жопеелем, не понимая, что штольман таскает всех по тем же самым судам.

anonymous
()

в нике - год твоего рождения?

Посылка твоя неверна. Защищать нужно не код, а пользователей от него. Проприетарный код не нужен, т.к. защита пользователей в этом случае минимальна. Тем более - JS, который рассадник малвари, адвари и просто болото говнокода, гигабайтами загружающееся сотням миллионов пользователей.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 2)
Ответ на: комментарий от Zmicier

при всём неуважении ко всякой проприетарщине и моей любви к нормальным свободным лицензиям, мне кажется, что если товарищ в начале исходника напишет, что использовать и бла-бла-бла нельзя, и там действительно какая-то серьёзная наработка, которая не студенческая поделка и не валяется на каждом углу stackoverflow, то пусть хоть Гугол её стырит, засудить можно будет. Это будет невероятно тяжело: времени уйдёт куча, денег тоже на юристов всяких. Но, думаю, можно, так как можно будет доказать, что код ваш. А подтверждать свои права на код можно тем, что опубликуйте его в тырнете где-нибудь, время же будет указано. А при разбирательстве укажите, что мол так и так, мой код датирован такой-то датой. А Ваш? И если код гугла будет очень похож на Ваш, и дата позже, то дело в шляпе.

zamazan4ik ★★
()
Ответ на: комментарий от portquest2016

злоумышленник был предупрежден о последствиях своих действий

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

Лицензия может только давать права, не ограничивать.

x3al ★★★★★
()
Ответ на: комментарий от x3al

В лицензии этого быть не может по определению

На практике в лицензии это пихают с целью напугать. Силы оно разумеется не имеет.

anonymous
()
Ответ на: комментарий от x3al

Вообще, тут конечно, полная каша какая то. Ведь GPL то ограничивает использование кода (нельзя использовать код в пропиетарных продуктах). Я что то запутался нафик:)

portquest2016
() автор топика
Ответ на: комментарий от portquest2016

Ведь GPL то ограничивает использование кода (нельзя использовать код в пропиетарных продуктах).

По умолчанию тебе вообще непозволено использовать код. гпл позволяет использовать код в других продуктах под гпл.

anonymous
()
Ответ на: комментарий от zamazan4ik

то пусть хоть Гугол её стырит, засудить можно будет. Это будет невероятно тяжело: времени уйдёт куча, денег тоже на юристов всяких.

Да в теории можно, конечно. И не надо для этого ничего писать в начале исходника, выше все верно сказали про законодательные умолчания, которые все запрещают; и лицензия — это действительно сугубо разрешительный документ, что не может ничего запретить (что очевидно хотя бы из названия — «лицензия»).

Только давайте будем реалистами — товарищ не будет судиться из-за своих яваскриптов. Потому что ни времени у него на это не будет, ни денег. И главное, что ответчик его будет не Гугль, а такой же portquest2016, с которого и взять-то по суду нечего; да еще не с Украины (или откуда наш ОП там), а из какой-нибудь Индии.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

сугубо разрешительный документ,

Тогда какого хрена GPL запрещает использовать код в продуктах под не-GPL лицензией? То что не разрешено то запрещено, или как? Тогда какая разни ца, будучи «разрешительным», он автоматически становится и «запретительным». Свободные лицензии — GPL, BSD и тд, они имеют вообще какую то юридическую силу? Это ведь договор, формально? Используя код ты формально соглашаешься с условиями, и заключаешь договор?

portquest2016
() автор топика
Ответ на: комментарий от Dron

пшол вон от седава, мы тут за коллективный труд, сообщества все дела, а ты, ай тьфу

Под несвободной жопаель лицензией ^)

ritsufag ★★★★★
()
Ответ на: комментарий от portquest2016

Тогда какого хрена GPL запрещает использовать код в продуктах под не-GPL лицензией?

Во-первых, это неверная формулировка, а во-вторых: https://www.gnu.org/philosophy/pragmatic.ru.html

То что не разрешено то запрещено, или как?

Ну смотрите: «от природы» все разрешено, потом закон (в России это гражданский кодекс) запрещает, фиксируя монополию на дофига всяких действий за автором, а потом автор может эксплуатировать свою монополию, выдавая по собственному усмотрению разрешения (= «лицензии», это, если кто не в курсе, синонимы, от лат. licet «разрешать»). Запретить что-то, что не запрещено законом, он не может.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от x3al

Спасибо, дошло до меня:) Вы навели меня на здравую мысль. Нет договора — нет никаких разрешений, все правильно. Лицензия — это заключение договора:) То же самое, что коробочная лицензия — вскрывая упаковку ты автоматом соглашаешься с условиями, написанными на коробке, а нет коробки — нет и договора:) Защита кода — это отдельный вопрос. Свободные лицензии тоже не защищают код, на самом деле:)

portquest2016
() автор топика
Ответ на: комментарий от portquest2016

Лицензия — это заключение договора

Лицензия — это сам договор. Лицензионный договор.

Свободные лицензии тоже не защищают код, на самом деле

Конечно. Код же никто не обижает, его не́ от кого защищать. Защищают чьи-то интересы. Несвободные лицензии — хозяина, лицензии авторского лева — общества, безвольные (lax) — да в общем-то ничьи не защищают, на то они и безвольные.

вскрывая упаковку ты автоматом соглашаешься с условиями, написанными на коробке

Лиховатое, честно говоря, условие. Я такого нигде не видел, и полагаю, что не очень-то оно состоятельно. Типовое действие, означающее присоединение к лицензионному договору — это использование самой несвободной программы.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Zmicier

Я такого нигде не видел,

Есть это в законе. Самый характерный пример — дистрибутив виндоус. Вскрывая коробку ты соглашаешься с условиями предоставления

portquest2016
() автор топика
Ответ на: комментарий от Zmicier

Лиховатое, честно говоря, условие

Собственно, свободные лицензии — это еще более «лиховатое условие». В этом случае заключение договора == начало использования кода

portquest2016
() автор топика
Ответ на: комментарий от portquest2016

Нет там такого. Нужно явно выполнить действие, означающее согласие - поставить подпись, нажать на недвусмысленную кнопку «я принимаю». Запрещено косвенные действия (такие как открытие коробки или смыв унитаза) трактовать как принятие условий использования.

Deleted
()
Ответ на: комментарий от portquest2016

Есть это в законе.

Ссылку, пожалуйста.

Самый характерный пример — дистрибутив виндоус.
Вскрывая коробку ты соглашаешься с условиями предоставления

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

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от portquest2016

Собственно, свободные лицензии — это еще более «лиховатое условие». В этом случае заключение договора == начало использования кода

Дважды нет.

Во-первых, это как раз нормальное условие, а никак не «более лихое» — большинство несвободных лицензии именно его и включают.

А во-вторых, подавляющее большинство свободных лицензий, в том самые популярные, то есть лицензии ГНУ, такого условия именно что *не* содержат.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Deleted

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

portquest2016
() автор топика
Ответ на: комментарий от portquest2016

Так на коробке может быть явно прописано, что вскрытие коробки означает согласие с соглашением.

Вы знаете, что́ может быть написано на сарае, где дрова лежат?

По поводу майкрософт может я перепутал, но есть, вроде такое.

Охотно верю; и прошу примера. Что никак не отменяет того, что это условие лиховатое и его, вероятно, можно послать лесом.

Zmicier ★★★★★
()
Ответ на: комментарий от portquest2016

Оно и не должно его содержать

Кто «оно», кого «его»? Пользуйтесь цитированием, пожалуйста.

в законе о лицензировании

Где-где? Что еще за закон?

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Zmicier

вот тут покопай, может найдешь че, если интересно

лицензионный договор о предоставлении права использования программы для ЭВМ или базы данных может заключаться в форме оберточной лицензии . Согласно данному порядку заключения лицензионного договора, условия такого договора должны быть изложены на приобретаемом экземпляре программы или базы данных или на упаковке приобретаемого экземпляра (п. 2 ст. 1235 и п. 2 ст. 1232 ГК РФ);

http://www.zakonprost.ru/content/info/1376

portquest2016
() автор топика
Ответ на: комментарий от Zmicier

Вот тебе пруф

Обёрточная лицензия (не офиц.) — разновидность лицензионного договора о предоставлении права пользования произведением (регулируется ст. 1286 ГК РФ), которая помещается на упаковку (обертку) программного обеспечения ЭВМ. Покупая программу лицо конклюдентным действием соглашается с условиями лицензии. Согласно пункту 5 статьи 1286 ГК РФ в настоящее время применяется только для программных продуктов.

Обёрточную лицензию, как правило, помещают под прозрачную пленку на упаковке, а если на упаковке не хватает места, то лицензия кладётся внутрь, а на упаковке делается специальное уведомление о наличии лицензии. Если в первом случае покупатель способен самостоятельно ознакомиться с условиями лицензии, то во втором случае о них должен рассказать продавец. Приобретение и/или вскрытие упаковки считается конклюдентным действием, подтверждающим согласие с условиями договора.

https://ru.wikipedia.org/wiki/Обёрточная_лицензия

portquest2016
() автор топика
Ответ на: комментарий от portquest2016

я читал это не так давно

Что́ вы читали? Мы сейчас разбираем два разных пункта. Повторяю: если вы не хотите писать развернутыми предложениями — пользуйтесь цитированием.

Думай что хочешь

Благодарствую за милостивое разрешение.

лично мне смысл ясен

Что́ вам там ясно?

Zmicier ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.