Можно ли извлечь текст из PDF, чье «Извлечение страницы» не допускается? - PullRequest
0 голосов
/ 24 июня 2018

Я могу извлечь текст из PDF, который не имеет никаких ограничений безопасности.Я просто хочу узнать, можно ли извлечь текст из PDF, который имеет ограничения

enter image description here

ОБНОВЛЕНИЕ:

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

1 Ответ

0 голосов
/ 24 июня 2018

Как ОП пояснил, что он задал вопрос, чтобы узнать, защищены ли его документы с такими ограничениями от извлечения текста, и что он не спрашивает, как это сделать (несмотря на явные языки и библиотеки, приведенные втеги), здесь ответ по принципиальному варианту, а не конкретная реализация.Таким образом ...

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

Ограничения, которые вы показываете, являются просто флагами, которые указывают обработчику PDF, что автор хочет разрешить или не разрешить пользователю делать со своим документом, но они не являются техническими ограничениями.

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

Ср.спецификация ISO 32000 (здесь из части 2, аналогично в части 1 с акцентом на средства просмотра PDF):

Если пользователь пытается открыть зашифрованный документ с паролем пользователя, программа чтения PDF должнасначала попытайтесь аутентифицировать зашифрованный документ, используя дополнительную строку, определенную в 7.6.4.3, «Алгоритм ключа шифрования файла» (пароль пользователя по умолчанию):

  • Если эта попытка аутентификации прошла успешно, PDF-файлЧитатель может открывать, дешифровать, визуализировать и иным образом предоставлять доступ к документу.

  • Если попытка аутентификации не удалась, интерактивный процессор PDF должен запросить пароль.Правильное указание пароля (владельца или пароля пользователя) должно позволить пользователю получить доступ к документу.

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

  • Открытие документа с правильным паролем владельца должно разрешить полный (владелец) доступ кдокумент.Этот неограниченный доступ включает в себя возможность изменения паролей и разрешений доступа к документу.

  • Открытие документа с правильным паролем пользователя (или открытие документа с паролем по умолчанию) должно позволить дополнительные операции длядолжны выполняться в соответствии с разрешениями доступа пользователя, указанными в словаре шифрования документа.

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

...

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

(ISO 32000-2, раздел 7.6.4 СтандартSecurity Handler)

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

Зная об этом, разработчики библиотек PDF с открытым исходным кодом, как правило, вообще не пытаются применять ограничения или добавляют какой-либо флаг для отмены применения ограничений, чтобы предотвратить распространение исправленных копий библиотеки.

...