Как можно разблокировать аккаунт (не личный)?

Предыстория Существует 2 разных способа создания учетных записей в web3.

1. web3.eth.personal.newAccount(password, [callback])
2. web3.eth.accounts.create([entropy]);

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

web3.eth.personal.unlockAccount(fromAccount,password).then(function (result) {

На веб-сайте документации Web3 говорится, что эти методы //TODO getAccounts, unlockAccount, lockAccount, sendTransaction Мои вопросы

  1. Как разблокировать Аккаунт, созданный с опцией 2 (не персональный)

  2. Как получить приватный ключ из 1 варианта (personal.newAccount)

Заранее большое спасибо

Ответы (1)

ну, вы не разблокируете учетную запись, созданную с помощью варианта 2, потому что она изначально НЕ заблокирована. Он возвращает объект учетной записи с открытым ключом, который можно использовать для немедленной подписи транзакций. «Блокировка» означает защиту закрытого ключа паролем. Если закрытый ключ учетной записи не зашифрован, это уже «разблокированная учетная запись», и вы можете просто использовать функцию signTransaction возвращаемого объекта учетной записи, чтобы подписать и отправить транзакцию.

Большое спасибо за комментарий. Причина публикации: допустим, я не буду использовать учетную запись через два дня после создания. как я могу использовать его для подписания транзакции в этом случае? Возможно ли это без web3.eth.personal.unlockAccount?
@ Зара Даниелян, да, если у вас есть этот возвращенный объект учетной записи (который содержит закрытый ключ в открытом виде), вы можете подписывать с ним транзакции. На самом деле, пока вы где-то храните этот открытый закрытый ключ, вы (и любой, кто имеет к нему доступ) можете подписывать транзакции в любое время. Нечего разблокировать, так как изначально ничего не заблокировано. Хотя это НЕ рекомендуется, поскольку хранить закрытый ключ в виде открытого текста ОЧЕНЬ небезопасно.
Спасибо )) Я выберу второй вариант , понимаю риски , возможно воспользуюсь внутренней системой шифрования . Но для большинства пользователей это удобный способ создания кошелька, они не хотят ничего хранить, поэтому я хочу отслеживать приватные ключи.