セキュリティ分野であるトピックへの注目が一気に高まると、エンジニアは両方向から大量の情報にさらされがちです。一方では、重要な研究や標準化が急速に進み、もう一方では、過度な期待や混乱、そして実際のシステムでは通用しない「アルゴリズムを入れ替えるだけ」というアドバイスがあふれます。
PQCは、ここ数年まさにそのような状況にあります。
実際のシステムを構築・運用する担当者から繰り返し聞かれるのは、同じような実践的な疑問です。今、どのアルゴリズムが重要なのか。プロトコルにおける「ハイブリッド」とは実際に何を意味するのか。システム全体を壊すことなく進められる移行方法とは何か。鍵や署名のサイズはどの程度大きくなり、それがハンドシェイクやメッセージサイズにどのような影響を与えるのか、といった疑問です。
こうしたギャップを埋めるために取り組んだのが、IETF PQUIPワーキンググループです。そして今回、RFC 9958「エンジニアのためのPQC」をご紹介できることを嬉しく思います。これは数学の論文でも、マーケティング資料でもありません。暗号技術を取り巻く環境が大きく変化する中、実際のシステムの構築、移行、リリースを担うエンジニアのための実践ガイドです。
PQCについて議論する際に見落とされがちなのは、「耐量子コンピュータ」とは単に新しい暗号プリミティブを選択することではないという点です。長年にわたりプロトコル、インフラ、運用の前提となってきた考え方そのものを変える必要があります。
「アルゴリズムAをアルゴリズムBに置き換えるだけ」と考えていると、思わぬところで問題に直面する可能性があります。パフォーマンスが問題になる場合もありますが、それと同じくらい重要なのがメッセージサイズと、それに伴う影響です。フラグメンテーション、再送、ハンドシェイクのタイムアウト、バッファ制限、ハードウェア上の制約、証明書チェーンの肥大化、さらには把握していなかった最大サイズを密かに適用している中間装置などが問題になる可能性があります。
幸い、これはエンジニアリングによって解決できる問題です。ただし、PQCを単なる機能のオン・オフではなく、移行プログラムとして捉える必要があります。
PQCを実際のロードマップや制約に適した計画へ落とし込むには、RFC 9958で示した考え方に沿って、次のような移行プロセスを進めることが有効です。
当然のことに思えますが、ほぼすべての取り組みの成否を左右するポイントです。対象は「TLS」と「証明書」だけではありません。公開鍵暗号は、頭の中で描いているアーキテクチャ図には現れないさまざまな場所で使用されています。
多くの組織では、まず以下を確認する必要があります。
最初から完璧を目指すのではなく、今のうちに把握しておかなければ、後になって想定外の問題となる箇所を見つけることが重要です。
多くのチームは、最も重要なシステムからPQCのテストを始めます。この方法でも進められますが、通常は知見を得るまでに時間がかかります。
より早く知見を得るには、サイズのわずかな増加やタイミングの変化がすぐに問題につながる経路を特定します。たとえば、MTUの影響を受けやすいリンク、UDPを多用するプロトコル、リソースに制約のあるデバイス、古いスタック、多段のプロキシチェーン、ハンドシェイクやメッセージサイズに固定上限が設定されているシステムなどです。
こうした影響を受けやすい経路を調べることで、短期間で多くの知見を得られます。将来的にあらゆる環境で直面する可能性のある、実際の統合上の制約が明らかになるためです。
すべての組織に適用できる単一の「PQC移行」はありません。移行の順序は、自社でどこまで管理できるかによって異なります。
両方のエンドポイントを管理できる場合は、パイロットを迅速に進め、多くの知見を得られます。エンドポイントを管理できない場合や、大規模なエコシステムに属している場合は、長期的な互換性の確保が必要になる可能性があります。厳格なコンプライアンス要件がある場合は、早い段階から正式なポリシーと検証方法が必要になることもあります。長期間利用される組み込みデバイスを多数抱えている場合は、クラウドのみで構成されたサービスとは移行スケジュールや制約が異なります。
ここで「ハイブリッド」は、単なるバズワードではなく、移行計画の手段になります。環境によっては、標準や実装が成熟するまでリスクを軽減するための橋渡しとなります。一方で、明確な必要性が生じるまでは、その追加コストを避けた方がよい場合もあります。
PQCへの移行は大きな変化ですが、導入済みのシステム全体で暗号技術を進化させる必要が生じるのは、これが最後ではありません。この変化にうまく対応する組織には、いくつかの共通点があります。
最初のPQCパイロットが限定的なものであっても、運用能力としての暗号アジリティを高めるという重要な成果を得られます。
PQC導入の初期段階では、知見を得ることを優先すべきです。両方のエンドポイントを管理でき、障害を確認しながら迅速に改善できる、範囲を限定した環境を選びます。
また、何を測定するのかを明確にすることも重要です。初期段階で最も有用な指標は、「CPU負荷」とは限りません。たとえば、以下のような項目があります。
さらに、証明書の取り扱い、ログ、監視、インシデント対応などによって、どの程度の運用負荷が追加されるかも確認します。
最初のパイロットで最終的なアーキテクチャを証明する必要はありません。後の設計で考慮すべき制約を明らかにできれば十分です。
RFC 9958がその役割を果たせば、エンジニアにとって共通の参照資料となります。暗号技術を専門としないチームにも課題を明確に説明し、ハイブリッド方式やメッセージサイズの影響といったトレードオフを検討し、「PQCへの対応が必要」という課題を、実際のロードマップに組み込める具体的なステップへ落とし込めるようになります。
この移行には時間がかかり、多くの人が想定する以上に幅広いシステムへ影響します。しかし、順序立てた移行、テスト、運用上の規律を必要とする大規模なエンジニアリング移行として取り組めば、十分に対応できます。
実際に試しながら学びたい方は、DigiCert Labsをご利用ください。PQCをインタラクティブに試せる環境で、量子コンピュータ対応の証明書を生成・ダウンロードし、PQCを実際のワークフローに導入すると何が変わるのかを確認できます。