diff --git a/CHANGELOG b/CHANGELOG index 0884f61..c779529 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,7 @@ +0.1.9 (2017-xx-xx) +========================= +- Renamed the project to keepassxc-browser + 0.1.8 (2017-06-13) ========================= - Fixed showing wrong status messages diff --git a/README.md b/README.md index 1ca94b9..06ad9d0 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,22 @@ -# chromeKeePassXC +# keepassxc-browser Chrome extension for [KeePassXC](https://keepassxc.org/) with Native Messaging. This is a heavily forked version of [pfn](https://github.com/pfn)'s [chromeIPass](https://github.com/pfn/passifox). For testing purposes, please use following unofficial KeePassXC [release's](https://github.com/varjolintu/keepassxc/releases). -Get the extension for [Firefox](https://addons.mozilla.org/en-US/firefox/addon/chromekeepassxc/) or [Chrome/Chromium](https://chrome.google.com/webstore/detail/chromekeepassxc/iopaggbpplllidnfmcghoonnokmjoicf). +Get the extension for [Firefox](https://addons.mozilla.org/en-US/firefox/addon/keepassxc-browser/) or [Chrome/Chromium](https://chrome.google.com/webstore/detail/keepassxc-browser/iopaggbpplllidnfmcghoonnokmjoicf). ## Protocol -Transmitting messages between KeePassXC and chromeKeePassXC is totally rewritten. This is still under development. +Transmitting messages between KeePassXC and keepassxc-browser is totally rewritten. This is still under development. Now the requests are encrypted by [TweetNaCl.js](https://github.com/dchest/tweetnacl-js) box method and does the following: -1. chromeKeePassXC generates a key pair (with public and secret key) and transfers the public key to KeePassXC -2. When KeePassXC receives the public key it generates its own key pair and transfers the public key to chromeKeePassXC +1. keepassxc-browser generates a key pair (with public and secret key) and transfers the public key to KeePassXC +2. When KeePassXC receives the public key it generates its own key pair and transfers the public key to keepassxc-browser 3. All messages (excluding get-databasehash) are now encrypted. -4. When chromeKeePassXC sends a message it is encrypted with KeePassXC's public key, a random generated nonce and chromeKeePassXC's secret key. -5. When KeePassXC sends a message it is encrypted with chromeKeePassXC's public key etc. -6. Databases are stored based on the current public key used with `associate`. A new key pair for data transfer is generated each time chromeKeePassXC is launched. +4. When keepassxc-browser sends a message it is encrypted with KeePassXC's public key, a random generated nonce and keepassxc-browser's secret key. +5. When KeePassXC sends a message it is encrypted with keepassxc-browser's public key etc. +6. Databases are stored based on the current public key used with `associate`. A new key pair for data transfer is generated each time keepassxc-browser is launched. Encrypted messages are built with these JSON parameters: - action - `test-associate`, `associate`, `get-logins`, `get-logins-count`, `set-login`... diff --git a/com.varjolintu.chromekeepassxc-chrome.json b/com.varjolintu.keepassxc-browser-chrome.json similarity index 85% rename from com.varjolintu.chromekeepassxc-chrome.json rename to com.varjolintu.keepassxc-browser-chrome.json index ce25fa8..86e3953 100644 --- a/com.varjolintu.chromekeepassxc-chrome.json +++ b/com.varjolintu.keepassxc-browser-chrome.json @@ -1,5 +1,5 @@ { - "name": "com.varjolintu.chromekeepassxc", + "name": "com.varjolintu.keepassxc-browser", "description": "KeepassXC integration with Chrome with Native Messaging support", "path" : "%%replace%%", "type": "stdio", diff --git a/com.varjolintu.chromekeepassxc-firefox.json b/com.varjolintu.keepassxc-browser-firefox.json similarity index 65% rename from com.varjolintu.chromekeepassxc-firefox.json rename to com.varjolintu.keepassxc-browser-firefox.json index b5e0176..2a2931f 100644 --- a/com.varjolintu.chromekeepassxc-firefox.json +++ b/com.varjolintu.keepassxc-browser-firefox.json @@ -1,9 +1,9 @@ { - "name": "com.varjolintu.chromekeepassxc", + "name": "com.varjolintu.keepassxc-browser", "description": "KeepassXC integration with Firefox with Native Messaging support", "path" : "%%replace%%", "type": "stdio", "allowed_extensions": [ - "chromeKeePassXC@sami.vanttinen" + "keepassxc-browser@sami.vanttinen" ] } \ No newline at end of file diff --git a/install.sh b/install.sh index 893fe68..4d2fdcd 100755 --- a/install.sh +++ b/install.sh @@ -19,7 +19,7 @@ set -e DIR="$( cd "$( dirname "$0" )" && pwd )" -APP_NAME="com.varjolintu.chromekeepassxc" +APP_NAME="com.varjolintu.keepassxc-browser" HOST_FILE="$DIR" KEEPASSXC_PATH="" @@ -52,9 +52,9 @@ else fi fi -if [ -e "$DIR/chromeKeePassXC" ]; then +if [ -e "$DIR/keepassxc-browser" ]; then echo "Detected development binary" - HOST_FILE="$DIR/chromeKeePassXC" + HOST_FILE="$DIR/keepassxc-browser" fi echo "" @@ -123,9 +123,9 @@ mkdir -p "$TARGET_DIR" # Copy manifest host config file if [ "$BROWSER" == "1" ] || [ "$BROWSER" == "2" ] || [ "$BROWSER" == "4" ]; then - cp "$DIR/com.varjolintu.chromekeepassxc-chrome.json" "$TARGET_DIR/$APP_NAME.json" + cp "$DIR/com.varjolintu.keepassxc-browser-chrome.json" "$TARGET_DIR/$APP_NAME.json" else - cp "$DIR/com.varjolintu.chromekeepassxc-firefox.json" "$TARGET_DIR//$APP_NAME.json" + cp "$DIR/com.varjolintu.keepassxc-browser-firefox.json" "$TARGET_DIR//$APP_NAME.json" fi # Replace path to host diff --git a/chromeKeePassXC/background/browserAction.js b/keepassxc-browser/background/browserAction.js similarity index 100% rename from chromeKeePassXC/background/browserAction.js rename to keepassxc-browser/background/browserAction.js diff --git a/chromeKeePassXC/background/event.js b/keepassxc-browser/background/event.js similarity index 100% rename from chromeKeePassXC/background/event.js rename to keepassxc-browser/background/event.js diff --git a/chromeKeePassXC/background/httpauth.js b/keepassxc-browser/background/httpauth.js similarity index 100% rename from chromeKeePassXC/background/httpauth.js rename to keepassxc-browser/background/httpauth.js diff --git a/chromeKeePassXC/background/init.js b/keepassxc-browser/background/init.js similarity index 100% rename from chromeKeePassXC/background/init.js rename to keepassxc-browser/background/init.js diff --git a/chromeKeePassXC/background/keepass.js b/keepassxc-browser/background/keepass.js similarity index 99% rename from chromeKeePassXC/background/keepass.js rename to keepassxc-browser/background/keepass.js index 836167a..7b8813d 100644 --- a/chromeKeePassXC/background/keepass.js +++ b/keepassxc-browser/background/keepass.js @@ -10,15 +10,15 @@ keepass.isEncryptionKeyUnrecognized = false; keepass.currentKeePassXC = {"version": 0, "versionParsed": 0}; keepass.latestKeePassXC = (typeof(localStorage.latestKeePassXC) == 'undefined') ? {"version": 0, "versionParsed": 0, "lastChecked": null} : JSON.parse(localStorage.latestKeePassXC); keepass.requiredKeePassXC = 214; -keepass.nativeHostName = "com.varjolintu.chromekeepassxc"; +keepass.nativeHostName = "com.varjolintu.keepassxc-browser"; keepass.nativePort = null; keepass.keySize = 24; keepass.latestVersionUrl = "https://raw.githubusercontent.com/keepassxreboot/keepassxc/develop/CHANGELOG"; keepass.cacheTimeout = 30 * 1000; // milliseconds keepass.databaseHash = "no-hash"; //no-hash = KeePassXC is too old and does not return a hash value keepass.keyRing = (typeof(localStorage.keyRing) == 'undefined') ? {} : JSON.parse(localStorage.keyRing); -keepass.keyId = "chromekeepassxc-cryptokey-name"; -keepass.keyBody = "chromekeepassxc-key"; +keepass.keyId = "keepassxc-browser-cryptokey-name"; +keepass.keyBody = "keepassxc-browser-key"; window.browser = (function () { return window.msBrowser || @@ -72,6 +72,7 @@ keepass.updateCredentials = function(callback, tab, entryId, username, password, message: keepass.encrypt(messageData, nonce), nonce: keepass.b64e(nonce) }; + console.log(request); keepass.callbackOnId(keepass.nativePort.onMessage, "set-login", function(response) { if (response.message && response.nonce) { diff --git a/chromeKeePassXC/background/nacl-util.min.js b/keepassxc-browser/background/nacl-util.min.js similarity index 100% rename from chromeKeePassXC/background/nacl-util.min.js rename to keepassxc-browser/background/nacl-util.min.js diff --git a/chromeKeePassXC/background/nacl.min.js b/keepassxc-browser/background/nacl.min.js similarity index 100% rename from chromeKeePassXC/background/nacl.min.js rename to keepassxc-browser/background/nacl.min.js diff --git a/chromeKeePassXC/background/page.js b/keepassxc-browser/background/page.js similarity index 100% rename from chromeKeePassXC/background/page.js rename to keepassxc-browser/background/page.js diff --git a/chromeKeePassXC/icons/19x19/icon_bang_19x19.png b/keepassxc-browser/icons/19x19/icon_bang_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_bang_19x19.png rename to keepassxc-browser/icons/19x19/icon_bang_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_cross_19x19.png b/keepassxc-browser/icons/19x19/icon_cross_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_cross_19x19.png rename to keepassxc-browser/icons/19x19/icon_cross_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_new_bang_19x19.png b/keepassxc-browser/icons/19x19/icon_new_bang_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_new_bang_19x19.png rename to keepassxc-browser/icons/19x19/icon_new_bang_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_new_cross_19x19.png b/keepassxc-browser/icons/19x19/icon_new_cross_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_new_cross_19x19.png rename to keepassxc-browser/icons/19x19/icon_new_cross_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_new_normal_19x19.png b/keepassxc-browser/icons/19x19/icon_new_normal_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_new_normal_19x19.png rename to keepassxc-browser/icons/19x19/icon_new_normal_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_new_questionmark_19x19.png b/keepassxc-browser/icons/19x19/icon_new_questionmark_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_new_questionmark_19x19.png rename to keepassxc-browser/icons/19x19/icon_new_questionmark_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_new_questionmark_blue_19x19.png b/keepassxc-browser/icons/19x19/icon_new_questionmark_blue_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_new_questionmark_blue_19x19.png rename to keepassxc-browser/icons/19x19/icon_new_questionmark_blue_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_normal_19x19.png b/keepassxc-browser/icons/19x19/icon_normal_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_normal_19x19.png rename to keepassxc-browser/icons/19x19/icon_normal_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_questionmark_19x19.png b/keepassxc-browser/icons/19x19/icon_questionmark_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_questionmark_19x19.png rename to keepassxc-browser/icons/19x19/icon_questionmark_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_remember_red_background_19x19.png b/keepassxc-browser/icons/19x19/icon_remember_red_background_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_remember_red_background_19x19.png rename to keepassxc-browser/icons/19x19/icon_remember_red_background_19x19.png diff --git a/chromeKeePassXC/icons/19x19/icon_remember_red_lock_19x19.png b/keepassxc-browser/icons/19x19/icon_remember_red_lock_19x19.png similarity index 100% rename from chromeKeePassXC/icons/19x19/icon_remember_red_lock_19x19.png rename to keepassxc-browser/icons/19x19/icon_remember_red_lock_19x19.png diff --git a/chromeKeePassXC/icons/keepassxc-dark_128x128.png b/keepassxc-browser/icons/keepassxc-dark_128x128.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc-dark_128x128.png rename to keepassxc-browser/icons/keepassxc-dark_128x128.png diff --git a/chromeKeePassXC/icons/keepassxc-dark_16x16.png b/keepassxc-browser/icons/keepassxc-dark_16x16.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc-dark_16x16.png rename to keepassxc-browser/icons/keepassxc-dark_16x16.png diff --git a/chromeKeePassXC/icons/keepassxc-dark_32x32.png b/keepassxc-browser/icons/keepassxc-dark_32x32.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc-dark_32x32.png rename to keepassxc-browser/icons/keepassxc-dark_32x32.png diff --git a/chromeKeePassXC/icons/keepassxc-dark_48x48.png b/keepassxc-browser/icons/keepassxc-dark_48x48.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc-dark_48x48.png rename to keepassxc-browser/icons/keepassxc-dark_48x48.png diff --git a/chromeKeePassXC/icons/keepassxc-dark_64x64.png b/keepassxc-browser/icons/keepassxc-dark_64x64.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc-dark_64x64.png rename to keepassxc-browser/icons/keepassxc-dark_64x64.png diff --git a/chromeKeePassXC/icons/keepassxc_128x128.png b/keepassxc-browser/icons/keepassxc_128x128.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc_128x128.png rename to keepassxc-browser/icons/keepassxc_128x128.png diff --git a/chromeKeePassXC/icons/keepassxc_16x16.png b/keepassxc-browser/icons/keepassxc_16x16.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc_16x16.png rename to keepassxc-browser/icons/keepassxc_16x16.png diff --git a/chromeKeePassXC/icons/keepassxc_19x19.png b/keepassxc-browser/icons/keepassxc_19x19.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc_19x19.png rename to keepassxc-browser/icons/keepassxc_19x19.png diff --git a/chromeKeePassXC/icons/keepassxc_32x32.png b/keepassxc-browser/icons/keepassxc_32x32.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc_32x32.png rename to keepassxc-browser/icons/keepassxc_32x32.png diff --git a/chromeKeePassXC/icons/keepassxc_38x38.png b/keepassxc-browser/icons/keepassxc_38x38.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc_38x38.png rename to keepassxc-browser/icons/keepassxc_38x38.png diff --git a/chromeKeePassXC/icons/keepassxc_48x48.png b/keepassxc-browser/icons/keepassxc_48x48.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc_48x48.png rename to keepassxc-browser/icons/keepassxc_48x48.png diff --git a/chromeKeePassXC/icons/keepassxc_64x64.png b/keepassxc-browser/icons/keepassxc_64x64.png similarity index 100% rename from chromeKeePassXC/icons/keepassxc_64x64.png rename to keepassxc-browser/icons/keepassxc_64x64.png diff --git a/chromeKeePassXC/icons/key_16x16.png b/keepassxc-browser/icons/key_16x16.png similarity index 100% rename from chromeKeePassXC/icons/key_16x16.png rename to keepassxc-browser/icons/key_16x16.png diff --git a/chromeKeePassXC/icons/key_24x24.png b/keepassxc-browser/icons/key_24x24.png similarity index 100% rename from chromeKeePassXC/icons/key_24x24.png rename to keepassxc-browser/icons/key_24x24.png diff --git a/chromeKeePassXC/jquery-3.2.1.min.js b/keepassxc-browser/jquery-3.2.1.min.js similarity index 100% rename from chromeKeePassXC/jquery-3.2.1.min.js rename to keepassxc-browser/jquery-3.2.1.min.js diff --git a/chromeKeePassXC/jquery-ui.min.css b/keepassxc-browser/jquery-ui.min.css similarity index 100% rename from chromeKeePassXC/jquery-ui.min.css rename to keepassxc-browser/jquery-ui.min.css diff --git a/chromeKeePassXC/jquery-ui.min.js b/keepassxc-browser/jquery-ui.min.js similarity index 100% rename from chromeKeePassXC/jquery-ui.min.js rename to keepassxc-browser/jquery-ui.min.js diff --git a/chromeKeePassXC/chromekeepassxc.css b/keepassxc-browser/keepassxc-browser.css similarity index 100% rename from chromeKeePassXC/chromekeepassxc.css rename to keepassxc-browser/keepassxc-browser.css diff --git a/chromeKeePassXC/chromekeepassxc.js b/keepassxc-browser/keepassxc-browser.js similarity index 96% rename from chromeKeePassXC/chromekeepassxc.js rename to keepassxc-browser/keepassxc-browser.js index f3505c4..97389dd 100644 --- a/chromeKeePassXC/chromekeepassxc.js +++ b/keepassxc-browser/keepassxc-browser.js @@ -1096,7 +1096,7 @@ cipFields.useDefinedCredentialFields = function() { var cip = {}; -// settings of chromeKeePassXC +// settings of keepassxc-browser cip.settings = {}; // username field which will be set on focus cip.u = null; @@ -1549,7 +1549,7 @@ cip.fillIn = function(combination, onlyPassword, suppressWarnings) { if (countPasswords > 1) { if (!suppressWarnings) { var message = "Error #105\nMore than one login was found in KeePassXC!\n" + - "Press the chromeKeePassXC icon for more options."; + "Press the keepassxc-browser icon for more options."; browser.runtime.sendMessage({ action: 'alert', args: [message] @@ -1569,7 +1569,7 @@ cip.fillIn = function(combination, onlyPassword, suppressWarnings) { else { if (!suppressWarnings) { var message = "Error #104\nMore than one login was found in KeePassXC!\n" + - "Press the chromeKeePassXC icon for more options."; + "Press the keepassxc-browser icon for more options."; browser.runtime.sendMessage({ action: 'alert', args: [message] diff --git a/chromeKeePassXC/manifest.json b/keepassxc-browser/manifest.json similarity index 86% rename from chromeKeePassXC/manifest.json rename to keepassxc-browser/manifest.json index 5d5b568..08d2507 100644 --- a/chromeKeePassXC/manifest.json +++ b/keepassxc-browser/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 2, - "name": "chromeKeePassXC", - "version": "0.1.8", + "name": "keepassxc-browser", + "version": "0.1.9", "description": "KeePassXC integration for modern web browsers", "author": "Sami Vänttinen", "icons": { @@ -37,8 +37,8 @@ "content_scripts": [ { "matches": [ "http://*/*", "https://*/*" ], - "js": [ "jquery-3.2.1.min.js", "jquery-ui.min.js", "chromekeepassxc.js" ], - "css": [ "jquery-ui.min.css", "chromekeepassxc.css" ], + "js": [ "jquery-3.2.1.min.js", "jquery-ui.min.js", "keepassxc-browser.js" ], + "css": [ "jquery-ui.min.css", "keepassxc-browser.css" ], "run_at": "document_idle", "all_frames": true } @@ -74,7 +74,7 @@ ], "applications": { "gecko": { - "id": "chromeKeePassXC@sami.vanttinen", + "id": "keepassxc-browser@sami.vanttinen", "strict_min_version": "53.0" } } diff --git a/chromeKeePassXC/options/bootstrap.min.css b/keepassxc-browser/options/bootstrap.min.css similarity index 100% rename from chromeKeePassXC/options/bootstrap.min.css rename to keepassxc-browser/options/bootstrap.min.css diff --git a/chromeKeePassXC/options/bootstrap.min.js b/keepassxc-browser/options/bootstrap.min.js similarity index 100% rename from chromeKeePassXC/options/bootstrap.min.js rename to keepassxc-browser/options/bootstrap.min.js diff --git a/chromeKeePassXC/options/http-auth-dialog.png b/keepassxc-browser/options/http-auth-dialog.png similarity index 100% rename from chromeKeePassXC/options/http-auth-dialog.png rename to keepassxc-browser/options/http-auth-dialog.png diff --git a/chromeKeePassXC/options/options.css b/keepassxc-browser/options/options.css similarity index 100% rename from chromeKeePassXC/options/options.css rename to keepassxc-browser/options/options.css diff --git a/chromeKeePassXC/options/options.html b/keepassxc-browser/options/options.html similarity index 88% rename from chromeKeePassXC/options/options.html rename to keepassxc-browser/options/options.html index b82529b..ef95eb4 100644 --- a/chromeKeePassXC/options/options.html +++ b/keepassxc-browser/options/options.html @@ -1,7 +1,7 @@
-- The following KeePassXC databases are connected to chromeKeePassXC. + The following KeePassXC databases are connected to keepassxc-browser.