# Alice trusts Bob only when Bob trusts Alice

some story first: Alice and Bob both have public/private key pairs. Now Bob wants Alice to sign his public key id. Alice agrees but only when Bob signs the public key id of her.

Is this something that can be achieved? at the end, the signatures should only be valid or extractable if Alice and Bob did both made their signatures.

Is this something PGP supports? Is this somehow possible in general?

EDIT: There is a mthod of "Private Set Intersection". May by this can somehow applied to this case? Or maybe there is a similiar technique i currently not aware of.

-
This story looks a bit fishy, at least for PGP's normal usage. Alice's trust (on the identity of Bob) should not be dependent on whether Bob also trusts Alice. If Bob is an impostor, his signature for Alice has no value (or should not have any). –  Paŭlo Ebermann Mar 27 '13 at 0:37
@PaŭloEbermann i tried to keep the story at geeral as possible. I think it is not a normal use case for PGP, but maybe it is possible?! PGP is just optional. –  esskar Mar 27 '13 at 5:48
That's the area where 3rd party companies like Verisign making money isn't it? –  SparKot Mar 27 '13 at 9:14
@SparKotॐ it might. but a third party only ensures an identity. and of course Bob can ask the third party if Alice is to be trusted and Alice can ask if Bob can be trusted. –  esskar Mar 27 '13 at 9:45
I guess "(optimistic) fair exchange" might be the answer. How about it? –  xagawa Mar 27 '13 at 16:22

## 1 Answer

This sounds like a fair exchange protocol where what is exchanged is a digital signature. Per this paper, these are impossible without trusted third parties.

With a trusted third party, they are possible. Indeed people have proposed schemes that do what you describe again relying on a third party in the case of failure.

-
Thanks for that. I will have a look, but sounds already good. –  esskar Mar 28 '13 at 8:03
this cool. the 2nd papaer explains it well. Thank you for your help! –  esskar Mar 28 '13 at 8:31