Cryptographic Challenge: How to Say Something Confidentially to Snowden? The Snowden situation raises an intereting cryptograpic problem. At present, how can something be sent confidentially to Snowden? 

Claim:

I have no particular political orientation. The above question is merely a cryptographic challenge. The meta assumption is…


You trust someone, denoted as Snowden, but Snowden does not trust anyone and you do not know any further information about Snowden, except his name or identity. 
You should be careful that someone, say FBI, might impersonate Snowden to you.


Objective:


How to build a global and secure communication channel between you and Snowden from scratch, without resorting to trusting any third party?
Snowden does not trust anyone at the beginning, but he wants to find someone whom he can trust, via the secure channel built (if possible) in Step 1. How is this done?


Is this possible to do by using cryptography? 

For convenience, let us call this challenge the Snowden challenge. How do we model the security objectives for Snowden and you?
Generate a file of cryptographically strong random data at least as long as the message to be sent.  This will allow communicating the secret using the random data as a one-time-pad. I.e., produce the ciphertext by using a bit-by-bit combining function such as XOR.
Purchase a plane ticket for an international flight connecting through Sheremetyevo airport.
Burn a copy of the OTP data onto a CD-ROM. Label it "Lady Gaga" and lock it in a briefcase handcuffed to yourself.
Take the flight. During your layover, locate Snowden in the international travel area.
Whisper the secret to Snowden.
Both of you then giggle loudly something about Lady Gaga.
Drop the CD-ROM in the trash so the spooks don't have to report home empty-handed.
(Optional) exchange public keys with Snowden to secure your future communications.




EDIT: OK, I felt bad about leaving a response that might be interpreted as just trolling. But in all seriousness, this is a classic identity bootstrapping problem.

Once we have identity authentication worked out, message integrity and confidentiality are basically solved by standard encryption systems. There's no magic bullet for bootstrapping identity, but here are the questions I ask myself when trying to approach the problem:

First: Precisely what facts are being authenticated?

For example, do you have a public key which claims to be Snowden's and you're trying to prove that it is genuine? Authentication has a cost, why would he go out of his way to prove that to you?

An easier problem to solve may be "If Snowden wanted to receive a message from me how could he do so securely?"

Second: To whom are these facts being authenticated?

Are you trying to prove to Snowden that a message you sent is genuinely from you? Or is some unknown party claiming to be Snowden expected to prove to you that a message you received is from the authentic Snowden?

Third: Who has what to lose from a successful attack?

Perhaps you are sending something to Snowden and then relying on him to do a perfect job of authenticating what he receives (i.e., proving the absence of an active man-in-the-middle attacker). But if he doesn't care at least as much as you do about the security of the message, he might do a halfhearted job of it you might continue on transmitting messages insecurely.

Fourth: How far do these credentials extend?

In other words, will your actions allow Snowden to do more than just verify you? For example, would he be able to impersonate you to a 3rd party? How about the other way around?



In summary:

A cipher is a device for converting a plaintext confidentiality problem into a key distribution problem.

An ephemeral key agreement algorithm is a device for converting a key distribution problem into an authentication problem.

A signature algorithm is a device for converting a message authentication problem into an identity problem.

If you can somehow establish trust for authentication credentials in one or both directions, the rest is mostly a solved problem. But this can only be built on top of human systems: What will it take for you and/or Snowden to believe that the other party is authentic?