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
,否则无法解锁帐户。
问题
- 这个选项到底是什么意思?我阅读了文档并搜索了 Google,仍然无法完全理解它。
- 使用这个选项安全吗,会产生安全漏洞吗?
如果您通过 HTTP 协议使用 geth 访问节点,则无法使用 personal.unlockAccount(web3.eth.account,密码)解锁帐户。如果您尝试,您将收到错误消息“禁止使用 HTTP 访问解锁帐户”。因此,为了避免这种情况,您必须使用标志 allow-insecure-unlock。
这是因为如果节点暴露在外部,解锁操作是不安全的。在 PR #17037 (https://github.com/ethereum/go-ethereum/pull/17037)
的 go-ethereum 中添加了 "protection"
github 上的文档说:
--allow-insecure-unlock Allow insecure account unlocking when account-related RPCs are exposed by http
而且,我必须在启动时添加选项geth
,否则无法解锁帐户。
问题
- 这个选项到底是什么意思?我阅读了文档并搜索了 Google,仍然无法完全理解它。
- 使用这个选项安全吗,会产生安全漏洞吗?
如果您通过 HTTP 协议使用 geth 访问节点,则无法使用 personal.unlockAccount(web3.eth.account,密码)解锁帐户。如果您尝试,您将收到错误消息“禁止使用 HTTP 访问解锁帐户”。因此,为了避免这种情况,您必须使用标志 allow-insecure-unlock。
这是因为如果节点暴露在外部,解锁操作是不安全的。在 PR #17037 (https://github.com/ethereum/go-ethereum/pull/17037)
的 go-ethereum 中添加了 "protection"