早稲田大学大学院基幹理工学研究科情報理工学専攻 教授 戸川望先生インタビュー「LSIテスト設計技術に起因するICカードの脆弱性の解明とその対策手法の構築」(第2回)

 私たちの財布を開けば、定期券、クレジットカード、キャッシュカードなど、さまざまなICカードが入っており、そのいずれにも大切な個人情報が記憶されています。これまで絶対安心だと考えられ、さまざまな場面で情報を守るために使われてきたICカードですが、意外な落とし穴が発見されたのです。
 早稲田大学の戸川望先生は「スキャンベース攻撃」と呼ばれるICの暗号解読方法を世界で初めて発見し、その対策について研究されてきました。また、ICを使ったアプリケーションの作成や、人にとって分かりやすい地図の開発など、私たちの元に還元されるさまざまな便利な仕組みを研究なさっています。
 今回はICカードのセキュリティについての研究を中心に、アプリケーション設計、地理情報システムの開発という、先生が現在取り組まれている3つの研究テーマについてお伺いしました。

「助成研究者個人ページへ」

1970年生まれ。1992年早稲田大学理工学部電気通信学科卒業、1977年同大学院理工学研究科電気工学専攻修了、1994年日本学術振興会特別研究員に就任。その後、北九州市立大学環境工学部や早稲田大学理工学部の助教授を経て、2007年に早稲田大学基幹理工学部情報工学科准教授に。2009年に同学科教授に就任し、現在に至る。

先生は昨年までセコム科学技術振興財団でIC(=集積回路)のセキュリティについてご研究されていました。

 ICと聞くと、交通系ICカードや銀行のキャッシュカード、社員証や学生証といった「ICカード」を連想されると思います。いまから10年ほど前まで、横に伸びる黒い帯がついた「磁気カード」がひろく使われてきましたが、データの改ざんや盗窃がされやすかったため、偽装カードが作られる事件が多発しました。そうした背景から、磁気からより安全なICへと、移行されてきたのです。ですが、私どもの研究室がある盲点を見つけてしまったため、それをふまえて、いかにして破られることのないシステムにするか、という対策を研究していました。

絶対安心だと思われてきたICの穴とは、いったい何なのでしょうか?

 ICカードにはさまざまな個人情報や暗証番号が入っていますが、それらのデータはふだん「鍵」によって暗号化され、読み取り機などに出力されます。そのため、読み取られたとしてもデータは暗号化されており判別不可能なため、絶対安心なものだと考えられてきました。
 ですが、意外なところに盲点がありました。たとえば交通系ICカードを改札にかざした場合、音が出ますよね。あるいは回路が発熱しているかもしれませんし、電磁波を飛ばすかもしれませんし、電力消費が変わるかもしれません。こうした変化を観測すると、中身のデータそのものは分からなくとも、外から変化を観察することによって、内部の情報を明らかにできてしまうのです。
 このように、直接回路からデータを入手する正攻法ではなく、回路の入出力以外のさまざまな情報から鍵を入手し、暗号化されたデータを解読する、という抜け道的な攻撃方法を「サイドチャネル攻撃」と言います。

「サイドチャネル攻撃」には具体的にどんな方法があるのでしょうか?

 たとえば、さまざまな入力をおこないそれぞれの処理にかかる時間の違いを利用して鍵を推測する「タイミング攻撃」、消費電力の変動を利用した「電力解析攻撃」、ICから漏れてきた電磁波を利用する「電磁波解析攻撃」、処理の際に発生する音を利用する「音響解析攻撃」などがあります。いずれも、ICの特性を利用して、入力の違いによる変化を観察し、得た情報をもとに鍵を解明する、という方法です。

機密性が高いとされてきたICにもサイドチャネル攻撃の可能性があることを、先生がはじめて発見されたのですね。

 ICカードにとって特に脅威となりうると考えているのは、「スキャンベース攻撃」と呼ばれるサイドチャネル攻撃です。集積回路のことを総称してLSIと呼んでおり、入力された情報を計算する「組み合わせ回路」と、計算結果を記憶する「FF(フリップフロップ)」という素子で中身が構成されています。言葉の上では単純に思えますが、実際の回路はとても複雑な構造になっているため、正しく動作しているかどうか確かめることは、まずできません。そのため設計者は、計算途中の結果を覗き見ることができる「スキャンチェイン」を通して、きちんと動いているかどうか確認するのです。しかし、このスキャンチェインは、設計者が正常に動作しているのか確認できると同時に、第三者も同じ内容が確認できてしまうという、諸刃の剣でもあります。こうして得た情報を使って、悪意を持った第三者によって暗号が解明されてしまうかもしれません。ですが、これまでスキャンベース攻撃の危険性はほとんどないものだと考えられてきました。

なぜ、スキャンベース攻撃の脅威を気にする必要がなかったのでしょうか。


 スキャンチェインの構造はとても複雑なうえ、内部のFFの接続方法はランダムで、意味を持ったものではないため、どのような順番で接続してあるかは設計者以外には分かりません。たとえば10個FFが入っていたとすると、10の階乗通りの接続方法があります。実際には千個〜十万個という数が入っていますので、とても計算できる数ではありませんでした 。