• ベストアンサー

作成したActiveXが未署名となってしまう。

VC++で作成したActiveXをcabファイルにし、呼び出します。 そのcabファイルに以下の手順で「自己署名」を行いました。 (1)CABファイル作成 CABARC -s 6144 n test.CAB test.dll test.inf (2)ルート証明書(自己証明書)を作成 makecert -n CN=test -sv test.pvk -r test.cer makecert -n "CN=test,O=test,C=JP,E=test@test.co.jp" -sv test.pvk -r test.cer (3)デジタル署名用の証明書作成 makecert -n "CN=testSoft,O=test,C=JP,E=test@test.co.jp" -sv testSoft.pvk -ic test.cer -iv test.pvk testSoft.cer (4)SPCファイルの作成 Cert2SPC testSoft.cer test.cer testSoft.spc (5)pfxファイルへ変換 pvk2pfx.exe -pvk testSoft.pvk -spc testSoft.spc -pfx test.pfx -pi pass -po pass -f (6)CABファイルにデジタル署名 signtool.exe sign /f test.pfx /p pass /v test.CAB ※パスワードを何回か聞かれますが、ここでは全て"pass"とします。 上記、cabファイルを実行するとcabファイル作成環境では 発行元:testsoftと表示されますが、別環境だと 未署名となってしまいます。 手順(6)のcabファイルに署名さえすれば、未署名と出る事は 無いと思っているのですが違いますでしょうか? 何か分かりましたらご教授の程お願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • kusa_mochi
  • ベストアンサー率76% (1599/2089)
回答No.1

まず以下の「デジタル署名について」を読み、次にWikipediaのActiveXのページを読み、最後に高木先生の「オレオレ証明書の区分 改訂版」辺りを読めば、質問者殿も理解できるのではないかなと想像する。  【デジタル署名について】   https://signgate.jp/sign.html  【Wikipedia:ActiveX】   http://ja.wikipedia.org/wiki/ActiveX  【高木浩光@自宅の日記:オレオレ証明書の区分 改訂版】   http://takagi-hiromitsu.jp/diary/20051118.html そのActiveXにつけたデジタル証明書が正しい証明書である事を確認できるのは、質問者殿の開発しているPC環境内だけだと思う。 (高木先生の言う所の『第一種オレオレ証明書』かと) もうちょっと詳しく解説するなら、他のPCにとってはそのActiveXの証明書はルート局や中間局に尋ねても証明されない「オレオレ」証明書だから。 なお正規の証明書を取るにはどうすればいいかは、MSDNを調べてみるかマイクロソフトに問い合わせてみる事を勧める。

その他の回答 (1)

  • zzzz0000
  • ベストアンサー率68% (127/186)
回答No.2

自己署名証明書ではないコードサイニング証明書が必要ですか? 法人なら日本べリサインやグローバルサインなどから日本語で購入可能なものを買えばいいでしょう。 個人なら http://crystaldew.info/category/digitalsign/ を参照してください。 http://www.globalsign.com/ から買うようです。

