Secret military technology as groundbreaking as the tank and airplane were  
gaius: Facial recognition by satellite is probably impossible. The Rayleigh formula states :    angular resolution = (1.22 * wavelength) / diameter of lens. 

Now I don't know what altitude a spy satellite is at, so let's say 100 miles == 160,000 metres. Let's also say that you need a resolution of 1cm in order to recognize a face (probably you actually need better than that). Wavelength of light, to make the maths easy, 5x10^-7m.    tclsh[1]% / [* 1.22 5e-07] [atan [/ 0.01 160000]]
    9.760000000000012

So that's a 10m lens, assuming you could make an optically perfect lens that big and get it into orbit. If you wanted a 1mm resolution, you would need a 100m lens. And you would probably want the entire spectrum of visible light. And I've probably guessed the altitude way too low as well...Oh, and your subject would need to be looking straight up at the moment your satellite passed overhead on a perfectly clear day :-)