Accessing keepass databass returns KdbxError: Error BadSignature

Accessing keepass databass returns 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 应用程序,它将毫无问题地打开它。

欢迎任何想法!谢谢!

好的,我发现问题出在哪里了。它位于 keepass kdbx 文件的结构中。它是通过导入 csv 生成的,但不知何故所有条目都直接在 root 下。这给了我错误。现在用一个“db”组(默认情况下)对其进行重组,然后将条目放在该组下解决了这个问题。