8. 通信・信号処理6 / 7ページ

秘密を守る:暗号とセキュリティのための半導体

公開日:作成者:hysd(SemiCompass運営者)

このページの目次
  1. なぜ、半導体で守るのか
  2. 暗号の計算を行う回路
  3. 乱数を作る
  4. 鍵を守る専用の領域
  5. 外から調べる攻撃への備え
  6. 機器の正しさを確かめる
  7. 作る段階での注意
  8. このページのまとめ
  9. 関係する工程と用語
  10. 次に読む
  11. 理解度チェック

情報を守るための半導体の役割を説明する。暗号の計算を行う回路、秘密の鍵を守る専用の領域、乱数の発生、外から鍵を盗もうとする攻撃への備え、機器の正しさを確かめる起動の手順を扱う。

鍵を守る専用の領域と、起動の確認(模式図)

  1. 鍵の領域暗号の計算計算の結果だけを外へセキュリティのチップ鍵は外に出さない
  2. 書き換えられない部分次のソフトウェアを確認さらに次を確認確認できたものだけ起動する起動の確認正しいソフトウェアだけを起動する
図:左は、セキュリティのためのチップ。鍵は専用の領域に置かれ、暗号の計算はチップの中で行う。鍵は外に出ない。右は、起動の確認。書き換えられない部分から、段階的に次を確かめる。目盛りのない模式図、本サイトで作成

なぜ、半導体で守るのか

通信や決済、機器の認証など、情報を守る場面では、暗号が使われる。暗号は、秘密の鍵を使って、情報を読めない形に変える。鍵が漏れれば、暗号の意味がなくなる。

ソフトウェアだけで鍵を守ろうとすると、ソフトウェアの弱点を突かれて、鍵が盗まれるおそれがある。そこで、鍵の保管や暗号の計算を、専用の半導体の回路で行う方法がある。このページでは、その考え方を見ていく。

暗号の計算を行う回路

暗号の計算は、決まった手順を、何度も繰り返す。汎用のプロセッサーでも行えるが、専用の回路で行うほうが、速く、電力も少ない。通信を暗号化する機器や、記憶装置の中身を暗号化する機器では、暗号の計算を行う専用の回路が組み込まれていることが多い。

乱数を作る

暗号では、予測できない数(乱数)が必要になる。鍵を作るときなどである。乱数が予測できると、鍵も推測できてしまう。

コンピューターの計算は、決まった手順で動くので、本当に予測できない数を作るのは難しい。そこで、半導体の回路の中に、物理的な雑音(電気の揺らぎなど)を利用して、予測しにくい数を作る回路を入れることがある。

鍵を守る専用の領域

秘密の鍵は、チップの中の、専用の領域に保管される。この領域は、外から読み出せないようにする。鍵を使った計算は、チップの中で完結し、鍵そのものは、外に出さない。

このような、鍵の保管と暗号の計算を、一つの小さなチップにまとめた部品もある。決済のカードや、機器の認証などで使われる。

外から調べる攻撃への備え

攻撃する側は、鍵を直接読めなくても、別の手がかりから鍵を推測しようとする。たとえば、暗号の計算をしているときの、消費する電力や、出る電波の変化を、細かく測るやり方がある。また、チップを物理的に開いて、中を調べるやり方もある。

そのため、チップには、守りの工夫が組み込まれる。計算の電力の変化を目立たなくする、チップの表面に仕掛けをして、開けられると鍵を消す、などである。

機器の正しさを確かめる

機器を起動するとき、書き換えられていない正しいソフトウェアかを、確かめる手順がある。チップの中の、書き換えられない部分から確認を始めて、段階的に、次のソフトウェアが正しいかを確かめていく。この手順で、不正に書き換えられた機器の起動を防ぐ。

作る段階での注意

鍵を機器に書き込む作業は、チップの製造やテストの工程で行われることがある。この段階での情報の取り扱いも、守りの一部であり、管理された環境で行われる。

このページのまとめ

情報を守る半導体は、暗号の計算、乱数の発生、鍵の保管を、専用の回路と領域で行う。外から鍵を推測する攻撃に備える工夫があり、機器の起動を確かめる手順も支える。鍵を扱う製造の段階も、管理される。

理解度チェック

本文の内容から答えられる問いです。答えを選ぶと、正しいかどうかと解説が出ます。

問1

鍵の保管を専用の半導体の領域で行う利点として、適切なものはどれか。

答えと解説を見る

答え:1. 鍵を外に出さず、チップの中で計算を完結できる

鍵を外に出さず、チップの中で暗号の計算を完結させれば、鍵が盗まれにくい。

問2

暗号で乱数が予測できないことが大事な理由はどれか。

答えと解説を見る

答え:1. 乱数が予測できると、鍵も推測できてしまうから

鍵を作るときに乱数を使う。予測できると、鍵も推測されてしまう。