That's not an ODF manifest.

It is not clear what the scenario is.

Can you describe, simply, what software, version, operating system, and 
computer saved this particular document with the manifest you show, below?  If 
it was saved as an .sxc, it should not have used AES256, nor should it have 
used SHA256-1k.

On attempting to open the document with the same software that produced it, 
what is the error report?  It is possible that software designed to recognize 
the .sxc format will simply fail to properly deal with those encryption 
parameters, since they were not introduced until ODF 1.2.

Replacing content.xml is not going to help.  You need to leave the content.xml 
there as it was produced with the improper encryption so that it will be 
decrypted by the correct (improper) decryption.

A. You can make the following changes to see if that helps:

   0. Make a copy of the file. Rename it so the extension is .ods instead of 
.sxc.

   1. Replace the beginning of META-INF/manifest.xml,

      <!DOCTYPE manifest:manifest PUBLIC &quot;-//OpenOffice.org//DTD Manifest
         1.0//EN&quot; &quot;Manifest.dtd&quot;>
      <manifest:manifest 
         xmlns:manifest="http://openoffice.org/2001/manifest";>
      <manifest:file-entry 
         manifest:full-path="/"
         manifest:media-type="application/vnd.sun.xml.calc"/>
      ...

      with

      <manifest:manifest
        xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0"
        manifest:version="1.2">
      <manifest:file-entry
        manifest:full-path="/"
        manifest:media-type="application/vnd.oasis.opendocument.spreadsheet">
      ...

      [Note: There is no <!DOCTYPE ...> in ODF files.]

   2. Attempt to open the file.  If you are asked for your password, provide it.

   3. If the file is reported as corrupted (even before reaching (2)), take the 
option to attempt to repair the file.  

   4. If you manage to open the file, do a Save As ... immediately as an .ods 
*with* *a* *new* *name*, with or without password.

   5. You should be able to reopen that new version.  Change your Tools | 
Options ... Load/Save settings to always save as ODF 1.0/1.1 (not 1.2).  Save 
it *again* as an .ods with another new name.  This should give you a version 
that uses the default encryption that is probably what worked with .sxc, but it 
is still an .ods.

   6. Now check the spreadsheet to see if the content was recovered 
successfully.  There may be defects or problems because of differences between 
.sxc and .ods.

   7. If you must use .sxc, with the Load/Save setting still for ODF 1.0/1.1, 
you *might* be able to save again as an encrypted .sxc and successfully open it 
as well.

B. The alternative is to decrypt the content.xml directly.  That is a bit 
complicated and it requires that you have implementations of SHA1, PBKDF2, 
AES256-CBC, and DEFLATE (for decompressing the decrypted result).  You won't 
need SHA256-1K because you can tell by inspection of the DEFLATE whether you 
got a successful content.xml XML file.

C. Note that you must know the password in all of these scenarios.  
Unfortunately, the password recovery utilities that I am aware of have not been 
upgraded to deal with the AES encryptions and they only work if your password 
is very insecure.

 - Dennis
       

-----Original Message-----
From: raido [mailto:1rli...@klots.eu] 
Sent: Saturday, December 29, 2012 01:26
To: users@global.libreoffice.org
Subject: [libreoffice-users] Libreoffice 3.5.1 corrupted eas256 password 
protected ODF ver 1.0/1.1 files

Hi,

I have old openoffice calc files  (.sxc) with password protection.
Libreoffice 3.5.1 managed to save those in old format and possible with
aes256 encryption (as stated in manifest file). I have tried different
technics to solve the problem:
* googled around. Have not found a case where corrupted files have been
restored,
*used different libreoffice and openoffice versions to try to open the file,
*tried to decrypt by hand (my skills and time ware out in generating
password with PBKDF2 algorithm),
*tried to modify manifest file to make it look like a 1.2 ODF version,
*tried to replace content.xml in 1.2 ODF file (+ changing content.xml info
in manifest file),
*I tried with encryption tool named rltodfjlib.jar,
*searched for backups. I modified the file 4 months ago during few days,
saved once and did not try to open. My frequent backups are stored only for
2 months and older backups are too old,
*possible done other things whics I have forgotten as I am pretty
frustrated.
The information in this file is not recoverable by other means, as original
documentation on paper is destroyed by burning.

And now I think I have only one question: is it possible at all to open such
file with reasonable amount of time and resources?.

At least I learned one good thing: verify that you can open saved file
before you close it if the file is important.

I guess the best explanation of my problem is in manifest file:
...
<!DOCTYPE manifest:manifest PUBLIC &quot;-//OpenOffice.org//DTD Manifest
1.0//EN&quot; &quot;Manifest.dtd&quot;>
<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest";>
 <manifest:file-entry manifest:full-path="/"
manifest:media-type="application/vnd.sun.xml.calc"/>
 <manifest:file-entry manifest:full-path="settings.xml"
manifest:media-type="text/xml" manifest:size="12002">
  <manifest:encryption-data
manifest:checksum-type="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0#sha256-1k"
manifest:checksum="cSs3LPT3wUPokIbLrEGnZ+iMZmkygRan4fAoBs7RDJ4=">
   <manifest:algorithm
manifest:algorithm-name="http://www.w3.org/2001/04/xmlenc#aes256-cbc";
manifest:initialisation-vector="lqFd27slt5cSIhVYsFvzew=="/>
   <manifest:key-derivation manifest:key-derivation-name="PBKDF2"
manifest:iteration-count="1024" manifest:salt="NxtizE5HXljarju4wXvTrg=="/>
  </manifest:encryption-data>
 </manifest:file-entry>
...

Thank you for reading my problem!



--
View this message in context: 
http://nabble.documentfoundation.org/Libreoffice-3-5-1-corrupted-eas256-password-protected-ODF-ver-1-0-1-1-files-tp4026356.html
Sent from the Users mailing list archive at Nabble.com.

-- 
For unsubscribe instructions e-mail to: users+h...@global.libreoffice.org
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted


-- 
For unsubscribe instructions e-mail to: users+h...@global.libreoffice.org
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted

Reply via email to