5.2 BR/EDR SECURE SIMPLE PAIRING

セキュアシンプルペアリングの主な目的は、ユーザーのペアリング手順を簡素化することです。 副次的な目標は、Bluetoothワイヤレステクノロジのセキュリティを維持または向上させることです。 多くのテクノロジや製品では、高いレベルのセキュリティと使いやすさがスペクトルの反対側にあることが多いため、エンドユーザーの視点から複雑さを最小限に抑えながらセキュリティを最大限に高めるように注意が払われています。

5.2.1 Security Goals

セキュアシンプルペアリングには、パッシブ盗聴からの保護とMITM(Man-in-the-Middle)攻撃(アクティブ盗聴)からの保護の2つのセキュリティ目標があります。 Bluetoothコア仕様バージョン2.0 + EDRおよびそれ以前のバージョンで使用されているペアリングアルゴリズムを使用して16文字の英数字PINを使用することによって提供される最大セキュリティレベルを超えることが、セキュアシンプルペアリングの目標です。 Bluetoothコア仕様2.0 + EDRおよびそれ以前のバージョンに準拠している多くのBluetoothデバイスでは、4桁のPINまたはリンクのセキュリティを大幅に制限する一般的に既知の値の固定PINを使用しています。

5.2.2 Passive Eavesdropping Protection

強力な暗号化アルゴリズムと結合された強力なリンクキーは、ユーザーが受動的な盗聴から保護するために必要です。リンクキーの強さは、攻撃者が知らない生成プロセスのエントロピー(またはランダム性)の量に基づいています。レガシー・ペアリングを使用すると、エントロピーの唯一のソースは、多くの場合、ユーザーによって選択されるか、または所定の製品に対して固定される典型的な4桁のPINです。したがって、ペアリング手順と1つの認証交換が記録されていれば、一般的に利用可能なコンピューティングハードウェア上で非常に短い時間内にPINを見つけるために徹底的な検索を実行できます。 セキュアシンプルペアリングでは、記録された情報からリンクキーを導出するために、公開鍵暗号の難しい問題を攻撃者が解決しなければならないため、記録攻撃はさらに困難になります。 この保護は、パスキーの長さまたはユーザーが処理する必要のある他の数値には依存しません。 セキュアシンプルペアリングは、ユーザーが何もする必要がない場合でも、記録および受動的な盗聴攻撃に対して同じ抵抗を与えます。

セキュアシンプルペアリングでは、盗聴攻撃を阻止する手段としてECDH(Elliptic Curve Diffie Hellman)公開鍵暗号を使用します。 ECDHは受動的な盗聴攻撃に対して非常に高いレベルの強度を提供しますが、受動的な盗聴攻撃(5.2.3節を参照)よりも実際に実行するのがはるかに難しいMITM攻撃を受ける可能性があります。

Bluetoothコア仕様バージョン2.0 + EDR以前のセキュリティプロトコルを16桁数字PINで使用すると、約53ビットのエントロピーが達成されます 一方、16文字の大文字と小文字を区別するPINは、62文字セット全体([0、... 9、 'A'、... 'Z'、 'a'、...'z'])を使用すると約95ビットのエントロピーを生成します。 セキュア接続機能をサポートしていないデバイス(コア仕様v4.1で導入されました)では、 セキュアシンプルペアリングには、FIPS認定のP-192楕円曲線を使用して約96ビットのエントロピーがあり、少なくとも16ビットの英数字で大文字と小文字を区別するPINを使用して、Bluetoothコア仕様2.0 + EDRのエントロピーと少なくとも同等です。 セキュア接続機能をサポートするデバイスの場合、Secure Simple Pairingには、FIPS認定のP-256楕円曲線を使用して約128ビットのエントロピーがあります。 ECDH暗号は、Diffie Hellman(一般的にDH76と呼ばれる)よりも選択されました。これは、一般的なBluetoothコントローラの計算量が少なく、計算能力が低い可能性が低いためです。

5.2.3 Man-In-The-Middle Protection

