adamreeve / Mendeley-FileSync

A script to synchronise PDF files in Mendeley across multiple machines
GNU General Public License v3.0
24 stars 4 forks source link

Sqlite is encrypted #11

Open cream68 opened 6 years ago

cream68 commented 6 years ago

I've been using this amazing tool for some while now. It worked perfectly for months until today on my ubuntu machine. The sqlite file seems to be encrypted or is not an database. Anyone experiencing the same problem?

mherrmann3 commented 6 years ago

Oh yes (or better: Oh No!). It seems that with the newest update to Mendeley v1.19, the database is encrypted with SQLCipher (I tried to open the .sqlite file with DB Browser for SQLite). According to https://github.com/sqlitebrowser/sqlitebrowser/issues/12#issuecomment-284224656, it's virtually impossible to crack and open the database as of now. I already started to associate PDF files manually within Mendeley Desktop :turtle:

tonyg commented 6 years ago

It looks like it's not even the open-source sqlcipher, but the closed-source, proprietary SQLite Encryption Extension (“SEE”).

I wrote up the results I got from looking into this, along with the technique I used to get access to a decrypted Mendeley database, here: https://eighty-twenty.org/2018/06/13/mendeley-encrypted-db

The good news is that it's possible. The bad news is that it's really difficult and not scalable because it is a manual procedure. It could potentially be automated, but it'd be tricky, and wouldn't work well anywhere but Linux, etc etc.

williamgunn commented 6 years ago

Hey @cream68 @mherrmann3 @tonyg @adamreeve , sorry for breaking things! We want to officially support local db access in a way that won't break when we make changes to how we store things & we're currently collecting use cases, so if you'd like to give the Mendeley developers some feedback on what data you need to access so we can make sure to support your use case, please get in touch via email.

adamreeve commented 6 years ago

@williamgunn for this script to work we need read+write acccess to the files associated with a Mendeley document. The use case is keeping the files associated with Mendeley documents in sync across multiple machines when those files are synchronised outside Mendeley using something like Dropbox.

For now I've updated the README to say that this script no longer works as of Mendeley 1.19. If Mendeley do provide a way to access this data I assume there will be a lot of work involved in getting this working again, and as I no longer use Mendeley myself I don't have the time or motivation to work on this, but would be happy to accept patches if anyone can get it working.

EChesters commented 6 years ago

Hi @adamreeve,

Apologies for reaching out on this forum, as I could not find an email to contact you. I am Elizabeth, one of the designers at Mendeley, who would be interested in hearing your feedback as William suggested.

If you are interested, please could you let me know what time would be best for you, at mendeley.design@elsevier.com?

Many thanks, Elizabeth