From 06926df39987191164e67e9b08ac4604228571fc Mon Sep 17 00:00:00 2001 From: antelle Date: Sun, 11 Jun 2017 09:38:52 +0200 Subject: [PATCH] using keytar --- package.json | 2 +- scripts/sign.js | 18 ++++++++---------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 842321b..88cd0c5 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ }, "homepage": "https://github.com/keeweb/keeweb-plugins#readme", "devDependencies": { - "keychain": "^1.3.0", + "keytar": "^4.0.3", "pkcs15-smartcard-sign": "^1.0.0" } } diff --git a/scripts/sign.js b/scripts/sign.js index 1541416..9e5b047 100644 --- a/scripts/sign.js +++ b/scripts/sign.js @@ -1,6 +1,6 @@ const fs = require('fs'); const signer = require('pkcs15-smartcard-sign'); -const keychain = require('keychain'); +const keytar = require('keytar'); const verifyKey = fs.readFileSync('keys/public-key.pem'); const key = '02'; @@ -9,15 +9,13 @@ function getPin() { if (getPin.pin) { return Promise.resolve(getPin.pin); } - return new Promise((resolve, reject) => { - keychain.getPassword({ account: 'keeweb', service: 'keeweb.pin', type: 'generic' }, (err, pass) => { - if (err) { - reject(err); - } else { - getPin.pin = pass; - resolve(pass); - } - }); + return keytar.getPassword('keeweb.pin', 'keeweb').then(pass => { + if (pass) { + getPin.pin = pass; + return pass; + } else { + throw 'Cannot find PIN'; + } }); }