関連するQ&A

  • 公開鍵を使用したメールの送受信につきまして

    ある相手と暗号化したメールのやり取りをすることとなりましたが、全く未知の分野であり不明の点が多いためご教授いただきたく皆さんに質問いたします。 メールをやり取りする相手から私のcer形式の公開鍵が欲しいといわれ、マイクロソフトのホームページからmakecert.exeをダウンロードし、 makecert -e 12/31/2030 -n CN=testroot -sv testroot.pvk -r testroot.cer というコマンドを実行しtあとで作成されたtestroot.cerをダブルクリックして証明書のインストールを行いました。インストール時は特に何も指定せずそのまま実行しました。その後 makecert -e 12/31/2030 -n CN=test -sv test.pvk -ic testroot.cer -iv testroot.pvk test.cer というコマンドを実行し、作成されたtest.cerというファイルを相手に送りました。 相手の方からは私が送ったtest.cerで暗号化したメールが送られてきました。 メーラはOutlook Expressなのですが、そのメールを受信したところ、メールのアイコンの右下に小さい青いマークがついており、暗号化してきたメールだと判別できたのですが、これをどのように復号すればよいのか皆目検討がつきません。 相手もあまり詳しくなく、私の秘密鍵で復号すればいいというのですが、どのように復号すればよろしいのでしょうか? 分かる方がいらっしゃいましたら教えてください。 OS:Windows2000 Outlook Express5.5 なお、makecertの使い方についてはネットで調べました。

  • SSLサーバ証明書

    例えばベリサインなどで証明書を取得するとメールにて証明書が送られてきます。 メールの内容をテキストに張り付けてcerファイルとすることは可能ですが、この情報から pfxファイルを作成することは可能でしょうか?

  • VB6.0で作成したActiveXコントロール

    お世話になっております。 VB6.0で作成したActiveXコントロールをディストリビューションウィザード でパッケージ(インターネット用CABファイル)にし、Win2000Server(IIS)に 設定後、クライアントPCからIEで表示しようとすると、「セキュリティ警告」 のダイアログが表示され、ダイアログで「はい」を選択しても画面が表示さ れません。(デジタル署名は未作成) Win2000Proで同様のテストした場合は画面の表示まで実行出来ました。 IEではサーバーを信頼済みサイトに設定しています。 ダイアログタイトルは、 「セキュリティ警告」 メッセージが、 XXXXXXX.CABをインストールして実行しますか? 発行者は次の問題のため判別できません AUTHENTICODE署名を検出できません です。 上記の症状が発生する原因等をご存知の方がいらっしゃいましたら、ご教授をよろしくお願いいたします。

  • PHPを使ってXML署名を作成しようとしています。

    PHPを使ってXML署名を作成しようとしています。 いつもお世話になっております。 今回PHPを使用してXML署名のXMLファイルを作成したいと考えています。 そこで、IEにインポートした証明書の情報をPHPで取得することは可能でしょうか。 関連するモジュール、関数なんでも結構です。 現時点ではサーバ上に電子証明書のファイル(.p12)をアップロードしOpenSSLのopenssl_pkcs12_read関数を使用して情報を取得できることはわかりました。 できればIEにインポートしている証明書の中からデータを取得したいと考えています。 当方の環境は以下です。 PHP Version 5.2.6 OpenSSL 0.9.8g 19 Oct 2007 PHPの開発について初心者ですが、なにとぞよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • VC++で作成したAvtiveXのIEからの呼び出しについて

    はじめまして、ayumina222と申します。 VC++を使ってActiveXを作成しました。 IEから呼び出しをし、ローカルのメモ帳に引数を渡して起動したいと考えています。 作成したActiveX(ocx)はフリーツールを利用してinfファイルを作成し、cabファイルにまとめました。 テスト用に証明書も作成し、ocx、cab共に署名もしました。 この状態でサーバーにアップし下記のhtmlソースで呼び出しを試みましたがレジストリにActiveXのClassIDが書き込まれていないPCではまったく反応がありません。 あと、実行された場合にActiveXのDoPropExchange関数内に書いた処理が何回か実行されてしまいます( ̄д ̄) エー HTMLソース ----*----*----*----*----*----*----*----*----*----*----*----* <object classid="CLSID:****************************" codebase="http://ドメイン/XXXXXXXXXXX.cab" id="XXXXXXXXXXX" width="0" height="0" TYPE="application/x-oleobject"> <param name="test1" value="XXXXXXXXXXX" /> <param name="test2" value="XXXXXXXXXXX"/> <param name="test3" value="XXXXXXXXXXX" /> </object> ----*----*----*----*----*----*----*----*----*----*----*----* 期待している動作としては、 「ActiveXをインストールしますか?」 というダイアログが出て、承諾するとインストールを実行し、受け取った引数をローカルのPCのnotepad.exeに渡すといった動作です。 IEのセキュリティ設定はActiveXを実行できるよう変更してあります。 証明書も登録しました。 ClassIDが登録されているPCでは期待通りの動作をしてくれているので、ocxには問題は無いと思います。 ワタシはClassIDがローカルPCで見つからなかった場合にはcodebaseのURLを参照してIEがインストールを実行するという認識でしたが、どうも期待通りに動いてくれません(●`ε´●) ぶー codebaseのURLに直接アクセスした場合には 「cabファイルを保存しますか?」 と出るので、パスは通っていると思うのですが。。。 どなたかお分かりになる方いらっしゃいましたら、 宜しくお願いします(π0π) ウルルルル

  • ActiveXとそれに代わるもの

    お世話になっております。 ブラウザ上にActiveXを埋め込む事を考え、 VB+VCのDLL(VisualStudio6.0)でActiveX(OCX)を作成→CABファイルを作成→サーバーに置く ここまでは良かったのですが、Vistaにて表示出来ませんでした。 IEの設定でセキュリティーレベルを変える等を抜きにした場合、デジタル証明書が必要となるのでしょうか? またリッチクライアントでActiveXに代わるものはあるのでしょうか?機能としては画像の加工等でファイル(GIF画像)をローカルディスクに一時保存します。 お手数ですが、よろしくお願い致します。

  • APKファイルに署名をつけると複数署名になります

    APKファイルに署名をつけるためにkeytoolで jarsigner -verbose -keystore c:\ディレクトリ\証明書名.keystore c:\ディレクトリ\アプリ名.apk o証明書別名 や jarsigner -keystore 証明書名.keystore -digestalg SHA1 アプリ名.apk 証明書別名 jarsigner -verbose -keystore 証明書名.keystore -storepass パスワード1 -keypass パスワード2 -signedjar アプリ名.apk aアプリ名2.apk 証明書別名 を実行したら jarsigner:java.lang.SecurityException: invalid SHA1 signature file digest for n ・・・es/layout/main.xml というエラーが出てうまく署名できませんでした そこで jarsigner -sigalg SHA1withRSA -digestalg SHA1 -keystore 証明書名.keystore -verbose アプリ名.apk 証明書別名 で署名をつけるとあの忌々しいメッセージは表示されなくなり 「jarが検証されました」といううれしいメッセージが表示されるようになりました しかしなぜか二重署名になってしまい、やはりGooglePlayにアプリを 登録する事はできませんでした jarsigner -verify -verbose -certs アプリ名.apk で確認すると 当方がつけた署名以外に X.509, CN=Android Debug, O=Android, C=US [証明書は11/11/02 3:15から41/10/25 3:15まで有効です] という署名がついて複数署名になっています また、 [CertPathが検証されていません: Path does not chain with any of the trust a ors] というエラーが署名の箇所に表示され文末には このjarには、証明書チェーンがまだ検証されていないエントリが含まれています と表示されています なぜこのようなエラーが出るのか、複数署名になるのを防ぐ事はできるのか もしおわかりになりましたらご指導下さい お忙しい中ご面倒をおかけ致しますが何卒よろしくお願い申し上げます

    • ベストアンサー
    • Java
  • cerファイル、pfxファイルの基礎知識について

    以下の2つのファイルについて、基本的な知識(何のファイルなのか、 何のためのファイルなのか、どうやって使うのか)をつけたく思って おります。  ・cerファイル  ・pfxファイル 公開鍵暗号方式やデジタル証明書関係だと思うのですが、 自分なりにWebで調べてみてもピンとくる情報を得られませんでした。 参考となる情報、ならびに、参考となるWebのURLなどありましたら、 教えて頂けますでしょうか? 以上、よろしくお願い致します。

  • 署名付きアプレット

    はじめまして。久美子といいます。 http://www.mki.ne.jp/developers/doc/sign/SignedApplet.htmlに書いてあるのを参考にしていまして、 1. keytool を使ってキーペアの作成と署名 2. jarsigner を使ってJAR ファイルに対して署名 3. JNLP ファイルの作成 4. keytool -export を使ってキーペアから証明書を   エクスポート まで作業してのですが 5.『エクスポートされた証明書 を各クライアントにインポートする。』ができません。 スタート→ファイル名を指定して実行→javawsと入力したら、Java Web Startアプリケーションマネージャーではなく、javaアプリケーションキャッシュビューアが出てきて、それ以降の作業が進めないのです。 ずっと悩んでいまして、教えていただけないでしょうか?   ------------------------------------ 環境 ------------------------------------ WinXP JDK 1.5.0_05

    • ベストアンサー
    • Java
  • 署名ツール (SignTool.exe)でのタイムスタンプに関して

    署名ツールのSignToolにてCABファイルに署名を行う際、 ネットで調べると"timestampserver"を設定しているようでした。 上記timestampserverにはベリサイン等のURLが記載されておりました。 [参考URL]http://www.ki.rim.or.jp/~kuro/ActiveX/CabAndSign/MakeSign.html 今回、私はベリサイン等の機関を介さずに自己証明書として、 署名を行うつもりです。 自己証明書の場合は、タイムスタンプ設定は不要なのでしょうか? ご教授宜しくお願い致します。