objectbox / objectbox-dart

Flutter database for super-fast Dart object persistence
https://docs.objectbox.io/getting-started
Apache License 2.0
927 stars 115 forks source link

Encryption #221

Open AdityaPawar27 opened 3 years ago

AdityaPawar27 commented 3 years ago

I wanted to know whether the mdb file is password protected and encrypted by default? And if it is, what the encryption techniques used. Are they realible enough? As I am going to use it to tore really sensitive data

vaind commented 3 years ago

No, encryption by the database itself is currently not supported. There's an issue in objectbox-java also asking for this, feel free to pitch in: https://github.com/objectbox/objectbox-java/issues/8

For now, you can store encrypted data, but need to do the encryption yourself, before writing to database. This will, however, limit your options on how to run queries.

Also, what do you mean by the title "The Created mdb file while opening ask's for a password." - how are you trying to open the file that it asks for a password. There's certainly no such functionality implemented in objectbox-dart.

AdityaPawar27 commented 3 years ago

Okay Got it! Actually Object Box's db file is stored in .mdb formot right? So I tried opening it and I can't open it. Can you tell me something about this please?

vaind commented 3 years ago

.mdb is just an extension used, it's not in any common format - you won't be able to open it (with any reasonable results) with anything but ObjectBox.

AdityaPawar27 commented 3 years ago

Okay Got it! Thanks. Also 1 more thing, Do you plan to bring encryption in near future? If yes then whats the tentative time it's gonna take?

greenrobot commented 3 years ago

We don't have a date for this and probably this won't happen short term.

A :+1: reaction on the issue will help to track interest though... Thanks.

AdityaPawar27 commented 3 years ago

Okay. Hope you do that soon as it's really important! Ya sure

alsoLut commented 2 years ago

any news on this?

QiXi commented 2 years ago

.mdb is just an extension used, it's not in any common format - you won't be able to open it (with any reasonable results) with anything but ObjectBox.

mdb extension have Microsoft Access databases, I spent over 10 hours trying to open this on linux. Why not use other letters, so as not to mislead people or write it in the documentation.

Buggaboo commented 2 years ago

In the meanwhile, you can check out SQLCipher and use greenDAO on top and combine the secure storage solution of your OS (e.g. keystore / keychain), to store a biometrically mapped key and a pin/passphrase, and use these to encrypt/decrypt your SQLCipher database.

ebelevics commented 1 year ago

What is the status of this, as I'll need to store sensitive data in db? I wanted to encrypt .mdb file with AES256, but I couldn't find any reasonable solution.

Also I can read .mdb file in text editor (Mac), all data strings are clear readable. Meaning any rooted or uncommon android OS could gain access to data

greenrobot-team commented 1 year ago

If there is an update, we will share it. See our last comment on possible workarounds.

If you are interested in this, please thumbs up the first post instead. This helps us track interest.