MITM(Man-in-the-Middle)攻撃は、ユーザーが2つのデバイスを接続する場合に発生しますが、 お互いに直接接続するのではなく、ペアにしようとしているデバイスの役割を果たす第3の(攻撃している)デバイスに無意識に接続します。次に、第3の装置は、2つの装置間で情報を中継し、それらが直接接続されているという錯覚を与えます。攻撃装置は、2つの装置間の通信を盗聴することさえできます(アクティブな盗聴と呼ばれます)、接続に関する情報の挿入と変更が可能です。この種の攻撃では、2つのデバイス間で交換されるすべての情報が侵害され、攻撃者が各デバイスにコマンドと情報を注入して、デバイスの機能を損なう可能性があります。 攻撃の被害を受けたデバイスは、攻撃者が存在する場合にのみ通信することができます。 攻撃者がアクティブでないか範囲外の場合、2つの犠牲デバイスは互いに直接通信することができず、ユーザーはそれに気付くでしょう。

MITM攻撃を防ぐために、セキュアシンプルペアリングでは、数値比較またはパスキー入力の2つのユーザー補助数値メソッドを提供しています。 セキュアシンプルペアリングで16桁の10進数を使用する場合、使いやすさは16桁の16進数のPINでレガシーペアリングを使用する場合と同じになります。 この場合、MITMが自身のリンクキーを挿入する機会は、1016 = 253のペアリングインスタンスの1であり、不必要に低い可能性があります。

セキュアシンプルペアリングは、MITMが成功した攻撃をマウントできる確率で1万分の1を提供するという目標で、MITM攻撃からユーザーを保護します。 MITM保護の強みは、数値比較とパスキー入力に6桁の数字を使用することで、ユーザーの影響を最小限に抑えるように選択されました。 このレベルのMITM保護は、ほとんどの場合、失敗したMITM攻撃の結果として接続プロセスが失敗した場合に、潜在的なMITM攻撃者の存在をユーザーに警告することができるため、選択されました。 ほとんどのユーザーは、パスキーを改ざんしていなければ、 認証には4桁のキー(銀行カードのPINコード)で十分ですが、6桁の数字を使用するとセキュアシンプルペアリングはFIPSに準拠します。これはユーザビリティの影響をほとんど感じることができませんでした。

5.2.4 Association Models

セキュアシンプルペアリングでは、数値比較、ジャストワーク、アウトオブバンド、パスキーエントリと呼ばれる4つの関連モデルが使用されます。 これらの関連モデルのそれぞれについては、以下のセクションで詳しく説明します。 使用される関連モデルは、2つのデバイスのI/O機能に基づいて決定的です。

5.2.4.1 Numeric Comparison

数値比較関連モデルは、両方のデバイスが6桁の数字を表示することができ、両方ともユーザーが「はい」または「いいえ」と入力できるシナリオ用に設計されています。 このモデルの良い例は、携帯電話/PCのシナリオです。

ユーザーは両方のディスプレイに6桁の数字(「000000」から「999999」まで)を表示し、両方のデバイスで数字が同じかどうかを尋ねられます。 両方のデバイスに「はい」と入力すると、ペアリングは成功します。

数値の比較には2つの目的があります。 第1に、多くのデバイスは固有の名前を持たないので、正しいデバイスが互いに接続されていることをユーザに確認する。 第2に、数値比較はMITM攻撃に対する保護を提供します(5.2.3項を参照)。

数値比較とBluetoothコア仕様およびそれ以前のバージョンで使用されているPINエントリモデルとの間には、暗号の観点から大きな違いがあることに注意してください。 数値比較連想モデルでは、6桁の数値は、Bluetoothセキュリティモデルの場合のように、セキュリティアルゴリズムの成果物であり、入力への入力ではありません。 表示された数を知ることは、2つの装置間で交換される符号化データを解読する際には有益ではありません。

5.2.4.2 Just Works

ジャストワークス関連モデルは、少なくとも1つの装置が6桁の数字を表示することができないディスプレイも、6桁の数字を入力できるキーボードをもたないシナリオ用に主に設計されています。 このモデルの良い例は、ほとんどのヘッドセットにディスプレイがない携帯電話/モノラルヘッドセットのシナリオです。

