This question might seem quite strange. but I am wondering if its possible to delegate the creation of a transaction to a third party, without having to trust them with your private key?
In the same way that with credit cards you can preauthorise a transaction, i'm wondering if its mathematically possible to do the same with bit coins. What I'm thinking of is having the client create the transaction, from the private key, and then forward the transaction to, and only to the authorising body. That way they would then hold a cryptographically secure transaction which at a later time if appropriate they could distribute to the rest of the bitcoin network.
- Does this leave open the risk of that person double spending the same bitcoin?
- Is there a mathematical window between the point when the private key is no longer required, and when the distribution process has begun. (e.g. adding it the current block?)
- Has anyone solved this already?
Edit for clarity:
The key aspect is the ability for someone other than the person sending the bitcoin to 'hold the transaction' and at a later date to either forget the transaction (so it never left the original wallet) or to distribute the transaction, so it is accepted by the bitchain as having been transferred.
It would be required that the only trust that the sender needs to have is that the transaction holding place is trusted to either distribute or drop the transaction fairly. In particular that they do not obtain access to transfer additional money later, or different amounts etc..