Comments (12)
Probably nothing wrong with you :)
Can you provide an example of the broken database with anonymized passwords?
from openkeepass.
You mean database wich created in another app? Or database wich dont opens in another app?
from openkeepass.
The database which you have first created in KeepassDroid and openkeepass was not able to open with the KeePassDatabaseUnreadableException
.
from openkeepass.
OK, here you go:
File created by keepassdroid. The password is "1". It contains 1 group and 1 entry.
I am opening like this:
val database = KeePassDatabase.getInstance(File(path)).openDatabase(password)
Here is stacktrace
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.kocmuk.kdbxreader1/com.examp
le.kocmuk.kdbxreader1.MainActivity}: de.slackspace.openkeepass.exception.KeePassDatabaseUnreadableException: Could not deserialize object to xml
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:159)
at android.app.ActivityThread.main(ActivityThread.java:6139)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
Caused by: de.slackspace.openkeepass.exception.KeePassDatabaseUnreadableException: Could not deserialize object to xml
at de.slackspace.openkeepass.parser.SimpleXmlParser.fromXml(SimpleXmlParser.java:28)
at de.slackspace.openkeepass.parser.KeePassDatabaseXmlParser.fromXml(KeePassDatabaseXmlParser.java:17)
at de.slackspace.openkeepass.api.KeePassDatabaseReader.parseDatabase(KeePassDatabaseReader.java:58)
at de.slackspace.openkeepass.api.KeePassDatabaseReader.decryptAndParseDatabase(KeePassDatabaseReader.java:46)
at de.slackspace.openkeepass.KeePassDatabase.openDatabase(KeePassDatabase.java:165)
at com.example.kocmuk.kdbxreader1.KDBXOperator.read(KDBXOperator.kt:28)
at com.example.kocmuk.kdbxreader1.MainActivity.onCreate(MainActivity.kt:30)
at android.app.Activity.performCreate(Activity.java:6758)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2618)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:159)
at android.app.ActivityThread.main(ActivityThread.java:6139)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
Caused by: org.simpleframework.xml.core.ValueRequiredException: Unable to satisfy @org.simpleframework.xml.ElementList(data=false, empty=true, entry=, inline=true, name=String, required=true, type=void) on field 'properties' private java.util.List de.slackspace.openkeepass.domain.Entry.properties for class de.slackspace.openkeepass.domain.Entry at line 1
at org.simpleframework.xml.core.Composite.validate(Composite.java:644)
at org.simpleframework.xml.core.Composite.readElements(Composite.java:449)
at org.simpleframework.xml.core.Composite.access$400(Composite.java:59)
at org.simpleframework.xml.core.Composite$Builder.read(Composite.java:1383)
at org.simpleframework.xml.core.Composite.read(Composite.java:201)
at org.simpleframework.xml.core.Composite.read(Composite.java:148)
at org.simpleframework.xml.core.Traverser.read(Traverser.java:92)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:190)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:167)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:144)
at org.simpleframework.xml.core.Composite.readVariable(Composite.java:619)
at org.simpleframework.xml.core.Composite.readInstance(Composite.java:573)
at org.simpleframework.xml.core.Composite.readUnion(Composite.java:549)
at org.simpleframework.xml.core.Composite.readElement(Composite.java:532)
at org.simpleframework.xml.core.Composite.readElements(Composite.java:445)
at org.simpleframework.xml.core.Composite.access$400(Composite.java:59)
at org.simpleframework.xml.core.Composite$Builder.read(Composite.java:1383)
at org.simpleframework.xml.core.Composite.read(Composite.java:201)
at org.simpleframework.xml.core.Composite.read(Composite.java:148)
at org.simpleframework.xml.core.Composite.readVariable(Composite.java:623)
at org.simpleframework.xml.core.Composite.readInstance(Composite.java:573)
at org.simpleframework.xml.core.Composite.readUnion(Composite.java:549)
at org.simpleframework.xml.core.Composite.readElement(Composite.java:532)
at org.simpleframework.xml.core.Composite.readElements(Composite.java:445)
at org.simpleframework.xml.core.Composite.access$400(Composite.java:59)
at org.simpleframework.xml.core.Composite$Builder.read(Composite.java:1383)
at org.simpleframework.xml.core.Composite.read(Composite.java:201)
at org.simpleframework.xml.core.Composite.read(Composite.java:148)
at org.simpleframework.xml.core.Traverser.read(Traverser.java:92)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:190)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:167)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:144)
at org.simpleframework.xml.core.Composite.readVariable(Composite.java:619)
at org.simpleframework.xml.core.Composite.readInstance(Composite.java:573)
at org.simpleframework.xml.core.Composite.readUnion(Composite.java:549)
at org.simpleframework.xml.core.Composite.readElement(Composite.java:532)
at org.simpleframework.xml.core.Composite.readElements(Composite.java:445)
at org.simpleframework.xml.core.Composite.access$400(Composite.java:59)
at org.simpleframework.xml.core.Composite$Builder.read(Composite.java:1383)
at org.simpleframework.xml.core.Composite.read(Composite.java:201)
at org.simpleframework.xml.core.Composite.read(Composite.java:148)
at org.simpleframework.xml.core.Traverser.read(Traverser.java:92)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:190)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:167)
at org.simpleframework.xml.core.CompositeInlineList.read(CompositeInlineList.java:144)
at org.simpleframework.xml.core.Composite.readVariable(Composite.java:619)
at org.simpleframework.xml.core.Composite.readInstance(Composite.java:573)
at org.simpleframework.xml.core.Composite.readUnion(Composite.java:549)
at org.simpleframework.xml.core.Composite.readElement(Composite.java:532)
at org.simpleframework.xml.core.Composite.readElements(Composite.java:445)
at org.simpleframework.xml.core.Composite.access$400(Composite.java:59)
at org.simpleframework.xml.core.Composite$Builder.read(Composite.java:1383)
at org.simpleframework.xml.core.Composite.read(Composite.java:201)
at org.simpleframework.xml.core.Composite.read(Composite.java:148)
at org.simpleframework.xml.core.Composite.readVariable(Composite.java:623)
at org.simpleframework.xml.core.Composite.readInstance(Composite.java:573)
at org.simpleframework.xml.core.Composite.readUnion(Composite.java:549)
at org.simpleframework.xml.core.Composite.readElement(Composite.java:532)
at org.simpleframework.xml.core.Composite.readElements(Composite.java:445)
at org.simpleframework.xml.core.Composite.access$400(Composite.java:59)
at org.simpleframework.xml.core.Composite$Builder.read(Composite.java:1383)
at org.simpleframework.xml.core.Composite.read(Composite.java:201)
at org.simpleframework.xml.core.Composite.read(Composite.java:148)
at org.simpleframework.xml.core.Traverser.read(Traverser.java:92)
at org.simpleframework.xml.core.Persister.read(Persister.java:625)
at org.simpleframework.xml.core.Persister.read(Persister.java:606)
at org.simpleframework.xml.core.Persister.read(Persister.java:584)
at org.simpleframework.xml.core.Persister.read(Persister.java:543)
at org.simpleframework.xml.core.Persister.read(Persister.java:444)
at de.slackspace.openkeepass.parser.SimpleXmlParser.fromXml(SimpleXmlParser.java:25)
... 18 more
P.S. Sorry for keepass file i renamed it format to jpg, because github don't allows to sand kdbx format. You can rename it to kdbx and then use
Sorry for kotlin language )))
from openkeepass.
Thanks, I will look into it.
from openkeepass.
I've found the issue that KeepassDroid does not set entry properties in the history entries. I think this is not correct. However, I've made my library more lenient in parsing and it should be able to open these files with the next version.
from openkeepass.
Ok, I had problem with internet, but now i can continue conversation. How can i get your update, did you pushed it on github? And the second question, why other keepass apps cant read file, created by this library.
from openkeepass.
Yes, it’s released on maven central and on GitHub as well.
I don’t know what other libraries do, but the file should be valid as it is openable with Keepass itself. You have to open an issue at the other library repositories if you want them to investigate.
from openkeepass.
Can you link me on it, because I see only your old repository. Yes, I am not too long on GitHub
from openkeepass.
I see only old version dependency, did it changed?
from openkeepass.
Here you go:
https://search.maven.org/#artifactdetails%7Cde.slackspace%7Copenkeepass%7C0.8.2%7Cjar
https://github.com/cternes/openkeepass/archive/openkeepass-0.8.2.zip
from openkeepass.
Thank you very much, all works great
from openkeepass.
Related Issues (20)
- Reading / Writing Entry attachments HOT 3
- Memory leak HOT 1
- Password is gibberish when opening file last saved by KeeWeb HOT 7
- java 9 warning HOT 9
- getUsername does not resolve referenced field's value HOT 2
- Some improvement ideas HOT 1
- The key has the wrong size. Have you installed Java Cryptography Extension (JCE)? Is the master key correct? HOT 2
- Could not deserialize object to XML HOT 7
- Is it possible to create a new database with the API ? HOT 1
- Trouble with reading of created by this library file.kdbx HOT 1
- EntryBuilder.iconData() strange behavior for me HOT 6
- ChaCha20 encryption with Argon2 key derivation support HOT 1
- openkeepass in Oracle 12c JVM Wrong IV length: must be 16 bytes long HOT 2
- Write database with keyfile
- writing to custom properties doesnt seem possible
- Idea to replace simple-xml-2.7.1.jar with com.carrotsearch.thirdparty:simple-xml-safe:2.7.1 ?
- KDBX 4 Support
- Why does it use spongycastle instead of bouncycastle?
- NPE loading keepass archive created using KeepassXC 2.7.1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openkeepass.