P7Mファイルタイプは、主にに関連付けられていPKCS #7 MIME Message
ます。RFC2311のセクション3.2を参照してください。
3.2 The application/pkcs7-mime Type
The application/pkcs7-mime type is used to carry PKCS #7 objects of
several types including envelopedData and signedData. The details of
constructing these entities is described in subsequent sections. This
section describes the general characteristics of the
application/pkcs7-mime type.
This MIME type always carries a single PKCS #7 object. The PKCS #7
object must always be BER encoding of the ASN.1 syntax describing the
object. The contentInfo field of the carried PKCS #7 object always
contains a MIME entity that is prepared as described in section 3.1.
The contentInfo field must never be empty.
Since PKCS #7 objects are binary data, in most cases base-64 transfer
encoding is appropriate, in particular when used with SMTP transport.
The transfer encoding used depends on the transport through which the
object is to be sent, and is not a characteristic of the MIME type.
Note that this discussion refers to the transfer encoding of the PKCS
\#7 object or "outside" MIME entity. It is completely distinct from,
and unrelated to, the transfer encoding of the MIME entity secured by
the PKCS #7 object, the "inside" object, which is described in
section 3.1.
Because there are several types of application/pkcs7-mime objects, a
sending agent SHOULD do as much as possible to help a receiving agent
know about the contents of the object without forcing the receiving
agent to decode the ASN.1 for the object. The MIME headers of all
application/pkcs7-mime objects SHOULD include the optional "smime-
type" parameter, as described in the following sections.
これは基本的に、暗号化された形式で送信される安全な電子メールファイルです。すべてが適切に設定されている場合は、ファイルを復号化するために必要な公開鍵が必要です。そうでない場合は、ダウンロードしてください。
あなたの場合、転送エンコーディングはBase64です。最初に添付ファイルをデコードし(これまでにこれを行っていない場合)、次にバイナリデータを処理します。