
Appleオペレーティングシステムでの耐量子暗号
概要
歴史的に、通信プロトコルではRSA、楕円曲線Diffie-Hellman鍵交換、楕円曲線署名のような従来型の公開鍵暗号を使用して、デバイス間、またはデバイスとサーバの間で安全な接続を確立していました。これらのアルゴリズムはすべて、ムーアの法則を考慮に入れても、必要な計算量が多すぎてコンピュータには解決できないと長年考えられていた数学問題に依存しています。しかし、量子コンピューティングの発展により、この状況が変化するおそれが出てきました。十分に強力な量子コンピュータなら、こうした従来型の数学問題を根本的に異なる方法で解決するかもしれず、理論的には、エンドツーエンドの暗号化通信のセキュリティを脅かすほどの速度で解決することも可能です。
この能力を備えた量子コンピュータはまだ存在しませんが、十分な資金力を持つ攻撃者は、最新のデータストレージコストの急激な低下を利用して、その到来にすでに備えている可能性があります。その根拠は単純で、攻撃者は現在の暗号化データを大量に収集してすべて保管しておき、将来参照できるようにしていることが考えられます。現在はこのデータを復号できないとしても、今後復号できる量子コンピュータが手に入るまで、攻撃者はデータを保存しておくことができます。この攻撃シナリオは、「Harvest Now, Decrypt Later」(今収集してあとで解読)と呼ばれます。
将来の量子コンピュータからのリスクを軽減するために、暗号コミュニティは量子コンピュータを必要としない耐量子プロトコルの基礎となる、ポスト量子暗号(PQC)という新しい公開鍵アルゴリズムに取り組んできました。このプロトコルは、現在使用されている従来型の非量子コンピュータで実行できますが、将来の量子コンピュータによってもたらされる既知の脅威からの安全性も維持します。
Appleの耐量子暗号に対するアプローチ
耐量子暗号を導入するにあたって、Appleはハイブリッド暗号を採用しています。この暗号は、従来型のアルゴリズムと新しいポスト量子アルゴリズムを組み合わせることで、アップデートによってセキュリティが従来よりも低下しないようにするものです。ハイブリッド暗号が不可欠である理由は、Appleが実績のある従来のアルゴリズムの実装を引き続き活用できることです。アルゴリズム実行中のCPU信号を悪用するサイドチャネル攻撃などの鍵回復攻撃に対抗するために、Appleはこれらの実装を強化してきました。
Appleは幅広いプロトコルに耐量子暗号を導入しており、暗号化された通信内容を攻撃者が大規模に収集する可能性がある、機密ユーザ情報を処理する以下のアプリケーションを優先しています:
iMessage: Appleは、iOS 17.4、iPadOS 17.4、macOS 14.4、およびwatchOS 10.4にiMessage PQ3を導入しました。これは、大規模な耐量子メッセージングの最先端技術を進化させたものです。詳しくは、Appleセキュリティブログの「iPQ3を備えたiMessage: 大規模な耐量子メッセージングの新たな最先端技術」(英語)を参照してください。
TLSおよびHTTPS: Appleは、iOS 26、iPadOS 26、macOS 26、tvOS 26、およびwatchOS 26のデベロッパ向けネットワーキングAPIである
URLSessionおよびNetworkフレームワークのTLSで、耐量子暗号化をサポートしています。これらのAPIを使用するすべてのシステムサービスとアプリに対して、APIは耐量子暗号をデフォルトで有効にします。このプロトコルは、攻撃者がデータを収集する可能性があるネットワーク内を移動する、インターネットブラウズやメールなどの膨大な量の個人データを保護するので、特に重要です。詳しくは、TLSのセキュリティを参照してください。VPN: Appleは、ネイティブVPNクライアントのサポート、およびデベロッパ向けIKEv2 APIに耐量子暗号を追加しました。これにより、他社製VPNソリューションがiOS 26、iPadOS 26、macOS 26、tvOS 26、およびwatchOS 26で耐量子暗号化を簡単に有効化できるようにもなります。詳しくは、VPN(仮想プライベートネットワーク)のセキュリティを参照してください。
SSH: AppleはmacOS 26で、耐量子暗号鍵交換に対応するようにこのプロトコル(Macでリモートログインとファイル転送に一般的に使用される)をアップグレードしました。詳しくは、「Macユーザガイド」の「リモートコンピュータにMacへのアクセスを許可する」を参照してください。
Apple Watch: Appleは、ML-KEMを使用する鍵交換を追加することによって、iOS 26とwatchOS 26でiPhoneとApple Watchの間の耐量子暗号化を有効にしました。詳しくは、watchOSのシステムのセキュリティを参照してください。
デベロッパ向け暗号API: デベロッパがAppleによるポスト量子暗号のネイティブ実装を活用し、デベロッパ独自のプロトコルをポスト量子暗号に移行できるように、iOS 26、iPadOS 26、macOS 26、tvOS 26、およびwatchOS 26のApple CryptoKitフレームワークにサポートが追加されました。安全な暗号化のために、ML-KEMはML-KEM 768とML-KEM 1024の2つのパラメータを提供しています。耐量子認証のために、デベロッパはML-DSA-65とML-DSA-87を使用できます。これらのアルゴリズムは単独で実行すれば堅牢ですが、デベロッパは十分に分析済みのプロトコル内でこれらを使用して、アプリケーションのセキュリティ要件が達成されるように正しく組み合わせて活用する必要があります。詳しくは、Apple DeveloperのWebサイトの「Apple CryptoKit」を参照してください。
重要: システムは、サポートサーバへの接続時にのみ耐量子暗号化に対応します。