none
認証局のアップグレードについて RRS feed

  • 質問

  • 認証局のアップグレードについてお教えください。

    Windows2012で認証局を立ててまして、証明書は自社内のみで利用してます。SHA-1での利用ですので、SHA-2での運用に変更を検討しております。既存の認証局のアップグレードでの対応を考えているのですが、certutil -setreg ca\csp\CNGHashAlgorithm SHA256を実行したときに、証明書の内容はそのままでアルゴリズムのみSHA-2に置き換わるのでしょうか?また、アップグレード後でも今までのSHA-1の証明書は発行可能でしょうか?

    よろしくお願い致します。

    2016年9月20日 5:58

回答

すべての返信

  • チャブーンです。

    結論として、残念ながらおっしゃるご希望はどちらも叶いません。以前同様のご質問に答えたことがありますので、以下の過去ログをご参照ください。

    https://social.technet.microsoft.com/Forums/ja-JP/ba6c938e-2d67-47e8-a5c6-fe049e5bcf5c/windows-server-2008-r2-x64sha1sha2?forum=windowsserver2008ja


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。

    • 回答の候補に設定 佐伯玲 2016年9月21日 7:53
    • 回答としてマーク 佐伯玲 2016年9月28日 1:43
    2016年9月20日 6:24
    モデレータ
  • 回答ありがとうございました。残念ですが、新しく認証局を立てることにしました。

    再度、質問させて下さい。

    ハッシュアルゴリズムをsha256で認証局をたてて、証明機関のプロパティの詳細ですべて表示させましたところ、

    拇印アルゴリズムがsha1で作成されておりました。

    1)拇印アルゴリズムをsha2に変更は可能でしょうか?

    2)そもそもこの拇印アルゴリズムも来年のマイクロソフトさんの有効期間に引っかかるのでしょうか?

    3)もし、再構築となるのでしたら拇印アルゴリズムをどこでSHA-2の指定をするのかお教えください。

    何度も申し訳ありません。これを機に証明書に関する知識を蓄積していきたく思います。よろしくお願いいたします。

    2016年9月26日 6:53
  • チャブーンです。

    ハッシュアルゴリズムをsha256で認証局をたてて、証明機関のプロパティの詳細ですべて表示させましたところ、拇印アルゴリズムがsha1で作成されておりました。

    これですが、実質仕様ということのようです。Windowsで使用しているCryptoAPIの仕様上ThumbPrintはSHA1が前提だということです。Windowsで明示的に拇印アルゴリズムをSHA2に指定する設定等はとくにありません。

    https://social.technet.microsoft.com/Forums/office/en-US/9543cd5b-c3b3-4d13-a9c4-46b97f2c6c18/signature-algorithm-shows-sha256-but-thumbprint-algorithm-still-says-sha1?forum=winserversecurity

    ただし、証明書の拇印アルゴリズムをSHA2にすること自体は他の証明機関(OpenSSL等)を使えば可能だと思います。たとえば以下には、サードパーティのルート証明書がOSによってどう見えるのか、を指していますが、SHA1とSHA256が両方設定されていることがわかります。

    https://help.salesforce.com/apex/HTViewSolution?id=000221070&language=en_US

    Windowsの証明機関で同じことをしてどうなるか、は実際にやってみないとわからないと思います(そうならない可能性が高いように思いますが)。


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。




    2016年9月27日 1:58
    モデレータ
  • チャブーンです。

    この件ですが、私も誤解していたようで、結論として拇印は「証明書の特定フィールド」の値ではなく、証明書全体をクライアントでハッシュ化したものなのだそうです。先に紹介したページにも書いてありました。

    https://help.salesforce.com/apex/HTViewSolution?id=000221070&language=en_US

    ----
    The certificate thumbprint, also known as the fingerprint, is a hash of the certificate and is computed by the client, rather than existing as a field within the certificate.<...>
    ----

    イメージとしてはファイルダウンロード時の整合性を調べる際の「ハッシュ値」と同じような考え方になります。したがって拇印アルゴリズムはクライアント側(受け取り側)に依存するということになります。WindowsではAPIの仕様上SHA1一択であり、他のOS(OpenSSLやMacOS)では安全性の高いSHA256も併用している、ということになりそうです。

    その意味で拇印アルゴリズムは証明書や証明機関が決定する類のものではない、ということになりますね。


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。

    • 回答としてマーク 佐伯玲 2016年9月28日 1:43
    2016年9月27日 12:45
    モデレータ
  • チャブーン様

    ありがとうございました。

    色々、回答いただき助かりました。

    2016年10月11日 7:33