ジャストワークス関連モデルでは数値比較プロトコルが使用されますが、ユーザーに数字が表示されることはなく、アプリケーションはユーザーに接続を受け入れるよう求めることがあります(正確な実装は最終製品の製造元に委ねられています)。

ジャストワークス関連モデルは、数値比較関連モデルと同じ保護を受動盗聴に対して提供しますが、MITM攻撃に対する保護は提供しません。

固定PINのヘッドセットの今日の経験と比較すると、受動盗聴に対する高度の保護が実現されているため、ジャストワークス関連モデルのセキュリティレベルはかなり高くなっています。

5.2.4.3 Out of Band

アウトオブバンド(OOB)関連モデルは、帯域外メカニズムを使用してデバイスを検出するだけでなく、ペアリングプロセスで使用される暗号番号を交換または転送するシナリオ用に主に設計されています。 セキュリティの観点から有効であるために、帯域外チャネルは、Bluetooth無線チャネルと比較してセキュリティの点で異なる特性を提供する必要があります。 帯域外チャネルは、MITM攻撃に耐性がある必要があります。 そうでない場合、認証中にセキュリティが侵害される可能性があります。

ユーザーのエクスペリエンスはアウトオブバンドメカニズムによって少し異なります。 一例として、近接フィールド通信(NFC)ソリューションでは、ユーザは最初に2つのデバイスを一緒に接触させ、第1のデバイスを他のデバイスとペアリングするオプションが与えられます。 「はい」と入力すると、ペアリングは成功です。 これは、交換された情報が両方のデバイスで使用されるシングルタッチ体験です。 交換される情報には、暗号情報だけでなく、発見情報(Bluetoothデバイスアドレスなど)も含まれます。 デバイスの1つはBluetoothデバイスアドレスを使用して他のデバイスとの接続を確立します。 残りの交換された情報は、認証時に使用されます。

OOBメカニズムは、読み取り専用または読み取り/書き込みのいずれかとして実装できます。 一方の側が読み取り専用の場合、一方向の認証が実行されます。 両側が読み取り/書き込みの場合、双方向認証が実行されます。

OOBプロトコルは、以前のOOBの情報交換によってペアリングプロセスがアクティブ化され、その1つ(または両方)のデバイスがIO機能としてOOBを指定した場合にのみ選択されます。 プロトコルは、交換された情報を使用し、単に接続を確認するようユーザーに求めます。

OOBアソシエーションモデルは、暗号情報とBluetoothデバイスアドレスを交換できる任意のOOBメカニズムをサポートします。 OOBアソシエーションモデルは、ユーザーがBluetooth接続をアクティブにしたソリューションをサポートしておらず、認証にOOBを使用したいだけです。

5.2.4.4 Passkey Entry

Passkey Entry関連モデルは、1つのデバイスに入力機能があり、6桁の数字を表示する能力を持たず、もう1つのデバイスに出力機能があるシナリオ用に設計されています。 このモデルの良い例は、PCとキーボードのシナリオです。

ユーザは、ディスプレイ上に6桁の数字(「000000」から「999999」まで)を表示し、次に他のデバイスに番号を入力するように求められます。 2番目のデバイスに入力された値が正しい場合、ペアリングは成功です。 Passkey Entryと、Bluetooth Core Specification 2.0 + EDRおよびそれ以前のバージョンで使用されているPINエントリモデルとの間には、暗号の観点から大きな違いがあることに注意してください。 Passkey Entryアソシエーションモデルでは、2.0 + EDRセキュリティモデルの場合のように、6桁の数字はセキュリティアルゴリズムとは独立しており、入力には関係しません。 入力された番号を知ることは、2つの装置間で交換される符号化されたデータを解読する際には有益ではない。

5.2.4.5 Association Model Overview

次の図は、検出に使用されるテクノロジの観点からのセキュアシンプルペアリングと、異なる関連付けの可能性を示しています。

Figure 5.3: Secure Simple Pairing Association Models

results matching ""

    No results matching ""