Борьба с OCR реверс-инжиниринг - PullRequest
1 голос
/ 04 февраля 2012

Я имею в виду программный OCR? Инструменты преобразования изображений в текстовый движок, в stackoverflow есть тонны публикаций о построении OCR, но я смотрю наоборот, как любое руководство о том, как защитить мои изображения от обратного инжиниринга.* Например, у меня есть изображения, содержащие только тексты, как я могу затруднить кому-либо декодирование данных, есть ли какой-нибудь желаемый формат изображения, который может это сделать?или мы можем запутать изображения?

Может ли использование специальных шрифтов или искажение гарантировать защиту от распознавания текста?хотя мое требование не допускает слишком большого количества искаженного текста.

Любое направление будет очень полезным

Ответы [ 4 ]

4 голосов
/ 05 февраля 2012

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

Я бы предложил вам поискать другие аспекты для обеспечения хорошей защиты.Как выглядит ваш вариант использования?Почему пользователи могут получать ваши тексты в виде изображений на свой ПК?Они загружают это только как PDF или файлы изображения?В этом случае было бы намного проще бороться с возможностью ЗАГРУЗИТЬ свои файлы, а не делать их нечитаемыми.

Например, вы можете подумать о том, чтобы не дать доступ ко всему файлу сразу, а показать его на странице.По странице с человеческим взаимодействием требуется, чтобы перейти на следующую страницу.Вы можете даже закодировать свой веб-интерфейс, чтобы сделать невозможным загрузку всего с помощью обычных утилит загрузки сайта.Каждая страница должна отображаться на одном и том же URL-адресе, но фактическая навигация должна связываться с сервером с помощью AJAX или даже с каким-то проприетарным интерфейсом.

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

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

Надеюсь, что это даст вам представление о том, куда идти.

1 голос
/ 06 февраля 2012

Как я и другие говорили, если сделать большой объем текста настолько непонятным, что OCR не сможет его прочитать, это сделает его непрактичным для людей.

Есть ли конкретная угроза, которую вы пытаетесь обыграть?Простые веб-сканеры часто не выполняют javascript, поэтому тупой способ усложнить очистку текста - загрузить его с помощью AJAX-запроса и вставить его в DOM.

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

1 голос
/ 04 февраля 2012

Я не думаю, что вы можете сделать это.Для CAPTCHA, да, и есть масса исследований, но вы также узнаете из личного опыта, как они раздражают читать.Для более длинного текста это невозможно.Я бы серьезно усомнился в этом случае или бизнес-модели.У вас есть контент, который по какой-то причине нуждается в защите от OCR.Это означает, что кто-то захочет тратить ресурсы на распознавание вашего контента.Зачем тебе бороться с этими людьми?Сделайте их клиентом и предложите контент в виде простого текста за определенную плату.Если эта плата меньше их стоимости OCR, у вас есть беспроигрышный вариант.То, что вы пытаетесь реализовать, звучит как проигрыш.

0 голосов
/ 04 октября 2012

Я видел некоторые страницы, запутывающие текст с помощью невидимых букв и других «шумов» в тексте.Таким образом, вы по-прежнему можете отображать его в виде текста, в то же время делая его намного труднее копировать.

Другая идея может заключаться в том, чтобы каким-либо образом нанести водяные знаки на текст, чтобы распознать, откуда пришла «украденная» копия.Если это полезно, зависит именно от чего вы хотите быть защищены.Как уже упоминалось, если он читается, кто-то может скопировать его вручную.

...