You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tika.apache.org by "Andriy Budzinskyy (JIRA)" <ji...@apache.org> on 2015/10/02 12:13:26 UTC
[jira] [Created] (TIKA-1761) Error Parsing PPT (97-2003) files with
password protection against modification which were created using Office
2013
Andriy Budzinskyy created TIKA-1761:
---------------------------------------
Summary: Error Parsing PPT (97-2003) files with password protection against modification which were created using Office 2013
Key: TIKA-1761
URL: https://issues.apache.org/jira/browse/TIKA-1761
Project: Tika
Issue Type: Bug
Components: parser
Affects Versions: 1.10, 1.7
Reporter: Andriy Budzinskyy
Attachments: test-2007.ppt, test-2013.ppt
PPT documents created (or saved) as Powerpoint 97-2003 format and protected with password against modification using Office 2013 fail during extracting text.
But it works fine Powerpoint 97-2003 format using Office 2007
{noformat}
java -jar tika-app-1.10.jar --text test_2003.ppt
Exception in thread "main" org.apache.tika.exception.TikaException: Unexpected RuntimeException from org.apache.tika.parser.microsoft.OfficeParser@22b0f5af
at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:282)
at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:120)
at org.apache.tika.cli.TikaCLI$OutputType.process(TikaCLI.java:185)
at org.apache.tika.cli.TikaCLI.process(TikaCLI.java:489)
at org.apache.tika.cli.TikaCLI.main(TikaCLI.java:139)
Caused by: org.apache.poi.hslf.exceptions.EncryptedPowerPointFileException: PowerPoint file is encrypted. The correct password needs to be set via Biff8EncryptionKey.setCurrentUserPassword()
at org.apache.poi.hslf.EncryptedSlideShow.<init>(EncryptedSlideShow.java:102)
at org.apache.poi.hslf.HSLFSlideShow.read(HSLFSlideShow.java:259)
at org.apache.poi.hslf.HSLFSlideShow.buildRecords(HSLFSlideShow.java:250)
at org.apache.poi.hslf.HSLFSlideShow.<init>(HSLFSlideShow.java:165)
at org.apache.tika.parser.microsoft.HSLFExtractor.parse(HSLFExtractor.java:61)
at org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:149)
at org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:117)
at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
... 5 more
{noformat}
I've debugged Tika library and found that it fails UserEditAtom.encryptSessionPersistIdRef property. This property is empty in files created with Office 2007 and no-empty with Office 2013.
I've defragmented PPT files as described in https://social.msdn.microsoft.com/Forums/en-US/e33189a5-0b00-44b7-b084-f2757e9b7536/powerpoint-binary-file-format-decryption?forum=os_binaryfile
Is this bug of Tika or POI library?
Should be it supported per Apache POI [encryption support|https://poi.apache.org/encryption.html]?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)