Use HSM to generate and sign Ethereum transaction
- Install the SoftHSM from https://www.opendnssec.org/softhsm/
- Local or remote Ethereum Geth instance https://geth.ethereum.org/
-
Clone the repo
git clone https://github.com/wshbair/HSM2ETH.git
-
Install NPM packages
npm install
-
Set the Web3 provider in
index.js
const web3 = new Web3(new Web3.providers.HttpProvider("YOUR GETH Instance"));
-
In console panel run
npm start
-
In the browser open http://localhost:8090
Based on the steps given in ethereum stackexchange question about using HSM to sign ethereum transactions.
@inproceedings{shbair2021hsm,
title={HSM-based Key Management Solution for Ethereum Blockchain},
author={Shbair, Wazen and Gavrilov, Eugene and others},
booktitle={IEEE International Conference on Blockchain and Cryptocurrency, 3-6 May 2021},
year={2021}
}