パスワードを忘れた? アカウント作成
13594191 story
セキュリティ

IPA、「SSL/TLS暗号設定ガイドライン」第2.0版を公開 31

ストーリー by hylom
ツッコミ 部門より

情報処理推進機構(IPA)が5月8日、「SSL/TLS暗号設定ガイドライン」第2.0版を公開した(IPAの発表)。

2015年5月に公開された「SSL/TLS暗号設定ガイドライン」の改訂版で、新たにTLS1.3に関連する情報などが追加されているようだ。

これに対し、いくつか技術的に適切でない記述があるのではないかという指摘も出ている。

  • IPA は暗号の「基礎」すら理解しておらず、
    情報技術者試験では、実は間違っている「秘密鍵で暗号化」という概念を受け入れない限り、点を失うのも困りものですね。

    たぶんIPAの中には暗号の専門家は居ないか、爪弾きされているのでしょう。
    IPAの暗号関係のドキュメントは信じてはいけません。

    「電子署名=『秘密鍵で暗号化』」という良くある誤解の話 [qiita.com]
    高木浩光@自宅の日記 - 公開鍵暗号方式の誤り解説の氾濫をそろそろどげんかせんと (2008年02月29日) [takagi-hiromitsu.jp]

    公開鍵暗号の原理の「秘密鍵Kで暗号化して公開鍵K'で復号できます」などといった間違った説明は、「分かりやすくて一見論理的」に見えるし初学者にも理解しやすいからついつい信じたくなってしまうけど、DiffieとHellmanの提唱したデジタル署名でも、RSAの最初の論文でも「秘密鍵で暗号化」なんて概念は存在していないし、
    一般に公開鍵暗号の公開鍵と秘密鍵の形は違うので両者を入れ替えることはできない(RSAでさえも、今は公開鍵・秘密鍵の形が異なる)のに、RSAが署名に使えることと論理矛盾を起こす説明だったりと何重にも問題が生じてしまってる。

    IPA の情報技術者試験に向けた学習などで、中途半端な間違った知識を植え付けられるのは有害だと思う
    今の暗号も署名もあまりにも複雑なのでちょっとやそっと勉強したところで理解できるようなものではない
    (大学レベルの数学ができないとか英語の仕様書が読めないとかだと絶対無理)

    ここに返信
    • なるほどこうやって適当に覚えて一番大切な部分を分かってないから書けないヤツが混乱させるんだな

      実は間違っている「秘密鍵で暗号化」という概念

      公開鍵暗号の原理の「秘密鍵Kで暗号化して公開鍵K'で復号できます」などといった間違った説明

      DiffieとHellmanの提唱したデジタル署名でも、RSAの最初の論文でも「秘密鍵で暗号化」なんて概念は存在していない

      これで間違ってると言われるのは、暗号化という表現・概念ね
      実質的に誰でも公開鍵で解読出来るんだからそれ暗号って言っていいのかってだけ
      RSAでは秘密鍵での署名を復号って言うってだけ
      重要なことはちゃんと覚えて書こうな

      はっきり言って中途半端が過ぎるぞ

      これは用語と概念の理解の話だから大学数学や英語なんて全く必要ないからね

      • by Anonymous Coward

        一番重要なのは、今時のデジタル署名で公開鍵暗号を元にした方式なのはRSAぐらいってとこでは
        デジタル署名は公開鍵暗号とは切り離して考えなきゃならない

        • by Anonymous Coward

          その通りとしか思えないが、それを私に言われましても……

          概念の何が間違ってるかを一切説明しない上に、概念(ある事物の概括的で大まかな意味内容)の説明に大学レベルの数学が必要と思ってる上に更に、
          公開鍵暗号(方式)とデジタル署名(用途)とRSA(実装とその課題)をごっちゃにしてる親コメントのおかげで盛り上がりそうだ

      • 実質的に誰でも公開鍵で解読出来るんだからそれ暗号って言っていいのかってだけ

        RSAでは秘密鍵での署名を復号って言うってだけ

        これは用語と概念の理解の話だから大学数学や英語なんて全く必要ないからね

        公開鍵は誰でも見られるから秘密鍵で暗号化しても意味ないよねー、なんていう言葉の定義の問題じゃない

        RSAにおいて、秘密鍵で暗号化したデータは、秘密鍵と公開鍵の両方を知らない人でも総当たり攻撃で復号できてしまう恐れがある

        つまり、RSAで公開鍵と秘密鍵を逆にして使う(公開鍵を秘密

        • by Anonymous Coward

          RSAにおいて、秘密鍵で暗号化したデータは、秘密鍵と公開鍵の両方を知らない人でも総当たり攻撃で復号できてしまう恐れがある

          恐れっつーか公開鍵だけで100%復号化できるからな
          公開鍵を公開しないなら公開鍵暗号を使う必要がそもそもねぇぞ

          • by Anonymous Coward

            基本情報の教科書とかにある「送信者の秘密鍵で暗号化」みたいな解説が駄目だってことでは

            http://www.atmarkit.co.jp/ait/articles/0510/01/news018.html [atmarkit.co.jp]

            デジタル署名は、公開鍵暗号方式を用いて実現されていることが多いです。公開鍵暗号方式では、通常は受信者の公開鍵で暗号化を行いますが、デジタル署名では逆に送信者の秘密鍵で暗号化を行います。受信者は送信者の公開鍵で署名を復号します。

            秘密鍵での暗号化という時点でRSAとして強度を保てないのだから、署名目的としても駄目
            こういう解説を信じて車輪の再発明をしてしまうと脆弱性を生んでしまう

        • by Anonymous Coward

          RSAにおいて、秘密鍵で暗号化したデータは、秘密鍵と公開鍵の両方を知らない人でも総当たり攻撃で復号できてしまう恐れがある

          RSAというか公開鍵暗号かどうかにすら限らず

          つまり、RSAで公開鍵と秘密鍵を逆にして使う(公開鍵を秘密にして、秘密鍵を一般公開して使う)と、総当たり攻撃に弱くなって暗号としての強度が保てない

          強度が強かろうが弱かろうが暗号は暗号

          暗号化: $c=m^e~mod~n$
          復号 : $m=c^d~mod~n$
          ~(略)~
          だけが正しく、

        • 公開鍵暗号は
          ・暗号化(と呼ばれている処理)と複合(と呼ばれる)は同じである必要はない
          ・公開鍵を暗号化した文章は、秘密鍵で復号で復元できる

          つまり、暗号化の処理に公開鍵を入力することが、複合の処理に秘密鍵を入力することはできるけど、
          暗号化の処理に秘密鍵を入力することはできるとは限らない(RSAは暗号化と複合の処理が同じだからたまたまできる)。

          それなのに、公開鍵暗号を指して「秘密鍵で暗号化」と表現するのは不適切って話じゃないの?

          # 例えば、公開鍵と秘密鍵のデータ形式が違う公開鍵暗号(ElGamal暗号とか)があったとして、
          # その秘密鍵で暗号化の処理を行えるのか?文脈からどっちの処理を使用するか判断しろ言うのか?
          # という話だと思う。

          • by Anonymous Coward

            追記:

            多分、一般的(?)な感覚
             暗号化 : 秘密にしたい文章を、一見するとでたらめな文章に変換すること
             復号  : 上のでたらめな文章を、秘密にしたい文章に復元すること
            に載っとるなら、
            「秘密鍵で復号したものを公開鍵で暗号化する」は文章として破綻しているようにみえ
            「秘密鍵で暗号化したものを公開鍵で復号する」は正しく見えるけど

            暗号化と復号をそれぞれ別の変換処理とみるなら、
            「秘密鍵で暗号化したものを公開鍵で復号する」は
            変換の順序を混同しているように見えるってことだと思う。

      • by Anonymous Coward

        何言ってるのか全然理解出来ない。
        公開鍵暗号で暗号化に使うのは秘密鍵ではなく公開鍵であって、逆の説明がされているのが間違いなだけでしょ。

    • by Anonymous Coward

      そもそも、電子署名を「非対称な鍵ペアのもう一方で復号できたら正しく署名されているとみなす」みたいに単純化して説明するのが問題
      いくらでも攻撃方法がある方式じゃあ、オレオレ証明書と変わらんわ

      入門用には 電子署名による認証(身分証明) [qiita.com] がお勧め

      ●電子署名による認証
       〇署名できる能力を示すことで、署名鍵(秘密鍵)の所有者であることを示す
       〇しかし電子署名単独では問題がある
       〇鍵交換を組み合わせることでその問題をクリアする

      ●鍵交換について
       〇べき乗の持つ性質(指数法則)と同一の構造を活かした鍵交換(DH,ECDH等)がある
       〇DH, ECDH は離散対数問題の困難性によっ

      • by Anonymous Coward

        その最初の括弧書きのやつは公開鍵暗号の概要ですよね?

        世の中には何故かRSAやら電子署名やらの特徴を公開鍵暗号の話にまで
        一般化するヤツが多くてけしからんって話だと思っててまさにいま書かれているのは
        問題があって無理なことなんで間違いだらけな話になってます

        電子署名の話なら●以後はその通りだと思います

    • by Anonymous Coward

      公開鍵暗号の原理になんでRSAや電子署名が関係あんねん
      関係ないからRSAで公開鍵暗号を語るなって言われてんのに何で語っとんねん

    • by Anonymous Coward

      うーん、両方のリンクを読んでもわからないです。
      誤りの例をいくつも出されているのですが、「正しい例」がわからないので、どう誤りなのかわかりません。

      ハッシュ関数を通すと、違う値が出るとか、衝突の問題とか、それくらいはわかります。
      共通鍵暗号も原理はともかく、同じ鍵を使って復号できるくらいはわかってるつもり。

      SSH は公開鍵で運用してますし、使い方だけ知っていて、基礎を理解したいけど、どこに正しい情報がありますでしょうか。
      上記レベルの者でも理解できそうなポインタ(書籍含む)をお教えいただけませんでしょうか。

      • by Anonymous Coward

        1.RSAや電子署名の話を公開鍵暗号の説明に持ってかない

        正 : 公開鍵暗号では、秘密鍵で暗号化したものを公開鍵で復号できる
        誤 : 上記に加えて、公開鍵で暗号化したものを秘密鍵で復号できる(RSAの話)

        2.電子署名と公開鍵暗号は別の概念

        正 : 公開鍵暗号は、誰でも(公開鍵の持ち主)作れる暗号文が、送った先のヤツ(秘密鍵の持ち主)でのみ復号化できる
        正 : RSAを電子署名で使うときは、電子署名を秘密鍵と公開鍵を逆にした運用が用いられる
        正 : RSAで鍵を逆にした場合は、誰でもそれ復号化できるのでそもそも "暗号" とは言い難い
        誤 : 上記の主語(~は、)を取っ払って話した内容全て

        ハッシュ関数の何やらはRSAの話で、そもそも誰でも、しかも素早く解読出来るような実装になってるから
        いろんな意味で暗号と呼ぶには適さないって話の補完ね

        最初のコメントの人でさえ結局ごちゃ混ぜにしてるから皆さん混乱してます

        • by Anonymous Coward

          元の方とは別人ですが私も同じように分からなかったので教えてください。

          このツリーのタイトルは
          > Re:IPA は情報技術者試験でも 「秘密鍵で暗号化」 という嘘を流布して迷惑かけてる

          ですが、

          > 正 : 公開鍵暗号では、秘密鍵で暗号化したものを公開鍵で復号できる

          なのですか?

          『「秘密鍵で暗号化」 という嘘を流布』というのは間違い?
          「秘密鍵で暗号化」はどう言えば正しくなるのですか?

          • by Anonymous Coward

            もう落ちちゃったから読んだないだろうけど一応

            主語が公開鍵暗号である場合は、秘密鍵で暗号化するのを何と言うかというと、何とも言いません。
            その仕様は未定義だからです。

            主語がRSAである場合は、秘密鍵で暗号化と同じ処理をするのを「署名」すると言います。(逆は検証)

            もしくは、RSAにおいては、秘密鍵でデータを加工することを暗号化、公開鍵でデータを加工することを復号化というので、
            秘密鍵を使って電子署名に用いる場合でも行きなり復号化です。

        • by Anonymous Coward

          > 正 : 公開鍵暗号では、秘密鍵で暗号化したものを公開鍵で復号できる

          これは逆
          正 : 公開鍵暗号では、公開鍵で暗号化したものを秘密鍵で復号できる

          「公開鍵で復号」なら誰でも復号できてしまうから意味が無いし、
          多くの公開鍵暗号方式では秘密鍵で暗号化したものを公開鍵で復号すること自体が技術的にも不可能(RSAは例外)

          • by Anonymous Coward

            ごめんその通り
            正誤を間違えてしまった

            もしくは、主語をRSAとしてください

  • by Anonymous Coward on 2018年05月10日 17時40分 (#3405895)

    curve25519、ChaCha20、Poly1305、これら最近のトレンドは押し並べて DJB の考案が元。
    djbdns はちょっと使い勝手がアレなんで敬遠だけど、やっぱりこの人頭いいんだなと思う。

    ここに返信
    • by Anonymous Coward

      dnscurve も流行るべきですかね(震え声

  • by Anonymous Coward on 2018年05月10日 17時52分 (#3405904)

    この議論が理解出来る人を尊敬する(少ないからコメントも少ないんだろうけど)

    https://www.cryptrec.go.jp/topics/cryptrec_20180508_gl_3001_2.0.html [cryptrec.go.jp]

    ApplicationCA2 Subっていう発行者から出ている証明書で暗号化されているせいで
    FIREFOXだと読めない(笑)。

    ここに返信
  • by Anonymous Coward on 2018年05月10日 22時51分 (#3406090)

    「SSL/TLS暗号設定ガイドライン」については
    書いているメンツから見て、低レベル土方を上から指示する人たちなので
    細かい内容どうでもいいんじゃないですかね。。

    どうせ私のような低レベル土方は内容の技術的詳細とか関係ないわけですし。
    SSLサーバの設定で「間違ってる」って言われてクビにならないよう、パラパラ見るぐらいでしょうか。

    そういう意味では、基準も書いてあるし、間違ってないかと。

    いいんですよ、別に署名って「秘密鍵で暗号」とかでも。
    低レベル土方にはそれ以上の理解が必要ないことだけは断言出来ます。

    まぁ出来れば「デジタル署名」っても色々方法があって、内容も分かったほうがいいことは確かですが。

    でも使わない知識だな。。

    ここに返信
    • by Anonymous Coward

      わからんでもないけど、だれもが初心者の時はある。

      で、多少年とってから真っ当に身に付けようとしている人間にとって、こういうのもあったほうがいいのはたしか。
      変に下げる必要はないと思うな。

      # 本筋は年とってからでも大学に通おう、とかかもしれんが
      ## なお進学していってる低年齢初心者は、その大学などで識る、としておいておく場合ね

    • by Anonymous Coward

      こういうネットに少なくない乱暴なコメント。内容があっている間違っているの問題以前に、「低レベルIT土方」だの何だの差別的侮蔑的で粗野な用語でしか表現出来ない社会的な成熟度の低い人だな…としか思えない。

  • by Anonymous Coward on 2018年05月12日 10時19分 (#3406961)

    このスレにも、IPAと同じ間違った理解で自信満々に語ってるのが多くいて何だかなぁと思う。
    暗号化を使う実装とか設定とかしたことの無いのなら、黙ってれば恥をかかないのに。

    ここに返信
typodupeerror

アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家

読み込み中...