Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.03.2013, 22:18
Интересующийся
Отправить личное сообщение для frenzy Посмотреть профиль Найти все сообщения от frenzy
 
Регистрация: 07.03.2013
Сообщений: 25

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

Есть тонны банальных скриптов, запрещающих копирование всего текста, вроде этого:
<SCRIPT LANGUAGE="JavaScript">
document.ondragstart = test;
document.onselectstart = test;
document.oncontextmenu = test;
function test() {return false}
</SCRIPT>

Но для данной задачи они не подходят. Данный еще и плохо аботает в опере. Возможно кто-то знает готовый скрипт под данную задачу. В противном случае подскажите, пожалуйста, события копирования в буфер(для всех браузеров и как через контекстное меню, так и через кнопки ctrl+c), и как получить доступ к буферу - мусорщик я сам смогу дописать.
Ответить с цитированием
  #2 (permalink)  
Старый 07.03.2013, 23:23
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от frenzy
Задача: защитить весть текст от копирования неумельцами посредством добавления мусора в буфер обмена, но разрешить копирование мелких частей для пользователей.
Пока наиболее эффективный вариант на javascrip - закрывание всей страницы. кроме навигации прозрачной картинкой,
Доступ к буферу обмена из ява скрипт - невозможен(кроме ИЕ, но и там с запросом)), есть возможность на флеш, но не кроссбраузерно для ИЕ, * - правда не знаю как сейчас: на ИЕ9-10, и неизвестно как поведет себя флеш и при всплытии меню копирования в браузере, собственно по которому пользователь и копирует. Стандартно флеш применяется при копировании кодов по кнопке, к примеру тут в топике. Тут нужно обращаться на флеш форумы.

Последний раз редактировалось Deff, 07.03.2013 в 23:29.
Ответить с цитированием
  #3 (permalink)  
Старый 07.03.2013, 23:51
Интересующийся
Отправить личное сообщение для frenzy Посмотреть профиль Найти все сообщения от frenzy
 
Регистрация: 07.03.2013
Сообщений: 25

Вроде еще в 2009 говорили. что ничего не будет работать, ибо для того, чтоб работало нужно активировать флеш нажатием.
Тут каммент внизу читай - как с этим обстоят дела сейчас?
Прозрачная картинка конечно вариант, вот только у меня на сайте есть страници с динамическим рендером: можно ли динамически растягивать и стягивать эту картинку. Да и перелинковка в статье не будет работать, тут уж лучше приведенный мной скрипт от дураков сработает.
Ответить с цитированием
  #4 (permalink)  
Старый 07.03.2013, 23:54
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

frenzy,
Сообщение от frenzy
можно ли динамически растягивать и стягивать эту картинку. Да и перелинковка в статье не будет работать, тут уж лучше приведенный мной скрипт от дураков сработает.
А причем тут динамика контента: - просто все ссылки - position:relative и x-index (ом) приподнимаете над прозрачкой, позрачке position:fixed и 100% размер
Сообщение от frenzy
но разрешить копирование мелких частей для пользователей.
Тоже их приподнимаем

Последний раз редактировалось Deff, 08.03.2013 в 02:29.
Ответить с цитированием
  #5 (permalink)  
Старый 07.03.2013, 23:58
Аватар для zOdmin
Аспирант
Отправить личное сообщение для zOdmin Посмотреть профиль Найти все сообщения от zOdmin
 
Регистрация: 05.03.2012
Сообщений: 62

Самая эффективная защита - это канвас со своими векторными шрифтами. Неумельцы точно не скопируют.
От скриншотов не защититься, но если текста много, то мало у кого руки дойдут скриншотить большой объем.

Сам скрипт не подскажу, т.к. это должна быть собственная реализация, иначе не имеет смысла.
Ответить с цитированием
  #6 (permalink)  
Старый 08.03.2013, 02:05
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

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

Пока не оч удачно решается копирование с обратным преобразованием в контент, преобразованных в графику таблиц(еxel к примеру) и сложных формул

Последний раз редактировалось Deff, 08.03.2013 в 02:09.
Ответить с цитированием
  #7 (permalink)  
Старый 08.03.2013, 02:16
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от Deff
Все защиты туфта
Цель любой защиты не лишить потенциального негодяя возможности что-то украсть, а повысить цену этого до нерентабельного уровня.
Ответить с цитированием
  #8 (permalink)  
Старый 08.03.2013, 03:11
Аватар для zOdmin
Аспирант
Отправить личное сообщение для zOdmin Посмотреть профиль Найти все сообщения от zOdmin
 
Регистрация: 05.03.2012
Сообщений: 62

Сообщение от Deff
первое - можно распечатать страницу
второе полностраничные скрины давно не проблема,
Третье и тотальное - страницу сохраняем на компе и делаем не спеша с ней что заблагорассудиться
1) Если прокрутка средствами самого канваса, то не получится.
2) См. п.1
3) Вот это как раз туфта, т.к. есть способы определения, где и как запущена страница, и можно ничего не выводить, а принудительно редиректить. Ну и автор просил защиту от копипаста, т.е. чтобы нигде в другом месте не выкладывали. Если страница сохранена полностью, то это не просто мелкая ссылка на источник в конце статьи, а нечто большее.

И, да, абсолютной защиты здесь не может быть по определению. Но речь шла о защите от дурака. А здесь даже опытный программер поленится тратить свое время. Например, если пишет скрипт, который крадет контент, то это пол дня может уйти на расшифровку чужих скриптов, или на дописывание костыля, чтобы сохранить единый скриншот.
Ответить с цитированием
  #9 (permalink)  
Старый 08.03.2013, 03:40
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от zOdmin
ли на дописывание костыля, чтобы сохранить единый скриншот.
трехлетняя версия http://desksoft.ru/index.php?forum=7&th=291
Ответить с цитированием
  #10 (permalink)  
Старый 08.03.2013, 03:49
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Во всех браузерах кроме старых опер (почти всех кроме нескольких последних) есть событие oncopy. В старых операх нельзя отловить копирование из контекстного меню. По Ctr+C можно отловить через keydown (или keypress чтоли). Далее, во всех браузерах кроме Firefox есть объект clipboardData типа Clipboard. Далее, во всех этих браузерах кроме Safari 5 и и Chrome < 18 можно записывать данные в этот объект. Впрочем и без clipboardData достаточно изменить выделение и в буфер попадет именно оно.

<div id="nocopy">Попробуй меня скопировать. А затем проверь что в буфере</div>
<textarea></textarea>
<script>
    var target = document.getElementById('nocopy');
    target.oncopy = function(event) {
        var clipboardData = (event || window.event).clipboardData;
        if (clipboardData) {
            clipboardData.setData('Text', 'Все права защищены!');
        } else {
            alert('Clipboard API не поддерживается! Тут workaround\'им');
        }
        return false;
    }
</script>


Кстати, не проще ли просто запрещать выделение больших кусков текста?

Но думаю все эти антиплагиаты ничего не стоят. В хроме например javascript на странице отключается в три клика:
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите плагин для оформления текста FRIE jQuery 3 26.07.2012 18:28
Помогите сделать юзер скрипт для выделения текста. deerc Общие вопросы Javascript 2 23.03.2012 09:31
Скрипт для вывода текста поверх картинки sergeus Работа 1 19.02.2012 05:01
Требуется написать скрипт защиты от удаления товара из корзины для Virtuemart umitru Работа 19 01.02.2012 13:30
Подскажите скрипт для загрузки фото на сервер Mapshal Общие вопросы Javascript 0 13.08.2011 17:49