モノのインターネット (IoT) 11-22-2022

暗号におけるアキレス腱である暗号鍵 

Srinivas Kumar
Cryptography blog image

暗号は、データ、デバイス、ユーザーのデジタルトラストにおけるスムーズな対応領域です。暗号は、平文を暗号文(その逆も同様)に変換する「魔法道具」のようなもので、数学の魔法(初期化ベクター、カウンター、メッセージブロック、鍵サイズ、鍵アルゴリズム、ブロックチェーン、出力フィードバック、XOR 演算、群論、オイラーのファイ関数、一方向ハッシュ関数など)がそれを可能にします。有名な数学者であり物理学者でもあるガウスはこう述べました。"数学は科学の女王であり、整数論は数学の女王である"。

IoT と運用技術における既存(ブラウンフィールド)デバイス、およびほとんどの新規(グリーンフィールド)デバイスは、サイバーレジリエンスを意図して製造されていないため、サイバー空間においては信頼のできないプラットフォームであるといえます。信頼できないプラットフォーム上にデジタルトラストを構築していく、デジタルトランスフォーメーションの道のりはどこから始めればよいでしょうか。

CISO、CTO、および製品開発者が IoT 戦略を再考すべき理由

現在地球上には、人口をはるかに上回る数の IoT デバイスが存在しています(2030 年までにこの比率は 3:1 に達すると予測されています)。IoT デバイスでは、標準ベースの鍵と証明書管理が必要とされます。また、停電時の安全でセキュアな現場操作のために暗号化を有効活用する必要があります。暗号の使用は、設計上のアプリケーション/データセキュリティの中核をなしています。暗号は、サイバーセキュリティにおけるアキレス腱であるといえます。巧妙なハッカーに対しても対応を変えないからです(重要なインフラが文鎮化したりランサムウェアに遭遇するケースを考えてみてください)。万能な対策はないのでしょうか。

デジタルトラストの構築における電子証明書の役割

電子証明書は、認証、データ完全性の確保、 機密保持と、さまざまな目的で使用されます。

  • アイデンティティ証明書(誕生証明書)。長命の識別子(アイデンティティは不変なため)として OEM メーカーが発行します。 
  • 運用可能な証明書(例: TLS/SSH/IKE サーバー/相互認証ハンドシェイク用)。短命の識別子(1、2 年)としてデバイス所有者/オペレーターが発行します。 
  • 署名証明書。データを署名(例: コード署名、文書署名、メッセージ署名)するためにデータ生成者が発行します。 
  • 認証証明書。プラットフォームを証明するためにトラストアンカーのローカルルートに対して発行されます(例: 信頼されるプラットフォームモジュールによるプラットフォーム設定登録の署名済みの引用)。 

デジタルトラストを維持するうえでの非対称鍵と対称鍵の役割

暗号鍵は、非対称および対称という、2 種類の形態をとります。

非対称の公開鍵/秘密鍵ペアは、 鍵配布と鍵交換のプロセスで必要とされる、鍵のカプセル化で使用されます。鍵交換アルゴリズムは、暗号作成者と暗号解読者の間で対称です(つまり、両者は同じ一連のオペレーションを実行します)。鍵のカプセル化アルゴリズムでは、暗号作成者と暗号解読者の間で異なる一連のオペレーションを実行する必要があります。

転送中のデータの機密性保護は、一時的な対称鍵(AES など)を使用して行えます。対称鍵(共有シークレットとして機能する)は、データ完全性検証(HMAC など)に使用され、保存中のデータ(DAR: Data at Rest)の保護にも活用されます。鍵には、長命、短命、信頼される(サードパーティブローカーあり)、信頼なし(ブローカーなし)の種類があります。

特定の目的で使用する鍵の種類と強度を決めるには、鍵管理と新たに台頭しつつある耐量子コンピューターの脅威にどの程度対応できるか、そのメリットとデメリットを考慮する必要があります。

デジタルトラストを検査するうえでの継続的なデバイス監視と解析の役割

