mirror of
https://github.com/keepassxreboot/keepassxc-browser.git
synced 2026-03-11 08:54:43 +00:00
Small changes to test-associate.
This commit is contained in:
parent
108a53734e
commit
6bb74a89fd
2 changed files with 20 additions and 16 deletions
|
|
@ -86,6 +86,7 @@ Unencrypted message:
|
|||
```javascript
|
||||
{
|
||||
"action": "test-associate",
|
||||
"id": "saved database identifier>",
|
||||
"key": "<saved database public key>"
|
||||
}
|
||||
```
|
||||
|
|
@ -209,4 +210,4 @@ Response message data (success, decrypted):
|
|||
"hash": "29234e32274a32276e25666a42",
|
||||
"version": "2.1.2"
|
||||
}
|
||||
```
|
||||
```
|
||||
|
|
|
|||
|
|
@ -169,7 +169,7 @@ keepass.handleReply = function (msg) {
|
|||
// Specific callback handling. Needed?
|
||||
/*var reply;
|
||||
if (msg.action == "generate-password") {
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
reply = msg;
|
||||
|
|
@ -185,7 +185,7 @@ keepass.callbackOnId = function (ev, id, callback) {
|
|||
if(msg.action == id) {
|
||||
var reply = keepass.handleReply(msg);
|
||||
ev.removeListener(handler);
|
||||
callback(reply);
|
||||
callback(reply);
|
||||
}
|
||||
}
|
||||
return handler;
|
||||
|
|
@ -332,7 +332,7 @@ keepass.associate = function(callback, tab) {
|
|||
|
||||
browserAction.show(callback, tab);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
keepass.nativePort.postMessage(request);
|
||||
}
|
||||
|
|
@ -355,27 +355,29 @@ keepass.testAssociation = function (tab, triggerUnlock) {
|
|||
|
||||
var key = keepass.b64e(keepass.keyPair.publicKey);
|
||||
var nonce = nacl.randomBytes(keepass.keySize);
|
||||
var idkey = keepass.getCryptoKey();
|
||||
var dbkeys = keepass.getCryptoKey();
|
||||
var id = dbkeys[0];
|
||||
var idkey = dbkeys[1];
|
||||
console.log("ID: " + id);
|
||||
console.log("Key: " + idkey);
|
||||
|
||||
var messageData = {
|
||||
action: "test-associate",
|
||||
key: idkey
|
||||
};
|
||||
|
||||
|
||||
var request = {
|
||||
action: "test-associate",
|
||||
message: keepass.encrypt(messageData, nonce),
|
||||
nonce: keepass.b64e(nonce)
|
||||
};
|
||||
|
||||
// TODO: Fix the return value via async(?)
|
||||
// TODO: Fix the return value via async
|
||||
keepass.callbackOnId(keepass.nativePort.onMessage, "test-associate", function(response) {
|
||||
if (response.message && response.nonce) {
|
||||
var res = keepass.decrypt(response.message, response.nonce);
|
||||
if (res == false)
|
||||
{
|
||||
if (res == false) {
|
||||
console.log("Failed to decrypt message");
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -419,6 +421,7 @@ keepass.testAssociation = function (tab, triggerUnlock) {
|
|||
|
||||
keepass.getDatabaseHash = function (callback, tab, triggerUnlock) {
|
||||
if (!keepass.isConnected) {
|
||||
page.tabs[tab.id].errorMessage = "Not connected with KeePassXC.";
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -468,7 +471,7 @@ keepass.changePublicKeys = function(tab) {
|
|||
|
||||
keepass.callbackOnId(keepass.nativePort.onMessage, "change-public-keys", function(response) {
|
||||
console.log("change-public-keys reply received");
|
||||
if(response.version) {
|
||||
if (response.version) {
|
||||
keepass.currentKeePassXC = {
|
||||
"version": response.version,
|
||||
"versionParsed": parseInt(response.version.replace(/\./g,""))
|
||||
|
|
@ -619,7 +622,7 @@ keepass.checkForNewKeePassXCVersion = function() {
|
|||
if (xhr.readyState == 4) {
|
||||
if (xhr.status == 200) {
|
||||
var $version = xhr.responseText;
|
||||
if ($version.substring(0, 1) == "2") {
|
||||
if ($version.substring(0, 1) == "2") {
|
||||
$version = $version.substring(0, $version.indexOf(" "));
|
||||
keepass.latestKeePassXC.version = $version;
|
||||
keepass.latestKeePassXC.versionParsed = parseInt($version.replace(/\./g,""));
|
||||
|
|
@ -639,7 +642,7 @@ keepass.checkForNewKeePassXCVersion = function() {
|
|||
console.log("checkForNewKeePassXCVersion error: " + e);
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
xhr.send();
|
||||
keepass.latestKeePassXC.lastChecked = new Date();
|
||||
}
|
||||
|
||||
|
|
@ -763,8 +766,8 @@ keepass.getCryptoKey = function() {
|
|||
key = keepass.keyRing[keepass.databaseHash].key;
|
||||
}
|
||||
|
||||
//return key ? [id, key] : null;
|
||||
return key ? key : null;
|
||||
return key ? [id, key] : null;
|
||||
//return key ? key : null;
|
||||
}
|
||||
|
||||
keepass.setCryptoKey = function(id, key) {
|
||||
|
|
@ -781,4 +784,4 @@ keepass.decrypt = function(input, nonce, toStr) {
|
|||
var m = keepass.b64d(input);
|
||||
var n = keepass.b64d(nonce);
|
||||
return nacl.box.open(m, n, keepass.serverPublicKey, keepass.keyPair.secretKey);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue