I'm not sure what the precise words I am looking for are so I apologize if there is a better way to phrase this. What I am thinking of is ways to transfer an identity in a way that it is tamper resistant and can be used for authentication.
Normally to know who someone is people use driver licenses or a person's face. In cryptographic terms this would be similar to your public key. You can use this to sign and encrypt messages validating you are who you say you are just like when someone speaks and you here it come from the person's mouth. You know who they are by their face.
If you send a public key over a unsecured network it has the chance to be modified in such cases as using Diffie-Hellman key exchange. Your communications are secure but not authenticated.
One solution to this is such things used by PGP a network of trust where people would sign your key after seeing your photo id or knowing you by being your friend etc. They vouch for your identity by seeing those things that prove who you are.
Would it be possible to digitize this by transferring video of a person with a QR code representation of your key? Such as a video chat the other person can see your face and your public key. The attacks on this would be man in the middle but even then you would either have to modify the video stream or create a fake of the video with your own QR code.
Is there any other holes in this (obviously if you don't have a webcam it won't work) that I am not seeing? Is there a way to mitigate modifying the QR code in a better way (obviously this would be a very specific attack but unless you can somehow make it time sensitive or somehow make it so it can't be changed*)?
Some other thoughts, in stead of a QR code (which people may not have access to a printer and you don't want to just transmit the screen or a picture of it digitally as that could easily be replaced) maybe a hash of the public key, though it does have the down side of being 160 characters for sha1 so it is long.
PGP uses a web of trust this could also happen you already know many people who most likely know people you know. You could confirm that in fact it is them (to a certain degree) by other people you both know.
While video could be altered (again highly unlikely but I don't think it would be hard, tedious yes) voice would have another issue to be faked (though this being the start of the connection may not be of benefit as they could queue up it, though it would be odd as video messaging wouldn't be synced, and somehow use audio to piece it together).
All these things take time to alter and attack, sense it is streaming it would seem resistant in that a video message naturally needs to be in sync and not delayed, if there is a long delay that could potentially be an issue. However (though I am not sure how feasible this is), computer automation could speed up tampering**.
Another though was some kind of shared secret but I think this would be weak because either it is rather public (where did we sit at the xyz game last week) or if secret enough why not just give each other your QR code...
* However any method of signing the video wouldn't work because you would just change the key as well... maybe encrypting it with the other person's public key but that still would be weak against a man in the middle attack wouldn't it?
** Computer automation is obviously rather unlikely but it could be possible for a QR code as it is meant to be computer readable, less likely for a string written on paper or voice information (as far as I am aware of).