I upgraded my OSX from Snow Leopard to Lion and I downloaded Xcode 4.3.1 Now when I try to validate and publish my app I get the first screenshot. If I click on Download Identif
What happened to me was that my Distribution Provision Profile had expired. All I had to do was delete it and create/download a new Distribution Provision Profile. Xcode automatically installed it and went to the next screen.
I had this same exact error after upgrading my Xcode from 4.2.x? to 4.3.1 via the app store. I did not upgrade my OS or any hardware, and my certificates were only about 2 months old. I has submitted an app update just days before this starting happening and I feel 100% sure that something in the Xcode upgrade caused it to happen.
After a few days fiddling with it by rejecting my developer certificates and updating all the apps and provisions profiles, as well as distribution profiles. I noticed something.. See screen shot.
The certificate that I was signing the app with was in the group "Identities with out Provisioning Profiles" I went back into the developer provisioning portal and downloaded the distribution certificate for my app, and added to my system, then updated the code signing identity with the correct certificate and I was able to get past this issue.

In short this message may suggest, you signed the archive with the wrong certificate. check it and make sure its the one for your app for distribution and it should work.
Happy Programing!
I had this problem when we tried to upload an app too. We solved it in a way that I still don't understand completely, but I had an App ID that included some kind of ID in front of it like this: XXXXXXXXXX.com.plexical.start.bask. I put that string in my *-Info.plistfile. After having the problem above, I switched from automatic Code Signing Identity to manual and selected the same Distribution as the automatic one. Then I got a readable error from XCode complaining that the App ID didn't match com.plexical.start.bask:

I proceeded to change the App ID to com.plexical.start.bask in the *-Info.plist file and after that I was able to submit the App. I still don't understand completely why, but it worked for me.
The validation process does not work with Ad-hoc profiles. Need to create a Distribution provisioning profile. It is not specified in the instructions for beta testing. I agonized all day until realized.