会社XYZが中間認証局の証明書を持っている場合は、それが可能です。この種の証明書は、ルートCAによって新しい証明書の発行を許可されており、この事実は、作成時に特定のプロパティ(基本的な制約、キーの使用法、拡張キーの使用法)によって決定されます。
ただし、XYZ社が通常の証明書を持っている場合(たとえば、Webサイト、電子メールユーザー、またはソフトウェア開発者を識別するために使用される場合)、それは不可能です。実際には、新しい証明書を作成して別の証明書で署名することを妨げるものは何もありません(秘密鍵を持っている場合)が、有効な証明書を取得できるとは思いません。
したがって、適切な種類の証明書がある場合は、それを使用してfooに署名する必要があります。makecertまたはopensslを使用して、新しいX509証明書を作成できます。例えば:
makecert -pe -n "CN=foo" -a sha1 -sky exchange -eku 1.3.6.1.5.5.7.3.1 -in "Company XYZ" -is my -ir LocalMachine -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12 -ss my -sr LocalMachine
会社XYZの証明書は、Windows証明書ストアのローカルコンピューター/パーソナルの場所にインストールする必要があります。結果の証明書は同じ場所に追加され、そこからさまざまな形式(.pfx、.cer、.p7b)でエクスポートできます。また、これにより、新しい証明書のキーペアが作成されます。