访问keepass数据库返回KdbxError:Error BadSignature



我正在使用kdbxweb库。我的目标是打开一个kdbx数据库文件,然后从中检索密码。按照页面上的例子,也受到我在使用这个库的keepass代码中看到的一些东西的启发,我想出了这个:

const password = kdbxweb.ProtectedValue.fromString('secret');
const credentials = new kdbxweb.Credentials(password);
const file = kdbxweb.ByteUtils.arrayToBuffer(
kdbxweb.ByteUtils.base64ToBytes('/home/chai/code/Kairos/src/e2e/db.kdbx'),
);
const db = await kdbxweb.Kdbx.load(file, credentials);

遗憾的是,当我运行它时,它给了我:Error | KdbxError: Error BadSignature

文件和密码正确;我使用keepass应用程序验证了这一点,它将毫无问题地打开它。

欢迎有任何想法!Thx!

好的,我发现了问题所在。它在keepass kdbx文件的结构中。它是通过导入csv生成的,但不知何故,所有条目都直接位于根目录下。这给了我错误。现在将其重组为一个集团";db";(默认情况下(,然后将解决问题的条目放在下面。

最新更新