https://medium.com/exodus-movement/addressing-vulnerabilities-with-software-based-wallets-1cc9ff77bf44