Web3Signer is an open-source signing service capable of signing on multiple platforms (Ethereum1 and 2, Filecoin) using private keys stored in an external vault, or encrypted on a disk.
Right now it seems that web3signer requires a chainId as argument to start, we just want to use signTransaction and would make sense for us to send chainID as part of the transaction to be signed. It actually took a while to figure out that signTransaction calls were overriding our transactions's chainId with the one used as the web3signer config/argument.
I don't know what led the current design, and I understand there might be other funcionalities that setting a chainID globally makes sense.
But being signing chain agnostic, why not just use the chainID provided by the transaction? Is this a security concern? Not signing transactions for other chains other then the one "configured" for web3signer?
** I've searched for this everywhere. I'm sorry if this was already addressed in the past, but I couldn't find it anywhere.
As discussed on Discord, Web3Signer eth1 mode is designed to proxy to only single web3 client. Therefore, supporting multiple chainid is currently not on the priority list.
Right now it seems that web3signer requires a chainId as argument to start, we just want to use
signTransaction
and would make sense for us to send chainID as part of the transaction to be signed. It actually took a while to figure out that signTransaction calls were overriding our transactions's chainId with the one used as the web3signer config/argument.I don't know what led the current design, and I understand there might be other funcionalities that setting a chainID globally makes sense. But being signing chain agnostic, why not just use the chainID provided by the transaction? Is this a security concern? Not signing transactions for other chains other then the one "configured" for web3signer?
** I've searched for this everywhere. I'm sorry if this was already addressed in the past, but I couldn't find it anywhere.