デバイスは静かに警告を発します。デバイス分析には、信頼できるデバイスインテリジェンスとリスクモデルが必要です。現場での長期の使用を念頭に置いて設計されているデバイスには、継続的なデバイスプラットフォーム監視、データ機能テレメトリ、リモート管理、メンテナンスとリカバリ(宇宙空間に漂う衛星や宇宙船のように)のための装備や制御が必要になります。データ主導の人工知能、機械学習、深層学習は、タイムリーかつコスト効率が良い方法でリスクを軽減するために、信頼できるデータに頼っています。クラウドにおいてスケーラブルで信頼できる解析を実現するには、デバイスインテリジェンスとテレメトリのデジタル署名が不可欠です。定性/定量メトリクスでは、ポリシーに基づいた「クリーン」データのマイニングが求められます。これにより、津波のように押し寄せるビッグデータや、「きれいでない」データがもたらす経済的な悪影響を避けることができます。

デジタルトラストを確立するうえでの認証および認可プロセスの役割

ユーザーに対しては、OIDC (OpenID Connect)および SAML が認証に使用されます。OAuth プロトコルは、(別途)アクセス認可に使用されます。HTTP ベーシック認証は、ユーザー名とパスワードに基づいています。エンタープライズアプリケーションとサービスには、XML SAML 対応シングルサインオン(SSO)が使用されます。最新のウェブアプリケーションは OAuth プロトコル、バックグラウンド HTTP API コール(単一ページアプリケーション)、JSON ウェブトークン(JWT)のメリットを享受しています。

(ヘッドレス)デバイスにとって、鍵は「ある施設」の扉を開くもの、証明書は認証と認可を受けていることを公式に宣明するアイデンティティ書類であるといえるでしょう。デバイスメーカーが工場製造時においてデバイスとプラットフォームを証明するために使うプロビジョニング鍵と証明書用のツールと方式(プロトコル)は、デバイス所有者が業務アプリケーションで使用する運用鍵と証明書とは、大きく異なる可能性があります(それにはいくつもの理由があります)。

サイバー空間におけるデジタルトラストを確立するうえで鍵管理は大きな課題

鍵管理は、暗号化操作の中心的な機能です。鍵ライフサイクルの各ステージは、鍵の生成、配布、使用および更新(ローテーション)です。証明書は、アイデンティティ(サブジェクト名)を公開鍵に関連付けるに過ぎません。これにより、正式な所有権が確立されるとともに、関連付けられた秘密鍵の所持が証明されます。証明書の使用を求める以外にも、その他の方法(トークンを使うなど)でアイデンティティを確立できます。消費者とエンタープライズの双方の環境におけるエンドポイント(ユーザーデバイスとユーザーレスデバイス)で、鍵管理はスケーラビリティとメンテナンス上の大きな課題となります。PKI の構築時には、認証局、ハードウェアセキュリティモジュール、セキュアエレメントに対して手間と費用が掛かる投資が必要になってきます。そのため、テクノロジーを選定する際には、鍵管理にかかる費用とその敏捷性をまず考慮する必要があります。

耐量子コンピューターがもたらす脅威をデジタルトラストを通じて対処するための準備

1994 年に、Peter Shor は 半素数(2 つの大きな素数の積で表される数)の素因数を算出するために量子コンピューターアルゴリズムを開発しました。このアプローチを使用した量子コンピューター攻撃により、公開鍵暗号アルゴリズム(RSA、DH、ECDH)が解読されてしまう可能性が出てきました。2048 ビットの RSA 鍵では、量子コンピューター攻撃に対して十分なセキュリティを確保できません。マサチューセッツ工科大学(MIT)の最近の調査で明らかになったのは、強力な量子コンピューターならば、2048 ビットの RSA 鍵の暗号を 8 時間で解読できることです。1996 年に、Lov Kumar Grover が開発した量子コンピューターアルゴリズムは、特定の出力値を生成するブラックボックス関数の一意の入力を高い確率で当てるものでした。このような将来の量子コンピューター攻撃に備えるには、対称鍵を長くする必要があります。AES 128 では、量子コンピューター攻撃に対して十分なセキュリティを確保できません。量子コンピューターが手頃な価格になるまで、AES 192 と AES 256 は長い間、安全な選択肢だと考えられています。2022 年に、米国商務省標準化技術研究所(NIST)は、量子コンピューター時代の IoT 向けに格子ベース暗号を承認しました。それでも、鍵サイズが大きくなったことの影響、リソースに制限のあるデバイスにおけるスタック使用と実行サイクルについては、さらなる分析が望まれます。サイドチャネル攻撃に対する脆弱性は、技術的な評価を要するもう 1 つの対象分野です。

UP NEXT
セキュリティ 101

ホリデーシーズン中のオンラインショッピングを安全に行う方法

5 Min