Seems like a cool idea.
the private keys are still gonna be exposed to your software right? or does the contract make it trustless?
Service uses split-key address generation scheme:
https://en.bitcoin.it/wiki/Split-key_vanity_address1. You create
Secret Private Key for yourself, produce
User Public Key for it
2. Create task in smart contract and provide
User Public Key with task
3. Miners generate
Answer Private Keys => produce
Answer Public Keys, add to your
User Public Key, and produce Bitcoin address (until found desired)
4. Lucky miner submits solution (
Answer Private Key) to smart contract
5. Smart contract computes
Answer Public Key, adds to stored
User Public Key, produces Bitcoin address, matches pattern, pays to miner
6. Users gets
Answer Private Key from miner via smart contract, adds it to own
Secret Private Key and uses
Resulting Private Key safely.