Estoy usando la biblioteca kdbxweb . Mi objetivo es abrir un archivo de base de datos kdbx y luego recuperar una contraseña. Siguiendo el ejemplo de la página, e inspirado también por algunas cosas que vi en el código de keepass, que usa esta lib, se me ocurrió esto:
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); Lamentablemente cuando lo ejecuto me da: Error | KdbxError: Error BadSignature
El archivo y la contraseña son correctos; Verifiqué eso usando la aplicación keepass, que lo abrirá sin problemas.
¡Cualquier idea es bienvenida! ¡Gracias!
Bien, descubrí cuál era el problema. Estaba en la estructura del archivo keepass kdbx. Se generó al importar un csv, pero de alguna manera todas las entradas estaban directamente bajo la raíz. Esto me dio errores. Ahora reestructurándolo con un Grupo "db" (por defecto) y luego colocando las entradas debajo que resolvieron el problema.