4

共通のメールボックスを読み取り、特定の電子メールをデータベースに処理する古いプロセス (VBScript) があります。

新しい規制では、添付ファイル付きのすべてのメッセージがデジタル署名されています。

このプロセスでは、1 つのファイル (smime.p7m) のみが抽出されるようになりました。GUI ベースのビューアを使用して、埋め込まれたファイルを表示し、問題なく抽出できます。しかし、私が本当に必要としているのは、埋め込まれたファイル (PDF、DOC、XLS) を書き出すコマンドライン ベースのエクストラクタです。それらは暗号化されておらず、署名されているだけです。証明書のないラップトップを使用してこれをテストし、前述のビューアーで smime.p7m ファイルを開きました。

OpenSSL がこれをデコード/抽出し、誰かが Windows でコンパイルされたバージョンを取得したようです。ただし、「smime.p7m ファイルを開いて、見つかったすべての埋め込みファイルを書き出す」というフラグの適切な組み合わせを見つけることができないため、実行可能ファイルの多くの試行錯誤テストはイライラしています。「openssl smime」は、すべてのオプションの後に常に「cert.pem」が必要なようですが、私はそれを取得していません。

私は何が欠けていますか?前もって感謝します。

4

2 に答える 2

5

openssl の「-noverify」オプションを試しましたか?

署名のみのメッセージの場合、次を使用できます

openssl smime -verify -in <signed.eml> -noverify -out /tmp/blob

次に、RFC822 のようなパーサーを使用して、その「ブロブ」から本文と添付ファイルを取得できます。つまり、パーサーは quoted-printable や base64 などのエンコーディングに対応している必要があります。

于 2009-10-08T19:17:10.293 に答える
-4

利用可能な唯一のオプションは、Chilkatのライブラリを使用して簡単なプログラムを作成することです。このオプションの価格は、開発者1人あたりのライセンスの種類に応じて、149ドルまたは289ドルですが、少なくともロイヤリティフリーです。

于 2009-01-15T15:54:22.200 に答える