I wanted to share just a little bit about what a private key is for crypto that use the elliptical curve digital signing algorithm (ECDSA) like ethereum and bitcoin. I’m going to continue to use ethereum in this example because I’m most familiar with it.
The way this algorithm works in a nutshell is you start at some point and then move around on a graph according to a set of specific rules that can all be plotted along a defined elliptical curve. Your public key is a point on this graph.
Interestingly, your private key though is actually the number of steps you take to move around the graph. In this dance the moves are the same for everyone, but the number of steps you take is what makes you special, and it’s supposed to be a secret.
So since your secret key is the number of steps involved in this process, what is the smallest possible private key?
The corresponding public address for using 1 as a private key on ethereum is:
People are still playing with this address as you can see (and across many chains, I just used eth as an example): https://etherscan.io/address/0x7e5f4552091a69125d5dfcb7b8c2659029395bdf
Almost 2000 days ago at the time of posting, someone gave this account on ethereum 1 ether, and people have been messing with it ever since.
var Web3 = require(‘web3’); var web3 = new Web3(“https://eth-goerli.alchemyapi.io/v2/getYourOwnKey:D”); console.log(‘###### Lets try with 1 as the private key’) var privateKey = ‘0000000000000000000000000000000000000000000000000000000000000001’; var web3Account = web3.eth.accounts.privateKeyToAccount(privateKey); console.log(web3Account);