DLNAのDTCP-IPを解除する方法 第3話『楕円曲線はめっちゃ濃厚』
DLNAのDTCP-IPを解除する方法 第2話『解読するより恋がしたい』 - セカンドベストは何か?の続き
あらすじ
- AESは秘密鍵の共有が必要
- DTCP-IPではECDHを用いて、AESの秘密鍵を作成
- ひょんなことからDH方式の弱点が明らかに
DTCP-IPの弱点
人生銀行 / Yohei Yamashita
島倉千代子さんが唄っていた。
人生いろいろ、と。
暗号だっていろいろな方式がある。
AESは共通鍵暗号方式。
共通鍵暗号方式(Common key cryptosystem)は、暗号化と復号に同一の鍵を用いる暗号方式の事。
共通鍵暗号 - Wikipedia
秘密鍵暗号方式(secret key cryptosystem)や対称鍵暗号(Symmetric key encryption scheme)、慣用暗号方式ともいう。
共通鍵暗号は相手と『同じ秘密のパスワード』を事前に共有しないとならない。
DTCP-IPではその大事な秘密のパスワードを、なんとIP通信で垂れ流しているんだ。
パケットキャプチャすればDTCP-IPのパスワードが手に入るチャンスだゾ。
さあ、レッツ・キャプチャ!
公開鍵の罠
やあ (´・ω・`)
ようこそ、バーボンハウスへ。
"whiskey bar san diego" / billlutzius
このテキーラはサービスだから、まず飲んで落ち着いて欲しい。
キャプチャして入手したパスワードを入力しても、DTCP-IPを復号化できなかった?
うん、「また」なんだ。済まない。
きみの入手したパスワードは「公開鍵」と呼ばれるパスワードの欠片なんだ。
でも、このキーワードを見たとき、君は、きっと言葉では言い表せない
「ときめき」みたいなものを感じてくれたと思う。
殺伐とした世の中で、そういう気持ちを忘れないで欲しい。
そう思って、このキーワードを作ったんだ。
それじゃあ、公開鍵方式の説明をしよう。
くわしくはこのハイパーリンクをどうぞ。
「悪意ある第三者が監視している可能性のある通信経路において、
暗号入門:公開鍵暗号方式|SBINS
当事者が事前に何らかの合意をすること無しに、
安全に通信を行う方法が有りえるのか?」
・・・これが、研究者達にとって長年の命題でした。
この命題に対して、1976年に暗号史上最大のブレークスルーと言われるアイデアが、
Stanford大学の研究者、 Whitfield Diffie と Martin Hellman から発表されました。
このアイデアは、それまで「鍵は絶対に秘密」と考えられていた常識を覆し、
鍵を公開してしまおうという、画期的なものでした。
DTCP-IPは楕円曲線暗号
MiNe-50i_100-4064H / MiNe (sfmine79)
「真実はいつもひとつ」
まだそんな名探偵気取りでいるのかい?
やれやれ。もう少しDTCP-IPをほじくるとしよう。
DTCP-IPではAESの秘密鍵を、ECDH*1という公開鍵暗号方式で鍵配達している。
ECDHは、楕円曲線暗号(ECC)*2のアルゴリズムを利用したDH鍵共有*3のこと。
楕円曲線の暗号強度は博多ラーメン並にバリカタたい。
これをDTCPに応用したソニーは特許侵害で提訴された。これ豆知識な。*4
補足トリビア。ソニーvsCerticomの件はソニーの勝ち。*5
ばってん、楕円曲線暗号は豚骨スープみたく特許がめっちゃ濃厚にからむたい。
Tiger and Dragon / rok1966
楕円曲線暗号については、このはてな日記が大変わかりやすい。
数学的な厳密性をすべて犠牲にして大胆に10秒で説明してしまうと、
DTCPIP 入門の前に、その4、 楕円曲線暗号を一言で説明すると”割り算ができない”数を利用した暗号 - ソフトウェアな日々
「掛け算はできるのだけれど、割り算が不可能」
という大変都合のよい数(体)が存在する、というところが
この暗号の味噌というか肝になっております。
DH方式の弱点
鍵配送問題を解決した画期的なDH方式にも、致命的な弱点がある。
ヒント:ルパン3世の常套手段で、銭形警部は毎回だまされている。
Concealment / KnockOut_Photographs
続く。
*1:Elliptic Curve Diffie-Hellman
*2:Elliptic Curve Cryptography
*3:ダイエー・ホークスじゃないよ。ディフィー・ヘルマン鍵共有、Diffie-Hellman key exchange, ディフィー・ヘルマン鍵交換のことだよ
*4:[http://www.nikkeibp.co.jp/news/manu07q2/535811/:]
*5:[http://ja.wikipedia.org/wiki/%E6%A5%95%E5%86%86%E6%9B%B2%E7%B7%9A%E6%9A%97%E5%8F%B7%E3%81%AE%E7%89%B9%E8%A8%B1:title]