openethereum/js/packages/api/local/ethkey/index.js

48 lines
1.4 KiB
JavaScript
Raw Normal View History

2017-03-29 17:07:58 +02:00
// Copyright 2015-2017 Parity Technologies (UK) Ltd.
// This file is part of Parity.
// Parity is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// Parity is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with Parity. If not, see <http://www.gnu.org/licenses/>.
2017-04-03 18:50:11 +02:00
import workerPool from './workerPool';
2017-03-29 17:07:58 +02:00
2017-04-03 18:50:11 +02:00
export function createKeyObject (key, password) {
return workerPool.action('createKeyObject', { key, password })
2017-04-03 18:50:11 +02:00
.then((obj) => JSON.parse(obj));
}
2017-03-29 17:07:58 +02:00
2017-04-03 18:50:11 +02:00
export function decryptPrivateKey (keyObject, password) {
2017-04-04 11:49:36 +02:00
return workerPool
2017-04-03 18:50:11 +02:00
.action('decryptPrivateKey', { keyObject, password })
.then((privateKey) => {
if (privateKey) {
return Buffer.from(privateKey);
}
2017-03-29 17:07:58 +02:00
2017-04-03 18:50:11 +02:00
return null;
});
2017-03-29 17:07:58 +02:00
}
export function phraseToAddress (phrase) {
2017-04-03 18:50:11 +02:00
return phraseToWallet(phrase)
.then((wallet) => wallet.address);
2017-03-29 17:07:58 +02:00
}
export function phraseToWallet (phrase) {
return workerPool.action('phraseToWallet', phrase);
2017-04-03 18:50:11 +02:00
}
export function verifySecret (secret) {
return workerPool.action('verifySecret', secret);
2017-03-29 17:07:58 +02:00
}