go-ethereum/signer/core
Martin HS f3b4bbbaf3
all: remove personal RPC namespace (#30704)
This PR is a first step towards removing account management from geth,
and contains a lot of the user-facing changes.

With this PR, the `personal` namespace disappears. **Note**: `personal`
namespace has been deprecated for quite some time (since
https://github.com/ethereum/go-ethereum/pull/26390 1 year and 8 months
ago), and users who have wanted to use it has been forced to used the
flag `--rpc.enabledeprecatedpersonal`. So I think it's fairly
non-controversial to drop it at this point.

Specifically, this means: 

- Account/wallet listing
  -`personal.getListAccounts`  
  -`personal.listAccounts`     
  -`personal.getListWallets`   
  -`personal.listWallets`      
- Lock/unlock
  -`personal.lockAccount`      
  -`personal.openWallet`       
  -`personal.unlockAccount`
- Sign ops
  -`personal.sign`             
  -`personal.sendTransaction`  
  -`personal.signTransaction`  
- Imports / inits
  -`personal.deriveAccount`    
  -`personal.importRawKey`     
  -`personal.initializeWallet` 
  -`personal.newAccount`       
  -`personal.unpair` 
- Other: 
  -`personal.ecRecover`        


The underlying keystores and account managent code is still in place,
which means that `geth --dev` still works as expected, so that e.g. the
example below still works:

```
> eth.sendTransaction({data:"0x6060", value: 1, from:eth.accounts[0]})
```	

Also, `ethkey` and `clef` are untouched. 

With the removal of `personal`, as far as I know we have no more API
methods which contain credentials, and if we want to implement
logging-capabilities of RPC ingress payload, it would be possible after
this.

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
2024-10-31 19:53:35 +01:00
..
apitypes signer/core/apitypes: support fixed size arrays for EIP-712 typed data (#30175) 2024-08-28 14:12:09 +02:00
testdata signer/core: rename testdata files (#27063) 2023-04-17 10:36:47 -04:00
api_test.go signer: run tests in parallel (#28536) 2023-11-20 08:20:59 +01:00
api.go signer: implement blob txs sendtxargs, enable blobtx-signing (#28976) 2024-04-05 19:29:44 +02:00
auditlog.go log: use native log/slog instead of golang/exp (#29302) 2024-03-22 13:17:59 +01:00
cliui.go signer: implement blob txs sendtxargs, enable blobtx-signing (#28976) 2024-04-05 19:29:44 +02:00
gnosis_safe.go all: update license headers and AUTHORS from git history (#24947) 2022-05-24 20:39:40 +02:00
signed_data_test.go internal, signer/core: replace path.Join with filepath.Join (#29489) 2024-04-09 08:22:53 +02:00
signed_data.go all: remove personal RPC namespace (#30704) 2024-10-31 19:53:35 +01:00
stdioui.go rpc: use atomic types (#27214) 2023-05-04 04:54:45 -04:00
uiapi.go all: fix inconsistent receiver name and add lint rule for it (#29974) 2024-06-12 10:45:42 +03:00
validation_test.go signer: run tests in parallel (#28536) 2023-11-20 08:20:59 +01:00
validation.go all: fix some go-critic linter warnings (#23709) 2021-10-13 17:31:02 +02:00