odudex / krux_binaries

compiled krux
17 stars 2 forks source link

Generate vanity address on krux #3

Closed htprww closed 5 months ago

htprww commented 5 months ago

Hi,

This is more like a brainstorming idea about the new feature of krux.

We could allow the users to specify some prefix and/or postfix of the btc address they want.
Then krux will start from a random master key and try different keys until it finds a matched pattern of the address.

User could get a vanity address that is completely generated offline. So, it should be safe to use.

Depending on the computing power of the krux devices, we could limit the length of the prefix and postfix.

tadeubas commented 5 months ago

Hi andy, plz open your issue in the official repo: https://github.com/selfcustody/krux/

odudex commented 5 months ago

I have no experience on doing this, but I heard it is very resource intensive. Krux has a high processing power if compared to most hardware wallets, but very low processing power if compared to PCs. IMO, it could be an interesting project to satisfy the curiosity but would be hard to become a viable feature. To give you an example of processing power. To encrypt mnemonics Krux uses PBKDF2 to "hash" the key up to 500.000 times before the key is used. Krux can do 500K iterations in 17 seconds, other wallets could take several minutes to do the same. But a modern phone with Krux App can do it in one second, and a PC in a fraction of a second.

htprww commented 5 months ago

Thanks for the details. I will move it to the official repo as an enhancement.

I'm surprised that it would take 17 seconds to calculate the address. Because based on my experience, every time when I generate a new seed phrase or load in an existing seed phrase, krux could always quickly show the addresses (less than 1 second).

So I thought it seems be very fast to get address from seed phrase. That is why I am suggesting to re-generate the seed and calculate the address repeatedly until the vanity address is found.

odudex commented 5 months ago

The 17 seconds was just an example of a high-processing task to compare with what a computer can do. An address is calculated in milliseconds by Krux. You can get an idea when you open the receiving addresses of a loaded wallet. Krux calculates a few of them in a second.

However, to find vanity addresses, it would take thousands or millions of iterations. So I think it would not be viable in Krux.

htprww commented 5 months ago

Thanks for the reply. It is more like brainstorming about the possibilities of the Krux device. I think we could close this issue.

Thanks again for all your work on this project!

odudex commented 5 months ago

Right, ideas and brainstormings are always welcome!