geth 选项“--allow-insecure-unlock”,究竟是什么意思?

geth option "--allow-insecure-unlock", what exactly does it mean?

github 上的文档说:

--allow-insecure-unlock Allow insecure account unlocking when account-related RPCs are exposed by http

而且,我必须在启动时添加选项geth,否则无法解锁帐户。


问题

如果您通过 HTTP 协议使用 geth 访问节点,则无法使用 personal.unlockAccount(web3.eth.account,密码)解锁帐户。如果您尝试,您将收到错误消息“禁止使用 HTTP 访问解锁帐户”。因此,为了避免这种情况,您必须使用标志 allow-insecure-unlock

这是因为如果节点暴露在外部,解锁操作是不安全的。在 PR #17037 (https://github.com/ethereum/go-ethereum/pull/17037)

的 go-ethereum 中添加了 "protection"