ethereum / eth-hash

The Ethereum hashing function, keccak256, sometimes (erroneously) called sha256 or sha3
MIT License
104 stars 64 forks source link

feat: add entrypoint #47

Open willianpaixao opened 1 year ago

willianpaixao commented 1 year ago

I was looking for the easiest and fastest way to hash a string. I also understand this is a library so maybe this PR should instead go to eth-utils. Let me know what you think.

The PR intention is to be able to quickly hash something without having to opening a interactive Python console. Using console scripts and in this case I had to add a main function to cast the incoming string.

Note: this PR only hashes the first given argument, in case you need to send multiple strings, I would need to update the function.

How to test

$ pip install -e .[dev]
$ eth-hash "Hello World"
b'Y/\xa7C\x88\x9f\xc7\xf9*\xc2\xa3{\xb1\xf5\xba\x1d\xaf*\\\x84t\x1c\xa0\xe0\x06\x1d$:.g\x07\xba'

I could go further and make it more complicated, adding type checks, encoding options, a CLI library, etc. But need to know if this feature is desired in the first place.