I'm about to introduce a new revenue model to a service I run with no user accounts. Users will purchase short-term vouchers to enable certain features in the app, and I'm planning to generate random 32-character strings that users can paste into the app once they've purchased.<p>But software keys are unwieldy, not nice to look at, and often users get confused (I've used keys like this in the past and got a lot of support requests).<p>Anyone got a better approach?<p>I've considered using images with data embedded and hashing them, using a bitcoin-style seed word approach, but nothing really feels right.
Doing this without user accounts will make piracy rampant. Someone will figure out your hashing scheme, as you've shipped them the code to check it. Is no user accounts, and no registration server really the way to go?<p>If so, maybe QR codes, key files?<p>How about a hash to "correct horse battery stapler" converter? Get a list of 4096 unique words, so 12 bits per word, and make the key three words.