I thought the mini private key format, used for Casascius physical bitcoins should rate a mention here, because it's basically a SHA256 brainwallet... but with a randomly generated passphrase.
https://en.bitcoin.it/wiki/Mini_private_key_formatGiven that the random passphrase length is 22 characters (early version) or 30 characters, the chances of brute forcing it are still virtually nil, but technically, it is less secure than a standard key, in particular because 99%+ of the tries can be discarded after the first SHA256 hash.
I came across my simple mini key generator tonight, and I'm having another play with it.
The naive version uses random() and outputs about 8000 valid keys per second on a single core of an i7-3960X.
I updated it to use the xoshiro256** PRNG, and the speed increases to around 13000 valid keys per second.
Because the generation process requires that the first byte of the candidate hash be '00', on average only 1/256 candidates will be valid, so it's really testing about 3.3 million keys per second.
It's still a massive search space (58^30?), even for a SHA256 brainwallet, and prematurely discarding 255 out of 256 candidates does not reduce the search space... it just makes searching faster. Plus, how many Casascius coins were ever created, and how many would still be funded? So this is really just a curiosity.
Here's a small sample of randomly generated valid keys:
S8Q2r4p3HKtDGYXYgcoE6N
SAN7cS1MnFNps25QHt4pRk
SCG9csSvqn2kytKW1WdNd6
SCzCTefJ7J7iGsz4XbMhU6
SFHwkzYdQgDVdhHSdGmCxCZN8YQiNT
SFikz2eev6PMNhU9JNo1DAJ2bcdvSL
SKNzLVj4LHzG8C95ZpjFL5X8HDZNyx
SKgC6zF8opjFQqHhL2Nud1Qx5FpsBc
SN5FSGaCVahVDmM7ARQgijwTExfsWK
SP41nfQVpTpFqfaPUREfBu
SPHPyjWYQKzwrw4bW4ckwwhGNvkSo1
SPpof8XT1ZfrjFBqMaqqN9tuaJ6SyL
SQHv63Wu43viTu2CnbWasR
SQpKTKp1t1phNgg4Qt8piwGxsCxxp1
SQqX32iniiKPqhVbFsuK5RQWqnHUnu
SUZNCr2iXiA4B9qiLVAWJEmMC9LfUj
SWyMZq87mrvSqjiU3KRJ7CbXKtEW6A
SZLdpNMFDfnxMSLKXmaUckAgXMuLXL
Sai3S1jgnN5E2QoydQAVr7u4U3KYFU
Sc9wTknTRqXUTSkB8pFWbX
SdUecesqKtj77JhrQT4obAt5XnCScf
SdXNZMq45NZGdYGzb7UnCe
Sdc3fyobJE2AAKxSLvnYia
The private key is simply the SHA256 hash of the string, like a brainwallet.
Some useless information, but hopefully it might kickstart the thread again.