Typical DRM/crypto problem. As soon as one party is out of your control (e.g. client on end-user device) you already lost. Even on the iPhone you could do a jailbreak. You could only make things more difficult, in worst case you would have to open the device and directly access the RAM or something.
Indeed you could personalizes the keys for every user. So you could detect a leaked private key that is widely used and proceed against. Still that wouldn't hinder personal further use of that private key, e.g. for exporting data (similar to breaking DRM).