llave provides Electron and Cordova based UIs for the Ironclad password manager.
llave allows you to have as many encrypted database files as you like. Databases are encrypted using industry-standard cryptographic protocols. Databases are regular files on your device. Databases are accessed using the host platform's native file chooser allowing you to load files from any location supported by the chooser: local or remote.
If you would like to sync encrypted password databases between multiple devices you can use any avenue supported by your platform such as iCloud, Google Drive, Dropbox, OneDrive, microSD, etc. llave does not provide storage for your database files. You control where the database files are stored.
llave for the desktop allows you to export the unencrypted contents of your password databases. Unecrypted database files are plain JSON text.
On the desktop llave runs as an Electron application. In this environment llave communicates with the Ironclad binary to provide read/write access to your encrypted password databases.
You can install llave for the desktop using the following procedure:
-
Download and extract the latest llave
llave.zipfile from the llave Releases page. -
Download and extract the Electron 6.0.12 release for your platform from the Electron 6.0.12 Release page.
-
Copy both the llave
app.esarfile andapp.esar.unpackedfolder fromllave.zipto the following location:
On macOS (you will need to right click Electron.app and Show Package Contents):
electron/Electron.app/Contents/Resources
On Windows and Linux:
electron/resources
You are now ready to run llave.
You can do so by double clicking electron, Electron, or electron.exe from the electron folder.
-
Clone the llave repository and install nodejs.
-
Run
npm installto install dependencies -
Run
npm run packageto create anapp.esarfile and anapp.esar.unpackeddirectory in the build folder -
Follow the steps in
using llave on the desktopsubstituting your own app.esar file and app.esar.unpacked folder for the ones in step 3.
On mobile llave runs as an Apache Cordova application. In this environment llave provides a read-only view of your
password databases. It uses the Web Cryptography API provided by your mobile
browser to decrypt the password database. Your mobile browser will need to support the Web Cryptography API -
specifically window.crypto and window.crypto.subtle without prefixes like msCrypto or webkitCrypto.
-
Clone the llave repository and install nodejs.
-
Run
npm installto install dependencies -
Run
npm run packageto create acordova/wwwdirectory in the build folder -
Refer to the Getting Started instructions at Apache Cordova to create and run a project.
-
Copy the contents of the
cordova/wwwdirectory from the llave build folder to thewwwdirectory in your Cordova project and re-run the project. -
Follow the instructions on the Cordova website for building and deploying a signed mobile application from your project.
If you simply want to emulate the llave for mobile application for local testing in your browser without creating a full blown mobile app with Cordova then you can do the following:
-
Clone the llave repository and install nodejs.
-
Run
npm installto install dependencies -
Run
npm run packageto create awebdirectory in the build folder -
Copy the contents of the
webdirectory to a web server and load in your browser
-
Git clone the llave repository and install nodejs.
-
Run
npm installfrom the root llave folder. -
Run
npm run chmodto ensure the ironclad binaries are executable. -
Run
node server.jsto start Webpack. -
In another terminal window run
npm startto start Electron. -
The web/mobile version is also now available from your browser at
http://localhost:8080/web.
You are now running llave in development mode.
Changes made to the React application will cause Webpack to rebuild llave.
special thanks to the following:
-
ironclad of course
-
My Spanish teachers
