Here's an idea I had which is simple by interesting:
N bitcoins are kept at an address associated with a bitcoin key.
Login is allowed via using a bitcoin public key through 2 mechanisms:
1. a challenge
encrypt this unique 2 part string (domain of login,random bits) and send it back to me.
Sending the domain avoids pass-thru attacks.
Sending random bits avoids replay attacks
2. and a bitcoin balance check at the address represented by that key.
If the key is compromised the hacker will likely take the bitcoins, invalidating any further login using that public key.
N bitcoins are kept at an address associated with a bitcoin key.
Login is allowed via using a bitcoin public key through 2 mechanisms:
1. a challenge
encrypt this unique 2 part string (domain of login,random bits) and send it back to me.
Sending the domain avoids pass-thru attacks.
Sending random bits avoids replay attacks
2. and a bitcoin balance check at the address represented by that key.
If the key is compromised the hacker will likely take the bitcoins, invalidating any further login using that public key.