研究室ではさまざまなバックグランドを持った学生さんが入ってきます。そのため、事前知識がないことを前提に、研究に必要となるスキルを入学してから半年くらいかけて身に付けてもらいます。
暗号モジュールから漏えいするサイドチャネル情報から秘密鍵を取得することを目標にして、それを実施するために必要となるスキルを以下の輪講と演習で身に付けます。暗号モジュール以外を研究対象とする場合にも必要となるスキルは概ね同じなため、研究を行うために必要な知識を見つけることができます。
どの研究テーマを希望してもプログラムは必須のスキルです。この輪講では、自分が行いたい処理をプログラムに落とし込むトレニーングを行います。毎回与えられる問題はパズル的なもので、問題自体はシンプルですが、データ構造やアルゴリズムを意識しないと答えを出すまでに時間を要してしまうものが多数です。この輪講を終える頃には、「頭の中で思い描いた処理」をすんなりプログラムとして書き下すことができるようになると思います。
計算処理の中には、ハードウェアで処理した方が効率が多いことが多々あります。本演習では、共通鍵暗号の代表的なアルゴリズムであるAdvanced Encryption Standard (AES)の ハードウェア実装を中心に、ハードウェアプログラムの有効性を確認し習得します。
ハードウェアセキュリティの研究は大きく分けて、「計測」と「解析」から成り、本演習では、計測に着目します。本演習では、これまでの演習で回路に実装したAESから漏えいするサイドチャネル情報を計測します。漏えいしてくる情報に適した計測器の選択及びその操作、プローブ、アンプ、フィルタの選択・使用方法についてのスキルを身に付けます。また、回路の動作に伴って情報が漏えいするメカニズムについても学びます。
解析演習では、これまで行って来たソフトウェア・ハードウエアプログラム及び計測法の知識を融合させ、AESが実装された回路から漏えいするサイドチャネル情報から、秘密鍵の抽出を行います。鍵抽出にはサイドチャネル情報計測の質やモデルの適合性などが大きく影響しますので、これらを適宜変更しながら解読のスピードを競います。