1

我正在使用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 应用程序,它可以毫无问题地打开它。

欢迎任何想法!谢谢!

4

1 回答 1

0

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

于 2021-12-02T13:19:46.727 回答