web3.eth.accounts.decrypt выдает ошибку в cryp.createDecipheriv - PullRequest
0 голосов
/ 21 мая 2018

Я создавал простой Dapp, используя Web3 и Ethereum Test Network.Я пытаюсь расшифровать файл JSON Keystore версии 3, но получаю ошибку

this._web3.eth.accounts.decrypt( JSON.parse(jsonfile), "test123456789");

Ошибка выглядит следующим образом

cryp.createDecipheriv is not a function

Я использую 1.0.0-beta.34 версия.

Странная вещь в том, что это происходит в моем угловом приложении.

Когда я создал тестовое приложение в VueJS.функция дешифрования выполнена успешно.

Я проделал ту же процедуру с обоими из них

npm install web3 --save

npm run-script build

и следил за тем, как это будет использоваться в документации

http://web3js.readthedocs.io/en/1.0/web3-eth-accounts.html?highlight=encrypt

Мой вопрос заключается в том, почему эта ошибка возникает в моем угловом приложении, но она работает в моем приложении vue.Я хочу сделать эту работу и для углового приложения, но, к сожалению, не повезло.

Все, что я видел информацию об этом, это https://github.com/ethereum/web3.js/issues/1071 Но я не понимаю, что здесь делать.

Спасибо

1 Ответ

0 голосов
/ 21 мая 2018

ОБНОВЛЕНИЕ: После обдумывания немного и после многих причин.Я решил отредактировать index.js из web3-eth-account

и изменить

var cryp = (typeof global === 'undefined') ? require('crypto-browserify') : require('crypto');

на

var cryp = require('crypto-browserify');

. Теперь это работает.Но я все еще не знаю, что не так с моей угловой настройкой.Приложение vue имеет тот же код, но работает.

...