TCGが提供するTPM2.0の基本技術

  0. TPMを始める前に

  1. TPM1.2とTPM2.0の違いについて
  2. 信頼の基点(Root of Trust)の重要性
  3. TPM2.0チップの基本構成
  4. 階層
  5. 鍵について
  6. 復号/暗号化セッションの重要性
  7. TPM2.0を使用したソフトウェア開発
  8. Q&A


8.Q&A よくある質問(2018年12月追加)

以下に、組込み向けTPM2.0に関して、お客様から頂く質問について説明してあります。
このページは、随時アップデートする予定です。

①TPM1.2とTPM2.0でソフトウェアの互換性はありますか。
回答:いいえ、互換性はありません。ただ、TPM1.2でインサイトのTAWをお使い頂いているお客様は、TPM2.0を使用される場合は、TPM1.2でご使用いただいているTAWと同等のインターフェースをTPM2.0でも提供できるため、お客様のアプリケーションのインターフェースを変更する必要は基本的にありません。
②TPM1.2とTPM2.0の違いは何ですか。?
回答:基本的に、仕様自身が大きく異なっています。基本的な暗号であるRSAやSHA1はTPM1.2とTPM2.0に搭載されていますが、TPM2.0はさらにECC(楕円曲線暗号)やAESが追加搭載され、SHAについても追加でSHA256や半導体メーカによってはSHA384が搭載されています。また、鍵の生成方法や鍵管理を行うための階層構造も大きく異なっています。そのため、TPM1.2とTPM2.0は違う仕様となり、ソフトウェアも同様に互換性を持っていません。
③TPM2.0には、どのようなハードウェアのインターフェースを持っていますか??
回答:現在、各社から提供されているTPM2.0には、LPC、SPI、I2Cがあります。SPIやI2Cについては転送速度について違いがあるので、TPM2.0を提供しているメーカへお問い合わせください。
④TPM1.2は、今後使用できないのでしょうか?
回答:TPM1.2搭載製品の受け入れにより異なります。例えばSHA1は、単純なハッシュ計算ですとまだ使用できることが多いようですが、署名などに使用されている場合は使用できないことが多いようです。
 
⑤TPM2.0チップは複数の半導体メーカより提供されていますが、インサイトのTPM2.0用ソフトウェアはどのメーカに対応していますか?
回答:複数のTPMメーカに対応しています。基本的にインサイトのTPM2.0対応ソフトウェアはTPM半導体メーカに依存しない仕様になっています。詳細については弊社までお問い合わせください。
⑥TPM2.0を使用してデータを暗号化しましたが、そのTPM2.0が壊れてしまいました、データを復号する方法はありますか?
回答:基本的にTPM2.0で暗号化を行ったデータは、暗号化を行ったTPM2.0と同じTPM2.0でないと復号できません。そのような場合に対応するために、インサイトではTPM2.0で鍵の複製(デュプリケーション)機能に対応しています。
⑦TPM1.2で、データ転送時にバスの暗号をTrasnport Protectionで対応していましたがTPM2.0でも同じような機能はありますか?
回答:はい、TPM2.0では、復号/暗号化セッションで同様の機能に対応しています。仕様では、ユーザが設定することになっていますが、インサイトのTPM2.0ではこの仕様をAPIの内部で対応しています。
⑧中国暗号SM2、SM3、SM4に対応しているTPMメーカはありますか?
回答:はい、中国のNationZ社が対応したTPM2.0を提供しています。インサイトのTPM2.0対応TPMアクセスライブラリはSM2、SM3、SM4に対応していますが、別途ソフトウェア暗号ライブラリが必要な場合がありますので、詳細については弊社までお問い合わせください。
⑨TPM2.0はどのメーカでも同じ仕様で作られていますが、違いはありますか?
回答:はい、あります。TPM2.0のコマンドには必須とオプションがあります。TPM2.0メーカによってオプションの実装に差があります。
 
⑩TPM2.0用のTSSを選択する基準などありますか?
回答:これは難しい質問かもしれません。どこまで、どのように実装するかはお客様自身で決めることだと思います。ただ、TPM2.0で新しく機能であるHMAC認可、ポリシー認可などは実装してあるTSSを使用することを推奨します。実際、一部の書籍などでは、パスワード認可だけの実装は危険であると説明しています。