まず第一に、Xcode でのプロビジョニング プロファイルの選択は誤解を招きます。Xcode でのビルドは、実際にはプロファイルとはまったく関係ありません。実際に何が起こるかというと、Xcode はプロファイル内の公開鍵証明書をキーチェーン内の証明書と照合し、秘密鍵を使用して実行可能ファイルに署名するだけです。これは標準的な Mach-O 実行可能署名です。これが、Xcode 5 でより明確にするために変更した理由でもあります。これは、プロファイルのエラー (署名 ID が見つかりません) の原因でもあります。これは、Xcode がプロファイル内の公開鍵に対応する秘密鍵を見つけられなかったことを意味します。
個人の開発者証明書は、標準の PKI のものです。Mac は、Apple があなたの秘密鍵を認識しない方法で、証明書を求める要求を Apple に送信します (SSL 証明書要求と同様)。Apple が証明書を生成し、キーチェーンがそれを元の要求と照合して、証明書の公開鍵と秘密鍵を提供します。個々の開発者のプロファイルが作成されると、その開発者の公開鍵がリストされます。チーム プロファイルが作成されると、選択したすべてのチーム メンバーの公開鍵が含まれます。これにより、チーム メンバーは実行可能ファイルに署名できますが、署名者の名前は個人ではなくチーム名になります。
iOS が実行可能ファイルを起動するとき、最初に署名をチェックします。署名が Apple App Store によって署名されている場合は、実行されます。
そうでない場合は、インストールされているプロビジョニング プロファイルをチェックします。プロファイルには以下が含まれます: 1. 開発者証明書のリスト 2. アプリ ID 3. 付与する権利 (iCloud、Game Center など) 4. デバイス UDID のリスト 5. すべてがまとめられ、Apple によって署名されます。
プロファイルは、Apple の鍵 (Apple の公開鍵を使用) によって署名されていることを確認するためにチェックされます。次に、現在のデバイスの UDID がリストにあることを確認します。また、アプリケーション ID が一致することも検証します (ただし、ワイルドカードは使用できます)。次に、有効な開発者証明書の公開鍵のリストに対して Mach-O 署名をチェックします。それらのいずれかが一致すると、実行可能ファイルが実行され、リストされた資格が付与されます。そうでない場合はブロックされます。
テキスト エディターで .mobileprovision ファイルを開くことを強くお勧めします。あなたは多くを学ぶでしょう!