IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 華為技術有限公司の特許一覧

<>
  • 特許-ノードペアリング方法及び関連する装置 図1
  • 特許-ノードペアリング方法及び関連する装置 図2
  • 特許-ノードペアリング方法及び関連する装置 図3
  • 特許-ノードペアリング方法及び関連する装置 図4
  • 特許-ノードペアリング方法及び関連する装置 図5
  • 特許-ノードペアリング方法及び関連する装置 図6
  • 特許-ノードペアリング方法及び関連する装置 図7
  • 特許-ノードペアリング方法及び関連する装置 図8
  • 特許-ノードペアリング方法及び関連する装置 図9A
  • 特許-ノードペアリング方法及び関連する装置 図9B
  • 特許-ノードペアリング方法及び関連する装置 図10A
  • 特許-ノードペアリング方法及び関連する装置 図10B
  • 特許-ノードペアリング方法及び関連する装置 図11
  • 特許-ノードペアリング方法及び関連する装置 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-15
(45)【発行日】2024-10-23
(54)【発明の名称】ノードペアリング方法及び関連する装置
(51)【国際特許分類】
   H04L 9/32 20060101AFI20241016BHJP
   G06F 21/44 20130101ALI20241016BHJP
   H04W 12/50 20210101ALI20241016BHJP
   H04W 84/10 20090101ALI20241016BHJP
   H04W 12/069 20210101ALI20241016BHJP
【FI】
H04L9/32 200A
G06F21/44
H04W12/50
H04W84/10 110
H04W12/069
H04L9/32 200F
【請求項の数】 35
(21)【出願番号】P 2023505813
(86)(22)【出願日】2020-07-28
(65)【公表番号】
(43)【公表日】2023-08-18
(86)【国際出願番号】 CN2020105274
(87)【国際公開番号】W WO2022021087
(87)【国際公開日】2022-02-03
【審査請求日】2023-02-28
(73)【特許権者】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100132481
【弁理士】
【氏名又は名称】赤澤 克豪
(74)【代理人】
【識別番号】100115635
【弁理士】
【氏名又は名称】窪田 郁大
(72)【発明者】
【氏名】王 勇
【審査官】青木 重徳
(56)【参考文献】
【文献】米国特許出願公開第2018/0338330(US,A1)
【文献】中国特許出願公開第109905869(CN,A)
【文献】国際公開第2015/122289(WO,A1)
【文献】米国特許出願公開第2008/0133918(US,A1)
【文献】中国特許出願公開第109587518(CN,A)
【文献】中国特許出願公開第102065412(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/32
G06F 21/44
H04W 12/50
H04W 84/10
H04W 12/069
(57)【特許請求の範囲】
【請求項1】
第2のノードに適用されるペアリング方法であって、前記方法は、
前記第2のノードによって、第1のノードからペアリング要求メッセージを受信するステップであって、前記ペアリング要求メッセージは、前記第1のノードが、前記第2のノードと共有される事前共有鍵PSKを利用してペアリングを行う能力を有するかどうかを示す情報を含む、ステップと、
前記第2のノードによって、前記ペアリング要求メッセージに応答して前記第1のノードにペアリング応答メッセージを送信するステップであって、前記ペアリング応答メッセージは、前記第2のノードが、前記第1のノードと共有される前記PSKを利用してペアリングを行う能力を有するかどうかを示す情報を含む、ステップと、
前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有することを前記ペアリング要求メッセージが示し、かつ、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有することを前記ペアリング応答メッセージが示すという事実に応答して、前記第2のノードによって、前記PSKを優先的に利用して前記第1のノードを認証することを決定するステップと、
前記第2のノードによって、前記PSKに基づいて前記第1のノードを認証するステップと
を含む、方法。
【請求項2】
前記ペアリング要求メッセージは、前記第1のノードの入出力能力を示す、
請求項1に記載の方法。
【請求項3】
前記ペアリング応答メッセージは、前記第2のノードの入出力能力を示す、
請求項1又は2に記載の方法。
【請求項4】
前記ペアリング応答メッセージは、第1のフィールドを含み、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかは、前記第1のフィールドが第1のグループの値のうちの値として設定されているという事実によって示され、前記第2のノードの前記入出力能力は、前記第1のフィールドが第2のグループの値のうちの値として設定されているという事実によって示される、
請求項3に記載の方法。
【請求項5】
前記ペアリング応答メッセージは、第1のフィールドを含み、
前記第1のフィールド内の第1の部分のビットは、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示し、
前記第1のフィールド内の第2の部分のビットは、前記第2のノードの前記入出力能力を示す、
請求項3に記載の方法。
【請求項6】
前記ペアリング応答メッセージは、第1のフィールドと第2のフィールドとを含み、
前記第1のフィールドは、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示し、
前記第2のフィールドは、前記第2のノードの前記入出力能力を示す、
請求項3に記載の方法。
【請求項7】
前記認証に前記PSKを利用することの優先度は、前記第1のノード又は前記第2のノードの入出力能力に対応する認証方法のものより高い、
請求項2~6のいずれか1項に記載の方法。
【請求項8】
前記第1のノードにペアリング応答メッセージを送信する前記ステップの前に、前記方法は、
前記第2のノードによって、前記第2のノードが前記第1のノードと前記PSKを共有することを決定するステップをさらに含む、
請求項1~7のいずれか1項に記載の方法。
【請求項9】
前記ペアリング要求メッセージは、入出力能力IOCフィールドを含み、前記IOCフィールドは、前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示す、
請求項1~8のいずれか1項に記載の方法。
【請求項10】
前記IOCフィールド中のビットの1つの部分は、前記第1のノードのPSK能力値を含み、前記第1のノードの前記PSK能力値は、前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示し、
前記IOCフィールド中のビットの別の部分は、前記第1のノードの入出力能力を示す、
請求項9に記載の方法。
【請求項11】
前記ペアリング要求メッセージは、PSK能力フィールドを含み、前記PSK能力フィールドは、前記第1のノードのPSK能力値を含み、前記第1のノードの前記PSK能力値は、前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示すために利用され、
前記ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、前記IOCフィールドは、前記第1のノードの入出力能力を示すために利用される
請求項1~10のいずれか1項に記載の方法。
【請求項12】
前記第2のノードによって、前記第1のノードにペアリング応答メッセージを送信する前記ステップの前に、前記方法は、
前記第2のノードによって、前記ペアリング要求メッセージと予め設定されたペアリングモード優先度情報とに基づいて前記ペアリング応答メッセージを決定するステップであって、前記ペアリングモード優先度情報は、前記第1のノードと前記第2のノードとがPSKを共有するとき、前記第1のノードと前記第2のノードとによって共有される前記PSKを利用することによって実施されるペアリングが、複数のペアリングモード中の最高の優先度を有することを示す、ステップをさらに含む、
請求項11に記載の方法。
【請求項13】
前記第2のノードによって、前記PSKに基づいて前記第1のノードを認証する前記ステップは、
前記第2のノードによって、前記第1のノードから第1の認証パラメータを受信するステップと、
前記第2のノードによって、前記PSKに基づいて前記第1の認証パラメータを検証するステップと
を含む、
請求項1~12のいずれか1項に記載の方法。
【請求項14】
前記方法は、
前記第2のノードによって、前記PSKに基づいて第2の認証パラメータを生成するステップと、
前記第2のノードによって、前記第1のノードに前記第2の認証パラメータを送信するステップと
をさらに含む、
請求項13に記載の方法。
【請求項15】
前記ペアリング要求メッセージは、前記第1のノードの第1のPSK能力値を含み、前記第1のPSK能力値は、前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示し、前記第2のノードによって、前記PSKに基づいて前記第1のノードを認証する前記ステップの後に、前記方法は、
前記第2のノードによって、前記第1のノードから第3の認証パラメータを受信するステップであって、前記第3の認証パラメータは、前記第1のPSK能力値に基づいて生成される、ステップと、
前記第2のノードによって、前記第1のPSK能力値に基づいて第4のチェックパラメータを生成するステップと、
前記第4のチェックパラメータと前記第3の認証パラメータとに基づいて前記第2のノードによって、前記第1のPSK能力値に対する認証が成功することを決定するステップと、
をさらに含む、
請求項1~14のいずれか1項に記載の方法。
【請求項16】
前記方法は、
前記第2のノードによって、前記第2のノードの第2のPSK能力値に基づいて第4の認証パラメータを生成するステップであって、前記第2のPSK能力値は、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示す、ステップと、
前記第2のノードによって、前記第1のノードに前記第4の認証パラメータを送信するステップと
をさらに含む、
請求項1~15のいずれか1項に記載の方法。
【請求項17】
第1のノードに適用されるノードペアリング方法であって、前記方法は、
前記第1のノードによって、第2のノードにペアリング要求メッセージを送信するステップであって、前記ペアリング要求メッセージは、前記第1のノードが、前記第2のノードと共有される事前共有鍵PSKを利用してペアリングを行う能力を有するかどうかを示す情報を含む、ステップと、
前記第1のノードによって、前記第2のノードからペアリング応答メッセージを受信するステップであって、前記ペアリング応答メッセージは、前記第2のノードが、前記第1のノードと共有される前記PSKを利用してペアリングを行う能力を有するかどうかを示す情報を含む、ステップと、
前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有することを前記ペアリング要求メッセージが示し、かつ、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有することを前記ペアリング応答メッセージが示すという事実に応答して、前記第1のノードによって、前記PSKを優先的に利用して前記第2のノードを認証することを決定するステップと、
前記第1のノードによって、前記PSKに基づいて前記第2のノードを認証するステップと
を含む、方法。
【請求項18】
前記ペアリング要求メッセージは、前記第1のノードの入出力能力を示す、
請求項17に記載の方法。
【請求項19】
前記ペアリング応答メッセージは、前記第2のノードの入出力能力を示す、
請求項17又は18に記載の方法。
【請求項20】
前記ペアリング応答メッセージは、第1のフィールドを含み、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかは、前記第1のフィールドが、第1のグループの値のうちの値として設定されているという事実によって示され、前記第2のノードの前記入出力能力は、前記第1のフィールドが、第2のグループの値のうちの値として設定されているという事実によって示される、
請求項19に記載の方法。
【請求項21】
前記ペアリング応答メッセージは、第1のフィールドを含み、
前記第1のフィールド内の第1の部分のビットは、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示し、
前記第1のフィールド内の第2の部分のビットは、前記第2のノードの前記入出力能力を示す、
請求項19に記載の方法。
【請求項22】
前記ペアリング応答メッセージは、第1のフィールドと第2のフィールドとを含み、
前記第1のフィールドは、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示し、
前記第2のフィールドは、前記第2のノードの前記入出力能力を示す、
請求項19に記載の方法。
【請求項23】
前記認証に前記PSKを利用することの優先度は、前記第1のノード又は前記第2のノードの入出力能力に対応する認証方法のものより高い、
請求項18~22のいずれか1項に記載の方法。
【請求項24】
前記第1のノードによって、第2のノードにペアリング要求メッセージを送信する前記ステップの前に、前記方法は、
前記第1のノードによって、前記第2のノードが前記第1のノードと前記PSKを共有することを決定するステップをさらに含む、
請求項17~23のいずれか1項に記載の方法。
【請求項25】
前記ペアリング要求メッセージは、入出力能力IOCフィールドを含み、前記IOCフィールドは、前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示す、
請求項17~24のいずれか1項に記載の方法。
【請求項26】
前記IOCフィールド中のビットの1つの部分は、前記第1のノードの第1のPSK能力値を示し、前記第1のPSK能力値は、前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示す、
前記IOCフィールド中のビットの別の部分は、前記第1のノードの出力能力を示すために利用される、
請求項25に記載の方法。
【請求項27】
前記ペアリング要求メッセージは、PSK能力フィールドを含み、前記PSK能力フィールドは、前記第1のノードのPSK能力値を含み、前記第1のノードの前記PSK能力値は、前記第1のノードが前記PSKを利用してペアリングを行う前記能力を有するかどうかを示すために利用され、
前記ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、前記IOCフィールドは、前記第1のノードの入出力能力を示すために利用される、
請求項17~26のいずれか1項に記載の方法。
【請求項28】
前記第1のノードによって、前記PSKに基づいて前記第2のノードを認証する前記ステップは、
前記第1のノードによって、前記第2のノードから第2の認証パラメータを受信するステップと、
前記第1のノードによって、前記PSKに基づいて前記第2の認証パラメータを検証するステップと
を含む、
請求項17~27のいずれか1項に記載の方法。
【請求項29】
前記方法は、
前記第1のノードによって、前記PSKに基づいて第1の認証パラメータを生成するステップと、
前記第1のノードによって、前記第2のノードに前記第1の認証パラメータを送信するステップと
をさらに含む、
請求項28に記載の方法。
【請求項30】
前記ペアリング応答メッセージは、前記第2のノードの第2のPSK能力値を含み、前記第2のPSK能力値は、前記第2のノードが前記PSKを利用してペアリングを行う前記能力を有することを示すために利用され、前記第1のノードによって、前記PSKに基づいて前記第2のノードを認証する前記ステップの後に、前記方法は、
前記第1のノードによって、前記第2のノードから第4の認証パラメータを受信するステップであって、前記第4の認証パラメータは、前記第2のPSK能力値に基づいて生成される、ステップと、
前記第1のノードによって、前記第2のPSK能力値に基づいて第3のチェックパラメータを生成するステップと、
前記第3のチェックパラメータと前記第4の認証パラメータとに基づいて前記第1のノードによって、前記第2のPSK能力値に対する認証が成功することを決定するステップと、
をさらに含む、
請求項17~29のいずれか1項に記載の方法。
【請求項31】
前記方法は、
前記第1のノードによって、前記第1のノードの第1のPSK能力値に基づいて第3の認証パラメータを生成するステップと、
前記第1のノードによって、前記第2のノードに前記第3の認証パラメータを送信するステップと
をさらに含む、
請求項30に記載の方法。
【請求項32】
請求項1~16のいずれか1項に記載の方法における前記ステップを実行するように構成されたユニットを含む、ノードペアリング装置。
【請求項33】
請求項17~31のいずれか1項に記載の方法における前記ステップを実行するように構成されたユニットを含む、ノードペアリング装置。
【請求項34】
コンピュータ可読媒体であって、前記コンピュータ可読媒体は、コンピュータプログラムを記憶し、前記コンピュータプログラムが1つ又は複数のプロセッサ上で実行されるとき、請求項1~16のいずれか1項に記載の方法が実施される、コンピュータ可読媒体。
【請求項35】
コンピュータ可読媒体であって、前記コンピュータ可読媒体は、コンピュータプログラムを記憶し、前記コンピュータプログラムが1つ又は複数のプロセッサ上で実行されるとき、請求項17~31のいずれか1項に記載の方法が実施される、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、通信技術及びコネクテッドビークル技術の分野に関係し、特に、Bluetoothノードペアリング方法及び関連する装置、例えば、コックピットドメイン中でのBluetooth通信に関係する。
【背景技術】
【0002】
情報化の迅速な開発とともに、通信技術は、人々の生活において広く利用されるようになった。便利な通信を享受しながら、人はまた、セキュリティの脆弱性及びプライバシの漏洩によって脅かされている。インテリジェントビークルが一例として利用される。ビークル通信の広い適用例により、通信は、ワイヤレス通信技術を利用することによってビークルと別のデバイスとの間で及びビークル内の構成要素の間で実施されうる。概して、2つのノードがワイヤレス通信を実施する前に、関連付け関係が2つのノードの間で確立される必要がある。関連付け関係を確立するこの処理は、ノードペアリング処理と呼ばれることもある。
【0003】
2つのBluetoothノードのペアリング処理において、数値比較(Numeric comparison)、ジャストワーク(Just work)、パスキー入力(Passkey entry)、及び帯域外(Out of band)の4つのモードがある。ペアリングモードは、ノードの入出力能力に関連付けられる。入出力不可(NoInputNoOutput)ノード、表示のみ(DisplayOnly)ノード、又は表示可否(DisplayYesNo)ノードの場合、ほとんどのケースで、ジャストワークモード又は数値比較モードのみがペアリングのために利用されることができる。そのようなペアリングモードでは、ノードのセキュリティは、容易に脅かされる。例えば、モバイルフォンがBluetoothヘッドセットとペアリングされるとき、ヘッドセットは、パスキーを入力すること又は画面を表示することができないので、ヘッドセットは、ジャストワークモードのみで接続されることができ、即ち、ヘッドセットは、モバイルフォン上でBluetoothヘッドセットの名前を直接タップすることによって接続される。そのようなペアリングモードでは、攻撃者は、ジャストワーク(just work)モードで接続されたデバイスを利用することによってノードを容易に攻撃しうるか、又は攻撃者は、ジャストワークモードでのみ接続されることが可能なノードを攻撃することがあり、これは、ユーザのプライバシ及びビークルのセキュリティを大幅に脅かす。特に、車載通信システムにとって、この状況は、ビークルへの信用できない接続を生じる可能性があり、ビークルと信用できない攻撃者との間での通信をもたらし、さらに、運転者及び乗客の安全を危険にさらす。
【0004】
従って、どのようにBluetoothペアリング処理のセキュリティを改善し、ノードが信用できないデバイスに接続するのを防げるのかが、当業者によって研究されている問題である。
【発明の概要】
【0005】
本出願の実施形態は、ノードペアリング処理のセキュリティを改善し、ノードが信用できないデバイスに接続するのを防げるためのBluetoothノードペアリング方法及び関連する装置を開示する。
【0006】
第1の態様によれば、本出願の実施形態は、以下を含むBluetoothノードペアリング方法を開示する。
【0007】
第2のノードは、第1のノードからペアリング要求メッセージを受信する。ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0008】
第2のノードは、第1のノードがPSKペアリング能力を有することを示すために利用される情報をペアリング要求メッセージが含むことに応答して第1のノードにペアリング応答メッセージを送信する。ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。
【0009】
第2のノードは、第1のPSKに基づいて第1のノードを認証する。
【0010】
PSKは、第1のノードと第2のノードとによって共有される秘密値である。本出願のこの実施形態では、第2のノードと共有されるPSKは、第1のノード上に予め定義されるか又は構成される。従って、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示す情報を含みうる。相応して、第1のノードと共有される(説明を容易にするために第1のPSKと呼ばれる)PSKはまた、第2のノード上に予め定義されるか又は事前構成される。第2のノードは、第1のPSKに基づいて第1のノードを認証して、第1のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、第2のノードと信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0011】
第1の態様の可能な実装では、第1のノードは、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードである。
【0012】
既存の入出力不可(NoInputNoOutput)Bluetoothノードは、ジャストワーク(just work)モードにある第2のノードとしかペアリングされることができない。表示のみ(DisplayOnly)Bluetoothノード又は表示可否(DisplayYesNo)Bluetoothノードは、入出力能力を有しない。従って、第2のノードが入出力能力を有しない場合、第2のノードはまた、ジャストワーク(just work)モードで接続される。ジャストワークモードが低いセキュリティを有するので、そのようなペアリングでは、攻撃者は、第1のノードを利用することによって第2のノードを容易に攻撃することができる。従って、上記の3つのタイプのノードの場合、ペアリングは、ノードペアリングのセキュリティを改善するためにPSKを利用することによって実施されうる。もちろん、入出力能力を有するノードの場合、ペアリングは、パスキーを入力することによって実施されうるか、又はペアリングは、PSKを利用することによって実施されうる。
【0013】
第1の態様の別の可能な実装では、本方法は、以下をさらに含む。
【0014】
第2のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定する。
【0015】
第1の態様のさらに別の可能な実装では、第2のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定することは、以下を含む。
【0016】
第2のノードは、第1のノードの第1のデバイス識別子を取得する。
【0017】
第2のノードは、第1のデバイス識別子に対応する第1のPSKが存在することを決定する。
【0018】
第1の態様のさらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0019】
上記は、ペアリング要求メッセージのデータ形態について説明した。IOCフィールドの値は、第1のノードがPSKペアリング能力を有するかどうか又は第2のノードと共有される第1のPSKが第1のノード上に存在するのかどうかに関する情報を表しうることを理解することができる。例えば、IOCフィールドが0x05であるとき、第1のノードがPSKペアリング能力を有することを示しうる。
【0020】
第1の態様のさらに別の可能な実装では、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0021】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0022】
上記は、ペアリング要求メッセージの別のデータ形態について説明した。IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含むことを理解することができる。例えば、IOCフィールドは、8ビットを含みうる。2ビットは、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。例えば、「01」は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、「00」は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0023】
さらに、IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールド中の6ビットの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0024】
第1の態様のさらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0025】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0026】
上記は、ペアリング要求メッセージのさらに別のデータ形態について説明した。PSK能力フィールドが第1のノードのPSK能力値を示すために利用されることを理解することができる。例えば、0x01は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、0x00は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0027】
さらに、IOCフィールドは、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールドの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry、PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0028】
第1の態様のさらに別の可能な実装では、第2のノードが第1のノードにペアリング応答メッセージを送信する前に、本方法は、以下をさらに含む。
【0029】
第2のノードは、ペアリング要求メッセージと予め設定されたペアリングモード優先度情報とに基づいてペアリング応答メッセージを決定する。ペアリングモード優先度情報は、第1のノードと第2のノードとがPSKを共有するとき、第1のノードと第2のノードとによって共有されるPSKを利用することによって実施されるペアリングが、複数のペアリングモード中の最高の優先度を有することを示す。
【0030】
第1の態様のさらに別の可能な実装では、第2のノードは、第1のPSKに基づいて第1のノードを認証することは、以下を含む。
【0031】
第2のノードは、第1のノードから第1の認証パラメータを受信する。
【0032】
第2のノードは、第1のPSKに基づいて第1の認証パラメータを検証する。
【0033】
上記の実装は、第2のノードが第1のノードを認証する方式について説明し、第1の認証パラメータは、第1のPSKに基づいて第1のノードによって生成される。第2のノードも第1のPSKを有するので、第2のノードは、第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致するのかどうかを決定するために対応する方式で第1のPSKに基づいて第1の認証パラメータを検証しうる。第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致する場合、第1のノードの識別が信頼できることを示す。これは、第2のノードと信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0034】
第1の態様のさらに別の可能な実装では、本方法は、以下をさらに含む。
【0035】
第2のノードは、第1のPSKに基づいて第2の認証パラメータを生成する。
【0036】
第2のノードは、第1のノードに第2の認証パラメータを送信する。
【0037】
第2のノードはまた、第1のPSKに基づいて第2の認証パラメータを生成してよく、第2の認証パラメータは、第2のノードを認証するために第1のノードによって利用されることを理解することができる。
【0038】
第1の態様のさらに別の可能な実装では、第2のノードは、第1のPSKに基づいて第2の認証パラメータを生成することは、以下を含む。
【0039】
第2のノードは、第1のノードによって送られた第1のフレッシュネスパラメータを受信する。
【0040】
第2のノードは、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2の認証パラメータを生成する。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0041】
第1の態様のさらに別の可能な実装では、第2のノードが、第1のノードから第1の認証パラメータを受信する前に、本方法は、以下をさらに含む。
【0042】
第2のノードは、第1のノードに第2のフレッシュネスパラメータを送信する。
【0043】
第2のノードは、第1のPSKに基づいて第1の認証パラメータを検証することは、以下をさらに含む。
【0044】
第2のノードは、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2のチェックパラメータを生成する。
【0045】
第2のノードは、第2のチェックパラメータと第1の認証パラメータとに基づいて、第1の認証パラメータが正常に検証されたと決定する。
【0046】
第1の態様のさらに別の可能な実装では、第2のノードが第1のPSKに基づいて第1のノードを認証した後に、本方法は、以下をさらに含む。
【0047】
第2のノードは、第1のノードから第3の認証パラメータを受信する。
【0048】
第2のノードは、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成する。
【0049】
第2のノードは、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定する。
【0050】
本方法は、以下をさらに含む。
【0051】
第2のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成する。
【0052】
第2のノードは、第1のノードに第4の認証パラメータを送信する。
【0053】
第1のペアリング要求メッセージが第1のノードのPSK能力値を含む場合、第2のノードは、第1のノードのPSK能力値の改ざんを回避するために第1のノードのPSK能力値の正当性を認証しうることを理解することができる。
【0054】
第2の態様によれば、本出願の実施形態は、以下を含むBluetoothノードペアリング方法を開示する。
【0055】
第1のノードは、第2のノードにペアリング要求メッセージを送信する。ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有することを示すために利用される情報を含む。
【0056】
第1のノードは、第2のノードによってフィードバックされたペアリング応答メッセージを受信する。ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。
【0057】
第1のノードは、第1のPSKに基づいて第2のノードを認証する。
【0058】
PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成されることを理解することができる。従って、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示しうる。相応して、第1のノードと共有される(説明を容易にするために第1のPSKと呼ばれる)PSKはまた、第2のノード上に予め定義されるか又は事前構成される。第1のノードは、第1のPSKに基づいて第2のノードを認証して、第2のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、第1のノードと信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0059】
第2の態様の可能な実装では、第1のノードは、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードである。
【0060】
既存の入出力不可(NoInputNoOutput)Bluetoothノードは、ジャストワーク(just work)モードにある第2のノードとしかペアリングされることができない。表示のみ(DisplayOnly)Bluetoothノード又は表示可否(DisplayYesNo)Bluetoothノードは、入出力能力を有しない。従って、第2のノードが入出力能力を有しない場合、第2のノードはまた、ジャストワーク(just work)モードで接続される。ジャストワークモードが低いセキュリティを有するので、そのようなペアリングでは、攻撃者は、第1のノードを利用することによって第2のノードを容易に攻撃することができる。従って、上記の3つのタイプのノードの場合、ペアリングは、ノードペアリングのセキュリティを改善するためにPSKを利用することによって実施されうる。もちろん、入出力能力を有するノードの場合、ペアリングは、パスキーを入力することによって実施されうるか、又はペアリングは、PSKを利用することによって実施されうる。
【0061】
第2の態様の別の可能な実装では、第1のノードが第2のノードにペアリング要求メッセージを送信する前に、本方法は、以下をさらに含む。
【0062】
第1のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定する。
【0063】
第2の態様のさらに別の可能な実装では、第1のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定することは、以下を含む。
【0064】
第1のノードは、第2のノードの第2のデバイス識別子を取得する。
【0065】
第1のノードは、第2のデバイス識別子に対応する第1のPSKが存在することを決定する。
【0066】
第2の態様のさらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0067】
上記は、ペアリング要求メッセージのデータ形態について説明した。IOCフィールドの値は、第1のノードがPSKペアリング能力を有するかどうか又は第2のノードと共有される第1のPSKが第1のノード上に存在するのかどうかに関する情報を表しうることを理解することができる。例えば、IOCフィールドが0x05であるとき、第1のノードがPSKペアリング能力を有することを示しうる。
【0068】
第2の態様のさらに別の可能な実装では、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0069】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0070】
上記は、ペアリング要求メッセージの別のデータ形態について説明した。IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含むことを理解することができる。例えば、IOCフィールドは、8ビットを含みうる。2ビットは、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。例えば、「01」は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、「00」は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0071】
さらに、IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールド中の6ビットの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0072】
第2の態様のさらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0073】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0074】
上記は、ペアリング要求メッセージのさらに別のデータ形態について説明した。PSK能力フィールドが第1のノードのPSK能力値を示すために利用されることを理解することができる。例えば、0x01は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、0x00は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0075】
さらに、IOCフィールドは、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールドの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0076】
第2の態様のさらに別の可能な実装では、第1のノードは、第1のPSKに基づいて第2のノードを認証することは、以下を含む。
【0077】
第1のノードは、第2のノードから第2の認証パラメータを受信する。
【0078】
第1のノードは、第1のPSKに基づいて第2の認証パラメータを検証する。
【0079】
上記の実装は、第1のノードが第2のノードを認証する方式について説明し、第2の認証パラメータは、第1のPSKに基づいて第2のノードによって生成される。第1のノードがまた第1のPSKを有するので、第1のノードは、第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致するのかどうかを決定するために対応する方式で第1のPSKに基づいて第2の認証パラメータを検証しうる。第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致する場合、第2のノードの識別が信頼できることを示す。これは、第1のノードと信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0080】
第2の態様のさらに別の可能な実装では、本方法は、以下をさらに含む。
【0081】
第1のノードは、第1のPSKに基づいて第1の認証パラメータを生成する。
【0082】
第1のノードは、第2のノードに第1の認証パラメータを送信する。
【0083】
第1のノードはまた、第1のPSKに基づいて第1の認証パラメータを生成してよく、第1の認証パラメータは、第1のノードを認証するために第2のノードによって利用されることを理解することができる。
【0084】
第2の態様のさらに別の可能な実装では、第1のノードは、第1のPSKに基づいて第1の認証パラメータを生成することは、以下を含む。
【0085】
第1のノードは、第2のノードによって送られた第2のフレッシュネスパラメータを受信する。
【0086】
第1のノードは、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1の認証パラメータを生成する。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0087】
第2の態様のさらに別の可能な実装では、第1のノードが、第2のノードから第2の認証パラメータを受信する前に、本方法は、以下をさらに含む。
【0088】
第1のノードは、第2のノードに第1のフレッシュネスパラメータを送信する。
【0089】
第1のノードは、第1のPSKに基づいて第2の認証パラメータを検証することは、以下をさらに含む。
【0090】
第1のノードは、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1のチェックパラメータを生成する。
【0091】
第1のノードは、第1のチェックパラメータと第2の認証パラメータとに基づいて、第2の認証パラメータが正常に検証されたと決定する。
【0092】
第2の態様のさらに別の可能な実装では、第2のノードが第1のPSKに基づいて第1のノードを認証した後に、本方法は、以下をさらに含む。
【0093】
第2のノードは、第1のノードから第3の認証パラメータを受信する。
【0094】
第2のノードは、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成する。
【0095】
第2のノードは、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定する。
【0096】
本方法は、以下をさらに含む。
【0097】
第2のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成する。
【0098】
第2のノードは、第1のノードに第4の認証パラメータを送信する。
【0099】
第1のノードは、第2のノードのPSK能力値の改ざんを回避するために第2のノードのPSK能力値の正当性を認証しうることを理解することができる。
【0100】
第3の態様によれば、本出願の実施形態は、
第1のノードからペアリング要求メッセージを受信するように構成された受信ユニットであって、ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有するかどうかを示すために利用される情報を含む、受信ユニットと、
第1のノードがPSKペアリング能力を有することを示すために利用される情報をペアリング要求メッセージが含むことに応答して第1のノードにペアリング応答メッセージを送信するように構成された送信ユニットであって、ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される、送信ユニットと、
第1のPSKに基づいて第1のノードを認証するように構成された処理ユニットと
を含むBluetoothペアリング装置を開示する。
【0101】
PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成されることを理解することができる。従って、本装置は、ペアリング要求メッセージ中に、第1のノードがPSKペアリング能力を有することを示す情報を含みうる。相応して、第1のノードと共有される第1のPSKはまた、第2のノード上に予め定義されるか又は事前構成される。本装置は、第1のPSKに基づいて第1のノードを認証して、第1のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、本装置と信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0102】
第3の態様の可能な実装では、処理ユニットは、
第2のノードが第1のノードと第1のPSKを共有することを決定する
ようにさらに構成される。
【0103】
第3の態様の別の可能な実装では、処理ユニットは、特に、
第1のノードの第1のデバイス識別子を取得し、
第1のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0104】
第3の態様のさらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0105】
第3の態様のさらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0106】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0107】
第3の態様のさらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0108】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0109】
第3の態様のさらに別の可能な実装では、処理ユニットは、ペアリング要求メッセージと予め設定されたペアリングモード優先度情報とに基づいてペアリング応答メッセージを決定するようにさらに構成される。ペアリングモード優先度情報は、第1のノードと第2のノードとがPSKを共有するとき、第1のノードと第2のノードとによって共有されるPSKを利用することによって実施されるペアリングが、複数のペアリングモード中の最高の優先度を有することを示す。
【0110】
第3の態様のさらに別の可能な実装では、受信ユニットは、第1のノードから第1の認証パラメータを受信するようにさらに構成される。
【0111】
処理ユニットは、第1のPSKに基づいて第1の認証パラメータを検証するようにさらに構成される。
【0112】
第3の態様のさらに別の可能な実装では、処理ユニットは、第1のPSKに基づいて第2の認証パラメータを生成するようにさらに構成される。
【0113】
送信ユニットは、第1のノードに第2の認証パラメータを送信するようにさらに構成される。
【0114】
第3の態様のさらに別の可能な実装では、受信ユニットは、第1のノードから第3の認証パラメータを受信するようにさらに構成される。
【0115】
処理ユニットは、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成するようにさらに構成される。
【0116】
処理ユニットは、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0117】
処理ユニットは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成するようにさらに構成される。
【0118】
送信ユニットは、第1のノードに第4の認証パラメータを送信するようにさらに構成される。
【0119】
第4の態様によれば、本出願の実施形態は、
第2のノードにペアリング要求メッセージを送信するように構成された送信ユニットであって、ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有することを示すために利用される情報を含む、送信ユニットと、
第2のノードによってフィードバックされたペアリング応答メッセージを受信するように構成された受信ユニットであって、ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される、受信ユニットと、
第1のPSKに基づいて第2のノードを認証するように構成された処理ユニットと
を含むBluetoothペアリング装置を開示する。
【0120】
PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成されることを理解することができる。従って、第2のノードは、ペアリング要求メッセージ中に、第1のノードがPSKペアリング能力を有することを示しうる。相応して、第1のノードと共有される(説明を容易にするために第1のPSKと呼ばれる)PSKはまた、第2のノード上に予め定義されるか又は事前構成される。本装置は、第1のPSKに基づいて第2のノードを認証して、第2のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、本装置と信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0121】
第4の態様の可能な実装では、処理ユニットは、第2のノードが第1のノードと第1のPSKを共有することを決定するようにさらに構成される。
【0122】
第4の態様の別の可能な実装では、処理ユニットは、特に、
第2のノードの第2のデバイス識別子を取得し、
第2のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0123】
第4の態様のさらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0124】
第4の態様のさらに別の可能な実装では、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0125】
IOCフィールド中のビットの別の部分は、第1のノードの出力能力を示すために利用される。
【0126】
第4の態様のさらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0127】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0128】
第4の態様のさらに別の可能な実装では、受信ユニットは、第2のノードから第2の認証パラメータを受信するようにさらに構成される。
【0129】
処理ユニットは、第1のPSKに基づいて第2の認証パラメータを検証するようにさらに構成される。
【0130】
第4の態様のさらに別の可能な実装では、処理ユニットは、第1のPSKに基づいて第1の認証パラメータを生成するようにさらに構成される。
【0131】
送信ユニットは、第2のノードに第1の認証パラメータを送信するようにさらに構成される。
【0132】
第4の態様のさらに別の可能な実装では、ペアリング応答メッセージは、第2のノードのPSK能力値を含み、第2のノードのPSK能力値は、第2のノードがPSKペアリング能力を有することを示すために利用される。
【0133】
受信ユニットは、第2のノードから第4の認証パラメータを受信するようにさらに構成される。
【0134】
処理ユニットは、第2のノードのPSK能力値に基づいて第3のチェックパラメータを生成するようにさらに構成される。
【0135】
処理ユニットは、第3のチェックパラメータと第4の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0136】
処理ユニットは、第1のノードのPSK能力値に基づいて第3の認証パラメータを生成するようにさらに構成される。
【0137】
送信ユニットは、第2のノードに第3の認証パラメータを送信するようにさらに構成される。
【0138】
第5の態様によれば、本出願の実施形態は、以下を含むBluetoothノードペアリング方法を開示する。
【0139】
第2のノードは、第1のノードからペアリング要求メッセージを受信する。ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含む。第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む。
【0140】
第2のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定する。第2のノードのペアリング能力は、第2のノードが第2のノードのPSKペアリング能力と入出力能力とを有するかどうかを含む。ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む。
【0141】
第2のノードは、第1のノードにペアリング応答メッセージを送信する。ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含む。
【0142】
第2のノードは、ペアリングモードに基づいて第1のノードとのペアリングを実施する。
【0143】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、第2のノードは、要件に基づいて及び第1のノードが第1のノードのPSKペアリング能力と入出力能力とを有するかどうかに基づいて対応するペアリングモードを決定しうることを理解することができる。例えば、第2のノードは、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、第2のノードの要件を満たすペアリングモードを決定しうる。
【0144】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0145】
第5の態様の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0146】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0147】
上記は、ペアリング要求メッセージのデータ形態について説明した。IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含むことを理解することができる。例えば、IOCフィールドは、8ビットを含みうる。2ビットは、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。例えば、「01」は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、「00」は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0148】
さらに、IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールド中の6ビットの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0149】
第5の態様の別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0150】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0151】
上記は、ペアリング要求メッセージの別のデータ形態について説明した。PSK能力フィールドが第1のノードのPSK能力値を示すために利用されることを理解することができる。例えば、0x01は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、0x00は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0152】
さらに、IOCフィールドは、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールドの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0153】
第5の態様のさらに別の可能な実装では、第2のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、以下を含む。
【0154】
第2のノードは、第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定する。
【0155】
第2のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定する。
【0156】
第2のノードは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する。
【0157】
第5の態様のさらに別の可能な実装では、第2のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定することは、以下を含む。
【0158】
第2のノードは、第1のノードの第1のデバイス識別子を取得する。
【0159】
第2のノードは、第1のデバイス識別子に対応する第1のPSKが存在することを決定する。
【0160】
第5の態様のさらに別の可能な実装では、第2のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、以下を含む。
【0161】
第2のノードは、第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定する。
【0162】
第2のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定する。
【0163】
第2のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定する。第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである。
【0164】
第2のノードは、第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する。
【0165】
第5の態様のさらに別の可能な実装では、第2のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、以下を含む。
【0166】
第2のノードは、第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定する。
【0167】
第2のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定する。
【0168】
第2のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定する。第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである。
【0169】
第2のノードは、第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する。
【0170】
第5の態様のさらに別の可能な実装では、第2のノードは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することは、以下を含む。
【0171】
第2のノードは、第1のノードから第1の認証パラメータを受信する。
【0172】
第2のノードは、第1のPSKに基づいて第1の認証パラメータを検証する。
【0173】
第5の態様のさらに別の可能な実装では、本方法は、以下をさらに含む。
【0174】
第2のノードは、第1のPSKに基づいて第2の認証パラメータを生成する。
【0175】
第2のノードは、第1のノードに第2の認証パラメータを送信する。
【0176】
第5の態様のさらに別の可能な実装では、第2のノードは、第1のPSKに基づいて第2の認証パラメータを生成することは、以下を含む。
【0177】
第2のノードは、第1のノードによって送られた第1のフレッシュネスパラメータを受信する。
【0178】
第2のノードは、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2の認証パラメータを生成する。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0179】
第5の態様のさらに別の可能な実装では、第2のノードが、第1のノードから第1の認証パラメータを受信する前に、本方法は、以下をさらに含む。
【0180】
第2のノードは、第1のノードに第2のフレッシュネスパラメータを送信する。
【0181】
第2のノードは、第1のPSKに基づいて第1の認証パラメータを検証することは、以下をさらに含む。
【0182】
第2のノードは、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2のチェックパラメータを生成する。
【0183】
第2のノードは、第2のチェックパラメータと第1の認証パラメータとに基づいて、第1の認証パラメータが正常に検証されたと決定する。
【0184】
第5の態様のさらに別の可能な実装では、第2のノードが第1のPSKに基づいて第1のノードを認証した後に、本方法は、以下をさらに含む。
【0185】
第2のノードは、第1のノードから第3の認証パラメータを受信する。
【0186】
第2のノードは、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成する。
【0187】
第2のノードは、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定する。
【0188】
本方法は、以下をさらに含む。
【0189】
第2のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成する。
【0190】
第2のノードは、第1のノードに第4の認証パラメータを送信する。
【0191】
第6の態様によれば、本出願の実施形態は、以下を含むBluetoothノードペアリング方法を開示する。
【0192】
第1のノードは、第2のノードにペアリング要求メッセージを送信する。ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含む。第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む。
【0193】
第1のノードは、第2のノードからペアリング応答メッセージを受信する。ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含む。第2のノードのペアリング能力は、第2のノードが第2のノードのPSKペアリング能力と入出力能力とを有するかどうかを含む。
【0194】
第1のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定する。ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む。
【0195】
第1のノードは、ペアリングモードに基づいて第2のノードとのペアリングを実施する。
【0196】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、ペアリング応答メッセージは、第2のノードのペアリング能力に関する情報を含むことを理解することができる。第1のノードは、要件に基づいて、及び第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいて対応するペアリングモードを決定しうる。例えば、第1のノードは、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、要件を満たすペアリングモードを決定しうる。
【0197】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0198】
第6の態様の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0199】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0200】
上記は、ペアリング要求メッセージのデータ形態について説明した。IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含むことを理解することができる。例えば、IOCフィールドは、8ビットを含みうる。2ビットは、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。例えば、「01」は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、「00」は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0201】
さらに、IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールド中の6ビットの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0202】
第6の態様の別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0203】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0204】
上記は、ペアリング要求メッセージのさらに別のデータ形態について説明した。PSK能力フィールドが第1のノードのPSK能力値を示すために利用されることを理解することができる。例えば、0x01は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、0x00は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0205】
さらに、IOCフィールドは、第1のノードの入出力能力を示すために利用され、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールドの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0206】
第6の態様のさらに別の可能な実装では、第1のノードが第2のノードにペアリング要求メッセージを送信する前に、本方法は、以下を含む。
【0207】
第1のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定する。
【0208】
第1のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、以下を含む。
【0209】
第1のノードは、第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定する。
【0210】
第1のノードは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する。
【0211】
第6の態様のさらに別の可能な実装では、第1のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定することは、以下を含む。
【0212】
第1のノードは、第2のノードの第2のデバイス識別子を取得する。
【0213】
第1のノードは、第2のデバイス識別子に対応する第1のPSKが存在することを決定する。
【0214】
第6の態様のさらに別の可能な実装では、第2のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、以下を含む。
【0215】
第1のノードは、第2のノードのペアリング能力に関する情報に基づいて、第2のノードがPSKペアリング能力を有しないことを決定する。
【0216】
第1のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいてペアリングモードを決定する。ペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである。
【0217】
第6の態様のさらに別の可能な実装では、第2のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、以下を含む。
【0218】
第1のノードは、第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定する。
【0219】
第1のノードは、第2のノードが第1のノードと第1のPSKを共有することを決定する。
【0220】
第1のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定する。第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである。
【0221】
第1のノードは、第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する。
【0222】
第6の態様のさらに別の可能な実装では、第1のノードは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することは、以下を含む。
【0223】
第1のノードは、第2のノードから第2の認証パラメータを受信する。
【0224】
第1のノードは、第1のPSKに基づいて第2の認証パラメータを検証する。
【0225】
第6の態様のさらに別の可能な実装では、本方法は、以下をさらに含む。
【0226】
第1のノードは、第1のPSKに基づいて第1の認証パラメータを生成する。
【0227】
第1のノードは、第2のノードに第1の認証パラメータを送信する。
【0228】
第6の態様のさらに別の可能な実装では、第1のノードは、第1のPSKに基づいて第1の認証パラメータを生成することは、以下を含む。
【0229】
第1のノードは、第2のノードによって送られた第2のフレッシュネスパラメータを受信する。
【0230】
第1のノードは、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1の認証パラメータを生成する。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0231】
第6の態様のさらに別の可能な実装では、第1のノードが、第2のノードから第2の認証パラメータを受信する前に、本方法は、以下をさらに含む。
【0232】
第1のノードは、第2のノードに第1のフレッシュネスパラメータを送信する。
【0233】
第1のノードは、第1のPSKに基づいて第2の認証パラメータを検証することは、以下をさらに含む。
【0234】
第1のノードは、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1のチェックパラメータを生成する。
【0235】
第1のノードは、第1のチェックパラメータと第2の認証パラメータとに基づいて、第2の認証パラメータが正常に検証されたと決定する。
【0236】
第6の態様のさらに別の可能な実装では、第2のノードが第1のPSKに基づいて第1のノードを認証した後に、本方法は、以下をさらに含む。
【0237】
第2のノードは、第1のノードから第3の認証パラメータを受信する。
【0238】
第2のノードは、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成する。
【0239】
第2のノードは、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定する。
【0240】
本方法は、以下をさらに含む。
【0241】
第2のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成する。
【0242】
第2のノードは、第1のノードに第4の認証パラメータを送信する。
【0243】
第7の態様によれば、本出願の実施形態は、
第1のノードからペアリング要求メッセージを受信するように構成された受信ユニットであって、ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含み、第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む、受信ユニットと、
第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定するように構成された処理ユニットであって、第2のノードのペアリング能力は、第2のノードが第2のノードのPSKペアリング能力と入出力能力とを有するかどうかを含み、ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む、処理ユニットと、
第1のノードにペアリング応答メッセージを送信するように構成された送信ユニットであって、ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含む、送信ユニットと
を含むBluetoothペアリング装置を開示する。
【0244】
処理ユニットは、ペアリングモードに基づいて第1のノードとのペアリングを実施するようにさらに構成される。
【0245】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、本装置は、要件に基づいて及び第1のノードが第1のノードのPSKペアリング能力と入出力能力とを有するかどうかに基づいて対応するペアリングモードを決定しうることを理解することができる。例えば、本装置は、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、第2のノードの要件を満たすペアリングモードを決定しうる。
【0246】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0247】
第7の態様の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0248】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0249】
第7の態様の別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0250】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0251】
第7の態様のさらに別の可能な実装では、処理ユニットは、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する
ように構成される。
【0252】
第7の態様のさらに別の可能な実装では、処理ユニットは、特に、
第1のノードの第1のデバイス識別子を取得し、
第1のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0253】
第7の態様のさらに別の可能な実装では、処理ユニットは、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0254】
第7の態様のさらに別の可能な実装では、処理ユニットは、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0255】
第7の態様のさらに別の可能な実装では、受信ユニットは、第1のノードから第1の認証パラメータを受信するようにさらに構成される。
【0256】
処理ユニットは、第1のPSKに基づいて第1の認証パラメータを検証するようにさらに構成される。
【0257】
第7の態様のさらに別の可能な実装では、処理ユニットは、第1のPSKに基づいて第2の認証パラメータを生成するようにさらに構成される。
【0258】
送信ユニットは、第1のノードに第2の認証パラメータを送信するようにさらに構成される。
【0259】
第7の態様のさらに別の可能な実装では、受信ユニットは、第1のノードによって送られた第1のフレッシュネスパラメータを受信するようにさらに構成される。
【0260】
処理ユニットは、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2の認証パラメータを生成するようにさらに構成される。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0261】
第7の態様のさらに別の可能な実装では、送信ユニットは、第1のノードに第2のフレッシュネスパラメータを送信するようにさらに構成される。
【0262】
処理ユニットは、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2のチェックパラメータを生成するようにさらに構成される。
【0263】
処理ユニットは、第2のノードは、第2のチェックパラメータと第1の認証パラメータとに基づいて、第1の認証パラメータが正常に検証されたと決定するようにさらに構成される。
【0264】
第7の態様のさらに別の可能な実装では、受信ユニットは、第1のノードから第3の認証パラメータを受信するようにさらに構成される。
【0265】
処理ユニットは、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成するようにさらに構成される。
【0266】
処理ユニットは、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0267】
処理ユニットは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成するようにさらに構成される。
【0268】
送信ユニットは、第1のノードに第4の認証パラメータを送信するようにさらに構成される。
【0269】
第8の態様によれば、本出願の実施形態は、
第2のノードにペアリング要求メッセージを送信するように構成された送信ユニットであって、ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含み、第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む、送信ユニットと、
第2のノードからペアリング応答メッセージを受信するように構成された受信ユニットであって、ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含み、第2のノードのペアリング能力は、第2のノードが第2のノードのPSKペアリング能力と入出力能力とを有するかどうかを含む、受信ユニットと、
第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定するように構成された処理ユニットであって、ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む、処理ユニットと
を含む、Bluetoothノードペアリング装置を開示する。
【0270】
処理ユニットは、ペアリングモードに基づいて第2のノードとのペアリングを実施するようにさらに構成される。
【0271】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、ペアリング応答メッセージは、第2のノードのペアリング能力に関する情報を含むことを理解することができる。本装置は、要件に基づいて、及び第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいて対応するペアリングモードを決定しうる。例えば、本装置は、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、要件を満たすペアリングモードを決定しうる。
【0272】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0273】
第8の態様の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0274】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0275】
第8の態様の別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0276】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0277】
第8の態様のさらに別の可能な実装では、処理ユニットは、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する
ようにさらに構成される。
【0278】
第8の態様のさらに別の可能な実装では、処理ユニットは、第2のノードの第2のデバイス識別子を取得し、
第2のデバイス識別子に対応する第1のPSKが存在することを決定する
ようにさらに構成される。
【0279】
第8の態様のさらに別の可能な実装では、処理ユニットは、特に、
第2のノードのペアリング能力に関する情報に基づいて、第2のノードがPSKペアリング能力を有しないことを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいてペアリングモードを決定することであって、ペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行う
ように構成される。
【0280】
第8の態様のさらに別の可能な実装では、処理ユニットは、特に、
第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0281】
第8の態様のさらに別の可能な実装では、受信ユニットは、第2のノードから第2の認証パラメータを受信するようにさらに構成される。
【0282】
処理ユニットは、第1のPSKに基づいて第2の認証パラメータを検証するようにさらに構成される。
【0283】
第8の態様のさらに別の可能な実装では、処理ユニットは、第1のPSKに基づいて第1の認証パラメータを生成するようにさらに構成される。
【0284】
送信ユニットは、第2のノードに第1の認証パラメータを送信するようにさらに構成される。
【0285】
第8の態様のさらに別の可能な実装では、受信ユニットは、第2のノードによって送られた第2のフレッシュネスパラメータを受信するようにさらに構成される。
【0286】
処理ユニットは、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1の認証パラメータを生成するようにさらに構成される。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0287】
第8の態様のさらに別の可能な実装では、送信ユニットは、第2のノードに第1のフレッシュネスパラメータを送信するようにさらに構成される。
【0288】
処理ユニットは、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1のチェックパラメータを生成するようにさらに構成される。
【0289】
処理ユニットは、第2のノードは、第1のチェックパラメータと第2の認証パラメータとに基づいて、第2の認証パラメータが正常に検証されたと決定するようにさらに構成される。
【0290】
第8の態様のさらに別の可能な実装では、受信ユニットは、第1のノードから第3の認証パラメータを受信するようにさらに構成される。
【0291】
処理ユニットは、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成するようにさらに構成される。
【0292】
処理ユニットは、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0293】
処理ユニットは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成するようにさらに構成される。
【0294】
送信ユニットは、第1のノードに第4の認証パラメータを送信するようにさらに構成される。
【0295】
第9の態様によれば、本出願の実施形態は、Bluetoothペアリング装置をさらに提供する。Bluetoothペアリング装置は、少なくともの1つプロセッサと通信インターフェースとを含む。通信インターフェースは、データを送信及び/又は受信するように構成される。少なくとも1つのプロセッサは、少なくとも1つのメモリ中に記憶されたコンピュータプログラムを呼び出すように構成され、従って、本装置は、第1の態様若しくは第1の態様の可能な実装のうちのいずれか1つ、第2の態様若しくは第2の態様の可能な実装のうちのいずれか1つ、第5の態様若しくは第5の態様の可能な実装のうちのいずれか1つ、又は第6の態様若しくは第6の態様の可能な実装のうちのいずれか1つにおいて説明された方法を実装する。
【0296】
第10の態様によれば、本出願の実施形態は、通信システムをさらに提供する。通信システムは、第1のノードと第2のノードとを含む。第1のノードは、第3の態様若しくは第3の態様の可能な実装のうちのいずれか1つ又は第7の態様若しくは第7の態様の可能な実装のうちのいずれか1つにおいて説明された装置である。第2のノードは、第4の態様若しくは第4の態様の可能な実装のうちのいずれか1つ又は第8の態様若しくは第8の態様の可能な実装のうちのいずれか1つにおいて説明された装置である。
【0297】
第11の態様によれば、本出願のある実施形態はコンピュータ可読記憶媒体を開示する。コンピュータ可読記憶媒体は、コンピュータプログラムを記憶し、コンピュータプログラムが1つ又は複数のプロセッサ上で実行されるとき、第1の態様若しくは第1の態様の可能な実装のうちのいずれか1つ、第2の態様若しくは第2の態様の可能な実装のうちのいずれか1つ、第5の態様若しくは第5の態様の可能な実装のうちのいずれか1つ、又は第6の態様若しくは第6の態様の可能な実装のうちのいずれか1つにおいて説明された方法が実施される。
【0298】
第12の態様によれば、本出願の実施形態は、コンピュータプログラム製品を開示する。コンピュータプログラム製品が1つ又は複数のプロセッサ上で実行されるとき、本装置は、第1の態様若しくは第1の態様の可能な実装のうちのいずれか1つ、第2の態様若しくは第2の態様の可能な実装のうちのいずれか1つ、第5の態様若しくは第5の態様の可能な実装のうちのいずれか1つ、又は第6の態様若しくは第6の態様の可能な実装のうちのいずれか1つにおいて説明された方法が実施される。
【0299】
第13の態様によれば、本出願の実施形態は、チップシステムを開示する。チップシステムは、少なくとも1つのプロセッサと、メモリと、インターフェース回路とを含む。インターフェース回路は、少なくとも1つのプロセッサに情報入出力を与えるように構成される。メモリは、コンピュータプログラムを記憶し、コンピュータプログラムが1つ又は複数のプロセッサ上で実行されるとき、第1の態様若しくは第1の態様の可能な実装のうちのいずれか1つにおいて説明された方法が実施されるか、又は、第5の態様若しくは第5の態様の可能な実装のうちのいずれか1つにおいて説明された方法が実施される。
【0300】
第14の態様によれば、本出願の実施形態は、チップシステムを開示する。チップシステムは、少なくとも1つのプロセッサと、メモリと、インターフェース回路とを含む。インターフェース回路は、少なくとも1つのプロセッサに情報入出力を与えるように構成される。メモリは、コンピュータプログラムを記憶し、コンピュータプログラムが1つ又は複数のプロセッサ上で実行されるとき、第2の態様若しくは第2の態様の可能な実装のうちのいずれか1つにおいて説明された方法が実施されるか、又は、第6の態様若しくは第6の態様の可能な実装のうちのいずれか1つにおいて説明された方法が実施される。
【0301】
第15の態様によれば、本出願の実施形態は、ビークルを開示する。ビークルは、第1のノード(例えば、自動車のコックピットドメインコントローラCDC)を含む。第1のノードは、第3の態様若しくは第3の態様の可能な実装のうちのいずれか1つ又は第7の態様若しくは第7の態様の可能な実装のうちのいずれか1つにおいて説明された装置である。
【0302】
さらに、ビークルは、第2のノード(例えば、カメラ、画面、マイクロフォン、スピーカ、レーダー、電子鍵、及びパッシブエントリパッシブスタートシステムコントローラなどのモジュールのうちの少なくとも1つ)を含む。第2のノードは、第4の態様若しくは第4の態様の可能な実装のうちのいずれか1つ又は第8の態様若しくは第8の態様の可能な実装のうちのいずれか1つにおいて説明された装置である。
【図面の簡単な説明】
【0303】
以下は、本出願の実施形態において利用される添付の図面について説明する。
【0304】
図1】本出願の実施形態による、適用例シナリオの概略図である。
図2】本出願の実施形態による、Bluetoothペアリング方法のフローチャートである。
図3】本出願の実施形態による、ペアリング要求メッセージのフレーム構造の概略図である。
図4】本出願の実施形態による、別のペアリング要求メッセージのフレーム構造の概略図である。
図5】本出願の実施形態による、さらに別のペアリング要求メッセージのフレーム構造の概略図である。
図6】本出願の実施形態による、ペアリングモードを決定するための方法の概略図である。
図7】本出願の実施形態による、別のBluetoothペアリング方法のフローチャートである。
図8】本出願の実施形態による、別のBluetoothペアリング方法のフローチャートである。
図9A】本出願の実施形態による、別のBluetoothペアリング方法のフローチャートである。
図9B】本出願の実施形態による、別のBluetoothペアリング方法のフローチャートである。
図10A】本出願の実施形態による、別のBluetoothペアリング方法のフローチャートである。
図10B】本出願の実施形態による、別のBluetoothペアリング方法のフローチャートである。
図11】本出願の実施形態による、Bluetoothペアリング装置の構造の概略図である。
図12】本出願の実施形態による、別のBluetoothペアリング装置の構造の概略図である。
【発明を実施するための形態】
【0305】
以下に、本出願の実施形態における添付の図面を参照しながら本出願の実施形態について説明する。本出願では、「例」又は「例えば」などの言葉は、例、例示、又は説明を与えることを表すために利用されることに留意されたい。本出願において「例」又は「例えば」を利用して記述される任意の実施形態又は設計方式は、別の実施形態又は設計方式よりも好適であるものとして又はそれよりも多くの利点を有するものとして説明されてはならない。「例」又は「例えば」などの言葉の利用は、関係する概念を特定の方式で提示することを目的とする。
【0306】
以下は、最初に、理解しやすいように本出願における関連技術及び専門用語を手短に説明する。
【0307】
1.ノード(node)
【0308】
ノードは、データ送受信能力を有する電子デバイスである。例えば、ノードは、コックピットドメイン(Cockpit Domain)デバイス、又はコックピットドメインデバイス中のモジュール(例えば、コックピットドメインコントローラ(cockpit domain controller,CDC)、カメラ、画面、マイクロフォン、スピーカ、電子鍵、及びパッシブエントリパッシブスタートシステムコントローラなどのモジュールのうちの1つ又は複数)でありうる。特定の実装中に、ノードは、代替として、データ転送デバイス、例えば、ルータ、リピータ、ブリッジ、若しくはスイッチでありうるか、又は端末デバイス、例えば、様々なタイプのユーザ機器(user equipment,UE)、モバイルフォン(mobile phone)、タブレットコンピュータ(pad)、デスクトップコンピュータ、ヘッドセット、若しくはスピーカでありうるか、又は自動運転(self-driving)デバイス、交通安全(transportation safety)デバイス、仮想現実(virtual reality,VR)端末デバイス、拡張現実(augmented reality,AR)端末デバイス、マシン型通信(machine type communication,MTC)デバイス、産業用制御(industrial control)デバイス、リモート医療(remote medical)デバイス、スマートグリッド(smart grid)デバイス、若しくはスマートシティ(smart city)デバイスなどの機械知能デバイスをさらに含みうるか、又はウェアラブルデバイス(例えば、スマートウォッチ、スマートバンド、若しくは歩数計)などをさらに含みうる。いくつかの技術的シナリオでは、同様のデータ送受信能力をもつデバイスの名前はノードでないことがある。しかし、説明を容易にするために、データ送受信能力を有する電子デバイスは、本出願の実施形態ではノードと総称される。
【0309】
2.共有鍵(shared key,SK)
【0310】
共有鍵は、2つの通信当事者のノード中に記憶された同じ秘密値であり、共有鍵は、同じ鍵取得方法を利用することによって2つの通信当事者によって生成されうる。事前共有鍵(pre-shared key,PSK)はまた、一種の共有鍵である。
【0311】
例えば、ビークルのコックピットドメインコントローラ(cockpit domain controller,CDC)とビークル所有者のモバイルフォンとは、Bluetooth技術を利用することによって互いに通信することができる2つのノードである。ビークル所有者が、モバイルフォンを利用することによってビークルのCDCとのペアリングを実施する必要があるとき、ビークル所有者は、最初に、公開鍵を交換することによって共有鍵を生成する、例えば、鍵合意アルゴリズムを利用することによってモバイルフォンとビークルのCDCとの間で鍵合意アルゴリズムパラメータを交換することによって共有鍵を生成しうる。共有鍵は、モバイルフォンが後で再びビークルのCDCとのペアリングを要求するときに両方のノードの識別を検証するために利用されうる。
【0312】
3.鍵合意
【0313】
鍵合意は、2つの通信当事者が合意を通して鍵を取得するためにいくつかのパラメータを交換する処理である。鍵合意のために利用される暗号アルゴリズムは、鍵合意アルゴリズムと呼ばれ、鍵交換アルゴリズムと呼ばれることもある。共通鍵合意アルゴリズムは、ディフィーへルマン(Diffie-Hellman,DH)アルゴリズム、楕円曲線暗号方式(elliptic curve cryptosystem,ECC)ベースのディフィーへルマン(ECDH)アルゴリズム、オークレー(Oakley)アルゴリズム、(SM1、SM2、SM3、及びSM4などの)SMアルゴリズムなどを含む。
【0314】
4.Bluetoothペアリング処理
【0315】
Bluetoothは、短距離ワイヤレス通信技術であり、ノード間でのワイヤレス情報交換のために利用することができる。ペアリングは、最初に、Bluetoothを利用することによって互いに通信するノード間で実施される必要がある。ペアリング処理は、2つのBluetoothノード間のリンク鍵(link key)を生成することを目的とし、リンク鍵は、互いの識別を認証し、交換されたデータを暗号化するために利用される。実際の適用例では、概して、2つのノードは、直接、リンク鍵を利用することによって暗号化を実施せず、交換されたデータを暗号化するためにリンク鍵を利用することによってセッション鍵(session key)をエクスポートする。セッション鍵は、暗号化鍵(encryption key)、完全性鍵(integrity key)などのうちの1つ又は複数を含みうる。
【0316】
Bluetoothペアリング方法は、主に、個人識別番号/レガシーペアリング(personal identification number/legacy pairing,PIN/LP)とセキュアシンプルペアリング(secure simple pairing,SSP)とを含む。PIN/レガシーペアリング方法が利用されるとき、2つのBluetoothノードが同じパスワードPINを入力するとき、2つのBluetoothノードは、リンク鍵をエクスポートする。この方法は、両方のノードが入力能力を有することを必要とし、少数のシナリオに適用でき、比較的低いセキュリティを有する。
【0317】
5.入出力(Input/Output,I/O)能力
【0318】
ノードの入出力機能は、入力機能と出力機能とを組み合わせることによって取得されることができる。入力機能は、「No Input」、(「YesNo」としても表されうる)「Yes/No」、又は「Keyboard」であってよく、次に詳細に説明する。
【0319】
(1)「No Input」は、ノードが「Yes」、「No」、又は他のデータを入力する能力を有しないことを示す。
【0320】
(2)「Yes/No」は、ノードが少なくとも2つのボタン(button)を有し、かつ2つのボタンが、「Yes」と「No」とにマッピングされることができること、又は、ノードが「Yes」若しくは「No」を示すことができる別の機構を有することを示す。
【0321】
(3)「Keyboard」は、ノードが、0から9までのアラビア数字又は他の文字を入力することができる少なくとも1つの数字キーボードと確認(confirmation)とを有することを示す。ノードは、少なくとも2つのボタン(button)を有し、かつ2つのボタンが「Yes」と「No」とにマッピングされることができるか、又は、ノードが、「Yes」若しくは「No」を示すことができる別の機構を有する。
【0322】
出力機能は、「No Output」又は「Numeric Output」であってよく、次に詳細に説明する。
【0323】
(1)「No Output」は、ノードが6文字を表示又は転送する能力を有しないことを示す。
【0324】
(2)「Numeric Output」は、ノードが6文字を表示又は転送する能力を有することを示す。
【0325】
I/O能力は、入力機能と出力機能とを組み合わせることによって取得されうる。表1は、本出願の実施形態において与えられるI/O能力の組合せの表である。ノードのI/O能力は、入出力不可(NoInputNoOutput)と、表示のみ(DisplayOnly)と、表示可否(DisplayYesNo)と、キーボードのみ(KeyboardOnly)と、キーボード表示(KeyboardDisplay)とを含むことを理解することができる。
【0326】
【表1】
【0327】
6.鍵導出
【0328】
鍵導出は、1つの秘密値から1つ又は複数の秘密値を導出することであり、鍵を導出するために利用されるアルゴリズムは、鍵導出関数(key derivation function,KDF)と呼ばれ、鍵導出アルゴリズムとも呼ばれる。例えば、秘密値Keyから導出される新しい秘密値DKは、DK=KDF(Key)のように表されうる。
【0329】
共通鍵導出アルゴリズムは、パスワードベースの鍵導出関数(password-based key derivation function,PBKDF)、スクリプト(scrypt)アルゴリズムなどを含む。PBKDFアルゴリズムは、第1世代のPBKDF1と第2世代のPBKDF2とをさらに含む。任意選択で、いくつかのKDFアルゴリズムの鍵導出処理において、ハッシュアルゴリズムが、入力秘密値に対してハッシュ変更を実施するために利用される。従って、アルゴリズム識別子は、利用されることになるハッシュアルゴリズムを示すためにKDF関数の入力としてさらに受信されうる。
【0330】
7.フレッシュネスパラメータ
【0331】
フレッシュネスパラメータは、暗号において一般に利用されるパラメータであり、通常、鍵、認証パラメータなどを生成するために利用される。フレッシュネスパラメータは、フレッシュネス又はフレッシュパラメータと呼ばれることもあり、NONCE(number once,NONCE)、カウンタ(counter)、シーケンス番号(number)などのうちの少なくとも1つを含みうる。NONCEは、1回しか利用されない(又は繰り返されない)ランダム値である。異なる瞬間に生成されるフレッシュネスパラメータは通常は異なる。言い換えれば、フレッシュネスパラメータの特定の値は、フレッシュネスパラメータが生成されるたびに変化する。従って、今回の鍵(又は認証パラメータなど)を生成するために利用されるフレッシュネスパラメータは、この前の鍵(又は認証パラメータなど)を生成するために利用されたフレッシュネスパラメータとは異なる。これは、生成された鍵のセキュリティを改善することができる。
【0332】
例えば、フレッシュネスパラメータは、乱数発生器(random number generator)を利用することによってノードによって取得された乱数でありうる。
【0333】
以下に、本出願の実施形態におけるシステムアーキテクチャ及びサービスシナリオについて説明する。本出願において説明されるシステムアーキテクチャ及びサービスシナリオは、本出願における技術的解決策についてより明確に説明するものであり、本出願において提供される技術的解決策に対して限定を構成しないことに留意されたい。当業者は、システムアーキテクチャの発展及び新しいサービスシナリオの出現とともに、本出願において提供される技術的解決策が、同様の技術的問題にも適用可能であることを知りうる。
【0334】
図1は、本出願の実施形態による、Bluetoothノードペアリング方法の適用例シナリオの概略図である。ビークルのコックピットドメインコントローラ(cockpit domain controller,CDC)101は、インテリジェントコックピットデバイス中のコントロールセンターであり、第1のノードと見なされうるし、スマートフォン102は、第2のノードと見なされうる。スマートフォン102は、CDC101とのペアリングを要求するためにCDC101にペアリング要求メッセージを送信しうる。CDC101は、ペアリング要求メッセージにおいて説明されたスマートフォン102の入出力能力に基づいてペアリングのためのペアリングモードを選択しうる。概して、スマートフォン102は、入力と表示とをサポートしうるし、CDC101も入力と表示とをサポートしうる。従って、ペアリングは、数値比較又はパスキー入力モードを利用することによって実施されうる。しかし、攻撃者が、この時点でビークルに侵入し、攻撃者のモバイルフォンを利用することによってCDC101に接続する場合、数値比較モードは、攻撃者がCDC101に接続するのを防げることができないので、CDC101は、攻撃者のモバイルフォンに正常に接続され、ビークルのセキュリティが脅される。
【0335】
別の例では、CDC101がBluetoothヘッドセットに接続される場合、Bluetoothヘッドセットは、コンテンツを入力又は表示することができないので、Bluetoothヘッドセットは、ジャストワークモードでのみ接続されることができる。さらに、攻撃者がBluetoothヘッドセットに接続することを要求する場合、Bluetoothヘッドセットは、やはり、攻撃者のデバイスと正常にペアリングされる。従って、Bluetoothヘッドセットのセキュリティが脅される。従って、既存のペアリング方法は、ノードのセキュリティ要件を満たすことができない。
【0336】
図2は、本出願の実施形態による、Bluetoothペアリング方法の概略フローチャートである。本方法は以下のステップを含むが、それらに限定されない。
【0337】
ステップS201:第1のノードは、第2のノードにペアリング要求メッセージを送信する。
【0338】
特に、ペアリング要求メッセージは、第1のノードが事前共有鍵(pre-shared key,PSK)ペアリング能力を有するかどうかを示すために利用される情報を含む。第2のノードと共有される第1のPSKが第1のノード上に存在する場合、第1のノードは、PSKペアリング能力を有する。相応して、第2のノードと共有される第1のPSKが第1のノード上に存在しない場合、第1のノードは、PSKペアリング能力を有しない。
【0339】
ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含むことは、以下のいくつかの方式で特に実装されうる。
【0340】
実装1:ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。例えば、図3を参照されたい。図3は、本出願の実施形態による、可能なペアリング要求メッセージの概略図である。ペアリング要求メッセージ301は、メッセージコード(Code)、I/O能力(I/O Capability,IOC)、帯域外データフラグ(OOB Data Flag)、構成要求(AuthReq)、最大暗号化鍵サイズ(Maximum Encryption Key Size)、イニシエータ鍵配送(Initiator Key Distribution)、及び応答側の鍵配送(Responder Key Distribution)などのフィールドを含む。Codeは、メッセージのタイプを示すために利用され、例えば、0x01は、要求メッセージを示し、0x02は、応答メッセージを示す。AuthReqは、Bonding_Flags(Bonding_Flags,BF)、中間者(Man-In-The-Middle,MITM)、安全接続(Secure Connections,SC)、及びキープレス(keypress)などの識別子を含みうる。最大暗号化鍵サイズは、サポートされた最長鍵の長さ(通常、7バイトから16バイトまでの範囲)を示すために利用される。イニシエータ鍵配送及び応答側の鍵配送は、鍵配送方法を示すために利用される。最上位ビット(most significant bit,MSB)は、2進数の最上位の重み付けビットであり、10進数の最左ビットと同様である。相応して、最下位ビット(least significant bit,LSB)は、2進数の最下位の重み付けビットであり、10進数の最右ビットと同様である。
【0341】
IOCフィールドは、第1のノードの入出力能力を示すために利用される。表2は、本出願のこの実施形態において提供されるIOCフィールドの値と値に対応する説明とを示す。ペアリング要求メッセージ中のIOCフィールドの値が0x05であるとき、第1のノードがPSKペアリング能力を有することを示しうることを理解することができる。相応して、IOCフィールドの値が別の値であるとき、第1のノードがPSKペアリング能力を有しないことを示しうる。さらに、IOCフィールドの値が別の値であるとき、第1のノードの入出力能力は特に示されうる。例えば、IOCフィールドの値が0x01であるとき、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示しうる。
【0342】
【表2】
【0343】
実装2:ペアリング要求メッセージは、IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。図4は、本出願の実施形態による、可能なペアリング要求メッセージの概略図である。ペアリング要求メッセージ401は、コード、IOC、OOBデータフラグ、AuthReq、最大暗号鍵サイズ、イニシエータ鍵配送、及び応答側の鍵配送などのフィールドを含む。
【0344】
IOCフィールドは8ビット(1バイト)を含み、IOCフィールド中の2ビット(bits)は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。特に、IOCフィールド中の2ビットは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。表3は、本出願のこの実施形態において提供される可能なPSK能力値と値に対応する説明とを示す。例えば、PSK能力値「01」は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、PSK能力値「00」は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0345】
【表3】
【0346】
本出願のこの実施形態では、ビットの1つの部分が2ビットである一例が利用されることが理解されうる。特定の実装では、ビットの1つの部分は、他のビット、例えば、3ビットでありうる。「000」は、PSKペアリング能力を示さず、「001」は、PSKペアリング能力を示し、「002」から「111」は、予約された値として利用される。
【0347】
図4を参照されたい。任意選択で、IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用されてよく、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールド中の6ビットの値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。第2のノードの入出力能力がキーボード表示(KeyboardDisplay)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0348】
実装3:ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。図5は、本出願の実施形態による、可能なペアリング要求メッセージの概略図である。ペアリング要求メッセージ501は、コード、IOC、OOBデータフラグ、AuthReq、最大暗号鍵サイズ、イニシエータ鍵配送、応答側の鍵配送、及びPSK能力などのフィールドを含む。
【0349】
PSK能力フィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。特に、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。表4は、本出願のこの実施形態において提供される別の可能なPSK能力値と値に対応する説明とを示す。例えば、PSK能力値0x01は、第1のノードがPSKペアリング能力を有すること、又は第2のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。別の例では、PSK能力値0x00は、第1のノードがPSKペアリング能力を有しないこと、又は第2のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0350】
【表4】
【0351】
図4を参照されたい。任意選択で、IOCは、第1のノードの入出力能力を示すために利用されてよく、従って、第2のノードは、第1のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールド中の値は0x01であり、第1のノードの入出力能力が表示のみ(DisplayOnly)であることを示す。
【0352】
任意選択で、ペアリング要求メッセージを送信する前に、第1のノードは、最初に、第2のノードとPSKを共有すべきかどうかを決定する。説明を容易にするために、第1のノードと第2のノードとによって共有されるPSKは、本出願の実施形態では、第1のPSKと呼ばれる。第1のノードが第2のノードと第1のPSKを共有することを決定する場合、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示す情報を含む。相応して、第2のノードと共有される第1のPSKが第1のノード上に存在しない場合、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有しないことを示す情報を含む。
【0353】
さらに、任意選択で、第1のノードは、少なくとも1つのノードのデバイス識別子と対応するPSKとの間の対応を記憶する。ノードのデバイス識別子は、ノードの識別情報(identification,ID)、媒体アクセス制御(media access control,MAC)アドレス、ドメイン名、ドメインアドレス、又は別のユーザ定義の識別子でありうる。第1のノードは、第2のノードのデバイス識別子を取得し(説明を容易にするために、第2のノードのデバイス識別子は第2のデバイス識別子と呼ばれる)、第2のデバイス識別子に基づいて、第2のデバイス識別子に対応する第1のPSKが第1のノード上に存在するのかどうかを決定しうる。第2のデバイス識別子に対応する第1のPSKが第1のノード上に存在する場合、第1のノードがPSKペアリング能力を有することを示す。例えば、表5を参照されたい。表5は、本出願のこの実施形態において提供されるノードのデバイス識別子とPSKとの間の可能な対応を示す。第1のノードによって取得された第2のデバイス識別子が「ID1」である場合、「ID1」に対応するPSKが「PSK1」であり、第1のノードは、ペアリング要求メッセージに、第1のノードがPSKペアリング能力を有することを示す情報を追加しうることが理解されうる。
【0354】
【表5】
【0355】
第1のノードは、第2のノードにペアリング要求メッセージを送信し、相応して、第2のノードは、第1のノードからペアリング要求メッセージを受信して、ペアリング要求メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0356】
S202:第2のノードは、第1のノードがPSKペアリング能力を有することを示すために利用される情報をペアリング要求メッセージが含むことに応答して第1のノードにペアリング応答メッセージを送信する。
【0357】
特に、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示すために利用される情報を含む。従って、第2のノードは、情報に基づいて、第1のノードがPSKペアリング能力を有することを学習しうるし、これは、PSKベースのペアリングが第1のノードと第2のノードとの間で実施されうることを示す。従って、第2のノードは、第1のノードにペアリング応答メッセージを送信する。
【0358】
ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。特に、以下の2つの事例がありうる。
【0359】
事例1:ペアリング応答メッセージがペアリングモードを示す情報を含む。例えば、ペアリング応答メッセージは、「ペアリングモード05」を含み、「ペアリングモード05」は、PSKベースのペアリングに対応し、即ち、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを第1のノードに示す。
【0360】
事例2:ペアリング応答メッセージは、第2のノードがPSKペアリング能力を有することを示す情報を含み、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを第1のノードに示す。特に、ペアリング応答メッセージは、第2のノードがPSKペアリング能力を有することを示す情報を含むことは、以下のいくつかの実装解決策を有しうる。
【0361】
実装解決策1:ペアリング応答メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第2のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。例えば、ペアリング応答メッセージ中のIOCフィールドの値が0x05であるとき、第2のノードがPSKペアリング能力を有することを示しうる。相応して、IOCフィールドの値が別の値であるとき、第1のノードがPSKペアリング能力を有しないことを示し、それにより、第1のノードがPSKベースのペアリングを実施できないことを示しうる。さらに、IOCフィールドの値が別の値であるとき、第2のノードの入出力能力は特に示されうる。例えば、IOCフィールドの値が0x01であるとき、第2のノードの入出力能力が表示のみ(DisplayOnly)であることを示しうる。
【0362】
実装解決策2:ペアリング応答メッセージは、IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第2のノードのPSK能力値を含み、第2のノードのPSK能力値は、第2のノードがPSKペアリング能力を有するかどうかを示すために利用される。例えば、IOCフィールド中の2ビットは、第1のノードのPSK能力値を含み、PSK能力値「01」は、第2のノードがPSKペアリング能力を有すること、又は第1のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。任意選択で、PSK能力値が「00」である場合、第2のノードがPSKペアリング能力に関する情報を有しないこと、又は第1のノードと共有される第1のPSKが存在しないことを示す。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のペアリングモードで実施される必要がある。
【0363】
本出願のこの実施形態では、ビットの1つの部分が2ビットである一例が利用されることが理解されうる。特定の実装では、ビットの1つの部分は、他のビット、例えば、3ビットでありうる。「000」は、PSKペアリング能力を示さず、「001」は、PSKペアリング能力を示し、「002」から「111」は、予約された値として利用される。
【0364】
任意選択で、IOCフィールド中のビットの別の部分は、第2のノードの入出力能力を示すために利用されてよく、従って、第1ノードは、第1のノードの入出力能力に基づいて別のペアリングモードを決定することができる。例えば、IOCフィールド中の6ビットの値は0x04であり、第2のノードの入出力能力がキーボード表示(KeyboardDisplay)であることを示す。第1のノードの入出力能力が表示のみ(DisplayOnly)である場合、マッチングは、パスキー入力(Passkey entry,PE)モードで第1のノードと第2のノードとの間で実施されうる。
【0365】
実装解決策3:ペアリング応答メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第2のノードのPSK能力値を含み、第2のノードのPSK能力値は、第2のノードがPSKペアリング能力を有するかどうかを示すために利用される。例えば、PSK能力値「0x01」は、第2のノードがPSKペアリング能力を有すること、又は第1のノードと共有される第1のPSKが存在することを示す。従って、PSKベースのペアリングがサポートされうる。任意選択で、PSK能力値が「0x00」である場合、第2のノードがPSKペアリング能力に関する情報を有しないこと、又は第1のノードと共有される第1のPSKが存在しないことを示しうる。この場合、PSKベースのペアリングはサポートされず、ペアリングは、別のモードで実施される必要がある。
【0366】
任意選択で、ペアリング応答メッセージは、IOCフィールドをさらに含み、IOCフィールドは、第2のノードの入出力能力を示すために利用されてよく、従って、第1ノードは、第2のノードの入出力能力に基づいてペアリングモードを決定することができる。例えば、IOCフィールド中の値は0x04であり、第1のノードの入出力能力がキーボード表示(KeyboardDisplay)であることを示す。
【0367】
任意選択で、ペアリング応答メッセージを送信する前に、第2のノードは、最初に、第1のノードと共有される第1のPSKが存在するのかどうかを決定する。第2のノードが第1のノードと第1のPSKを共有することを決定する場合、ペアリング応答メッセージは、PSKベースのペアリングを実施することを示す情報を含む。相応して、第2のノードと共有される第1のPSKが第2のノード上に存在しない場合、ペアリング失敗メッセージが第2のノードに送られうるか、又はPSKペアリング能力がないことを示す情報が、ペアリング応答メッセージ中で搬送されるか、又は別のペアリングモードを決定するために第2のノードの入出力能力がペアリング応答メッセージ中で搬送される。
【0368】
さらに、任意選択で、第2のノードは、少なくとも1つのノードのデバイス識別子と対応するPSKとの間の対応を記憶する。第2のノードは、第1のノードのデバイス識別子を取得し(説明を容易にするために、第1のノードのデバイス識別子は第1のデバイス識別子と呼ばれる)、第1のデバイス識別子に基づいて、第1のデバイス識別子に対応する第1のPSKが第2のノード上に存在するのかどうかを決定しうる。第1のデバイス識別子に対応する第1のPSKが第2のノード上に存在する場合、第1のノードと共有される第1のPSKが第2のノード上に存在することを示す。
【0369】
任意選択で、ペアリング要求メッセージが第1のノードの入出力能力をさらに含むとき、第2のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定しうる。例えば、図6を参照されたい。図6は、本出願の実施形態による、第1のペアリングモードを決定する可能な方式である。エリア601は、第1のノードのI/O能力であり、エリア602は、第2のノードのI/O能力である。第1のペアリングモードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいて決定され、第1のペアリングモードは、数値比較(Numeric comparison,NC)、ジャストワーク(Just work,JW)、又はパスキー入力(Passkey entry,PE)でありうることを理解することができる。例えば、第1のノードのI/O能力が、表示可否(DisplayYesNo)であり、第2のノードのI/O能力が、表示可否(DisplayYesNo)である場合、対応するペアリングモードは数値比較モードである。
【0370】
帯域外モードは、通常、別のデバイスに基づいて完了される必要があることに留意されたい。従って、対応する帯域外データフラグ(OOB Data Flag)が、ペアリングのために帯域外モードを利用することを示すためにペアリング要求メッセージ中で搬送される必要がある。
【0371】
さらに、任意選択で、複数のペアリングモードが第1のノードと第2のノードとの間でサポートされるとき、第2のノードは、第1のノードに、異なるペアリングモードを示す応答メッセージを送信するためにペアリング要求メッセージと予め設定されたペアリングモード優先度情報とに基づいてペアリングモードを決定しうる。第2のノードは、PSKベースのペアリングを優先的に選択するか、又はペアリングモードの優先度に基づいてより高い優先度をもつペアリングモードを選択しうる。例えば、ペアリングモード優先度情報は、第1のノードと第2のノードとがPSKを共有するとき、第1のノードと第2のノードとによって共有されるPSKを利用することによって実施されるペアリングが、複数のペアリングモード中の最高の優先度を有することを示す。別の例では、ペアリングモード優先度情報は、PSKベースのペアリングの優先度が2であることと、数値比較モードの優先度が3であることと、パスキー入力モードの優先度が1であることとでありうる。第1のノードと第2のノードとの両方がPSKペアリング能力を有するとき、第1のノードのI/O能力と第2のノードのI/O能力とに対応するペアリングモードがパスキー入力モードである場合、パスキー入力モードの優先度がPSKベースのペアリングの優先度より高いので、第2のノードは、ペアリングのためにパスキー入力モードを選択しうる。相応して、第1のノードのI/O能力と第2のノードのI/O能力とに対応するペアリングモードが数値比較モードである場合、PSKベースのペアリングの優先度が数値比較モードの優先度より高いので、第2のノードはPSKベースのペアリングを選択しうる。
【0372】
第2のノードは、第1のノードにペアリング応答メッセージを送信し、相応して、第1のノードは、第2のノードによってフィードバックされたペアリング応答メッセージを受信して、ペアリング応答メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0373】
ステップS203:第2のノードは、第1のPSKに基づいて第1のノードを認証する。
【0374】
特に、第1のノードは、第2のノードと第1のPSKを共有する。従って、第2のノードは、第1のPSKを利用することによって第1のノードを認証しうる。特に、以下のいくつかの方式がありうる。
【0375】
方式1:第2のノードは、第1のノードに第1の認証データを送信する。第1の認証データは、第1のPSKを利用することによって暗号化されるか、又は第1のPSKから導出されセッション鍵を利用することによって暗号化されうる。第1のノードが、認証データを解読し、対応する応答データをフィードバックすることができる場合、第2のノードは、第1のノードを正常に認証する。
【0376】
方式2:第2のノードは、第1のノードから第1の認証パラメータを受信する。第1の認証パラメータは、第1のPSKに基づいて第1のノードによって生成される。例えば、第1の認証パラメータC1は、鍵導出アルゴリズムKDFを利用することによって第1のPSKに基づいて第1のノードによって生成され、例えば、C1=KDF(第1のPSK)である。第2のノードがまた、第1のPSKを有するので、第2のノードは、対応する方式で第1の認証パラメータを検証しうる。例えば、第2のノードは、KDF1(第1のPSK)と第1の認証パラメータC1とに基づいて、第1のノードの識別を認証するために第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致するのかどうかを決定しうる。さらに、第2のノードは、第2のノード上の第1のPSKに基づいて第2のチェックパラメータcheck2を生成し、例えば、check2=KDF(第1のPSK)でありうる。第2のチェックパラメータが第1の認証パラメータと同じである場合、第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致し、従って、第1のノードの識別が認証されることができる。
【0377】
任意選択で、第1の認証パラメータの生成に参加するパラメータは、第1のノードと第2のノードとの間で交換される別のパラメータ、例えば、フレッシュネスパラメータ、公開鍵、構成パラメータ、及びペアリングメッセージのうちの1つ又は複数をさらに含みうる。詳細については、以下の事例を参照されたい。
【0378】
事例1:第2のノードは、第1のノードにフレッシュネスパラメータを送信する(説明を容易にするために、第2のノードによって送られたフレッシュネスパラメータは、第2のフレッシュネスパラメータと呼ばれる)。フレッシュネスパラメータは、第2のノードによって取得される(又は生成される)NONCE、カウンタ、シーケンス番号(number)などのうちの少なくとも1つを含みうる。第1のノードは、第2のフレッシュネスパラメータN2と第1のPSKとに基づいて第1の認証パラメータC1を生成し、例えば、C1=KDF(N2,第1のPSK)である。第2のノードは、第1のノードから第1の認証パラメータC1を受信し、同じ方法を利用することによって第2のチェックパラメータcheck2を生成し、例えば、check2=KDF(N2,第1のPSK)である。第2のチェックパラメータが第1の認証パラメータと同じである場合、第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致し、従って、第1のノードの識別が認証されることができる。
【0379】
事例2:共有鍵は、第2のノードと第1のノードとの間で事前に生成される(又は取得される)。共有鍵は、第1の公開鍵と第2の公開鍵とを交換することによって第1のノードと第2のノードとの間でのネゴシエーションを通して生成される。第1のノードは、第2のフレッシュネスパラメータN2と、第1のPSKと、第1の公開鍵PK1と、第2の公開鍵PK2とに基づいて第1の認証パラメータC1を生成し、例えば、C1=KDF(N2,第1のPSK,PK1,PK2)である。第2のノードは、第1のノードから第1の認証パラメータC1を受信し、同じ方法を利用することによって第2のチェックパラメータcheck2を生成し、例えば、check2=KDF(N2,第1のPSK,PK1,PK2)である。第2のチェックパラメータが第1の認証パラメータと同じである場合、第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致し、従って、第1のノードの識別が認証されることができる。
【0380】
ステップS204:第1のノードは、第1のPSKに基づいて第2のノードを認証する。
【0381】
特に、第1のノードは、第2のノードと第1のPSKを共有する。従って、第1のノードは、第1のPSKを利用することによって第2のノードを認証しうる。以下に、認証方式について手短に説明する。詳細な説明については、ステップS203における第2のノード側の対応する説明を参照されたい。第1のノードは、以下の方式で第1のPSKに基づいて第2のノードを認証しうる。
【0382】
様式1:第1のノードは、第2のノードに第2の認証データを送信する。第2の認証データは、第1のPSKを利用することによって暗号化されるか、又は第1のPSKから導出された(又は導出された)セッション鍵を利用することによって暗号化されうる。第2のノードが、認証データを解読し、対応する応答データをフィードバックすることができる場合、第1のノードは、第2のノードを正常に認証する。
【0383】
様式2:第1のノードは、第2のノードから第2の認証パラメータを受信する。第2の認証パラメータは、第1のPSKに基づいて第2のノードによって生成される。例えば、第2の認証パラメータC2は、鍵導出アルゴリズムKDFを利用することによって第1のPSKに基づいて第2のノードによって生成され、例えば、C2=KDF(第1のPSK)である。第1のノードがまた、第1のPSKを有するので、第1のノードは、対応する方式で第2の認証パラメータを検証しうる。例えば、第1のノードは、KDF(第1のPSK)と第2の認証パラメータC2とに基づいて、第2のノードの識別を認証するために第2のノード上の第1のPSKが第1のノード上の第1のPSKに一致するのかどうかを決定しうる。さらに、第1のノードは、第1のノード上の第1のPSKに基づいて第1のチェックパラメータcheck1を生成し、例えば、check1=KDF(第1のPSK)でありうる。第1のチェックパラメータが第2の認証パラメータと同じである場合、第2のノード上の第1のPSKが第1のノード上の第1のPSKに一致し、従って、第2のノードの識別が認証されることができる。
【0384】
任意選択で、第2の認証パラメータの生成に参加するパラメータは、第1のノードと第2のノードとの間で交換される別のパラメータ、例えば、フレッシュネスパラメータ、公開鍵、構成パラメータ、及びペアリングメッセージのうちの1つ又は複数をさらに含みうる。詳細については、以下の事例を参照されたい。
【0385】
事例1:第1のノードは、第2のノードにフレッシュネスパラメータを送信する(説明を容易にするために、第1のノードによって送られたフレッシュネスパラメータは、第1のフレッシュネスパラメータと呼ばれる)。フレッシュネスパラメータは、第1のノードによって取得される(又は生成される)NONCE、カウンタ、シーケンス番号(number)などのうちの少なくとも1つを含みうる。第2のノードは、第1のフレッシュネスパラメータN1と第1のPSKとに基づいて第2の認証パラメータC2を生成し、例えば、C2=KDF(N1,第1のPSK)である。第1のノードは、第2のノードから第2の認証パラメータC2を受信し、同じ方法を利用することによって第1のチェックパラメータcheck1を生成し、例えば、check1=KDF(N1,第1のPSK)である。第1のチェックパラメータが第2の認証パラメータと同じである場合、第2のノード上の第1のPSKが第1のノード上の第1のPSKに一致し、従って、第2のノードの識別が認証されることができる。
【0386】
解決策についてより明確に説明するために、認証パラメータをどのように検証するのかついて説明するために複数のステップが利用されることに留意されたい。実際の処理では、認証パラメータはまた、1ステップで検証されうる。例えば、第2の認証パラメータC2が検証されるとき、第1のチェックパラメータcheck1は中間結果にすぎず、即ち、第1のノードは、C2がKDF(N1,第1のPSK)と同じであるのかどうかを直接検証しうる。
【0387】
事例2:共有鍵は、第1のノードと第2のノードとの間で事前に生成される(又は取得される)。共有鍵は、第1の公開鍵と第2の公開鍵とを交換することによって第1のノードと第2のノードとの間でのネゴシエーションを通して生成される。第2のノードは、第1のフレッシュネスパラメータN1と、第1のPSKと、第1の公開鍵PK1と、第2の公開鍵PK2とに基づいて第2の認証パラメータC2を生成し、例えば、C2=KDF1(N1,第1のPSK,PK1,PK2)である。第1のノードは、第2のノードから第2の認証パラメータC2を受信し、同じ方法を利用することによって第1のチェックパラメータcheck1を生成し、例えば、check1=KDF1(N1,第1のPSK,PK1,PK2)である。第1のチェックパラメータが第2の認証パラメータと同じである場合、第2のノード上の第1のPSKが第1のノード上の第1のPSKに一致し、従って、第2のノードの識別が認証されることができる。
【0388】
任意選択で、第1のペアリング要求メッセージが第1のノードのPSK能力値を含む場合、第2のノードは、第1のノードのPSK能力値の改ざんを回避するために第1のノードのPSK能力値の正当性を認証しうる。特に、第2のノードは、第1のノードから第3の認証パラメータを受信する。第3の認証パラメータは、第1のノードのPSK能力値に基づいて第1のノードによって生成される。第2のノードは、ペアリング要求メッセージから取得された第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成し、第4のチェックパラメータと第3の認証パラメータとに基づいて第1のノードのPSK能力値の正当性を決定する。例えば、第1のペアリング要求メッセージでは、第1のノードのPSK能力値が「01」である場合、第1のノードは、KDFを利用することによって第3の認証パラメータC3を生成し、例えば、C3=KDF(「01」)である。相応して、第2のノードは、第4のチェックパラメータcheck4=KDF(「01」)を生成する。第3の認証パラメータC3が第4のチェックパラメータcheck4に等しくなる場合、第1のノードのPSK能力値に対する正当性認証が成功する。
【0389】
任意選択で、第1の応答要求メッセージが第2のノードのPSK能力値を含む場合、第2のノードは、第2のノードのPSK能力値の正当性を認証しうる。特に、第1のノードは、第2のノードから第4の認証パラメータを受信する。第4の認証パラメータは、第2のノードのPSK能力値に基づいて第2のノードによって生成される。第1のノードは、ペアリング応答メッセージから取得された第2のノードのPSK能力値に基づいて第3のチェックパラメータを生成し、第3のチェックパラメータと第4の認証パラメータとに基づいて第2のノードのPSK能力値の正当性を決定する。例えば、第1のペアリング応答メッセージでは、第2のノードのPSK能力値が「01」である場合、第2のノードは、KDFを利用することによって第4の認証パラメータC4を生成し、例えば、C4=KDF(「01」)である。相応して、第1のノードは、第3のチェックパラメータcheck3=KDF(「01」)を生成する。第4の認証パラメータC4が第3のチェックパラメータcheck3に等しくなる場合、第2のノードのPSK能力値に対する正当性認証が成功する。
【0390】
さらに、任意選択で、第3の認証パラメータC3と第4の認証パラメータC4との生成に参加するパラメータは、別のパラメータ、例えば、共有鍵Kdh、第1の乱数、第2の乱数、第1の公開鍵、及び第2の公開鍵のうちの1つ又は複数のパラメータをさらに含みうる。例えば、第3の認証パラメータC3は、暗号アルゴリズムf3を利用することによって共有鍵Kdh、第1の乱数N1、第2の乱数N2、第1のノードのPSK能力値「01」、第1の公開鍵PK1、及び第2の公開鍵PK2に基づいて生成され、例えば、C3=f3(Kdh,N1,N2,「01」,PK1,PK2)でありうる。相応して、第4の認証パラメータは、暗号アルゴリズムf3を利用することによって共有鍵Kdh、第1の乱数N1、第2の乱数N2、第2のノードのPSK能力値「01」、第1の公開鍵PK1、及び第2の公開鍵PK2に基づいて生成され、例えば、C4=f3(Kdh,N1,N2,「01」,PK1,PK2)でありうる。
【0391】
ステップS203及びステップS204は、Bluetoothペアリング処理における認証フェーズ1に対応しうることが理解されうる。第1のノードと第2のノードとのPSK能力値の正当性に対する上記の検証は、Bluetoothペアリング処理における認証フェーズ2に対応しうる。この場合、第3の認証パラメータは、認証フェーズ2における検証パラメータ検証E1であり、第4の認証パラメータは、認証フェーズ2における検証パラメータ検証E2である。
【0392】
図2に示されている方法では、PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成される。従って、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示す情報を含みうる。相応して、第1のノードと共有される(説明を容易にするために第1のPSKと呼ばれる)PSKはまた、第2のノード上に予め定義されるか又は事前構成される。第2のノードは、第1のPSKに基づいて第1のノードを認証して、第1のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、第1のノード又は第2のノードと信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0393】
図7は、本出願の実施形態による、Bluetoothペアリング方法の概略フローチャートである。本方法は以下のステップを含むが、それらに限定されない。
【0394】
ステップS701:第1のノードは、第2のノードにペアリング要求メッセージを送信する。
【0395】
特に、ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含む。第1のノードのペアリング能力は、第1のノードがPSKペアリング能力を有するかどうかを含む。さらに、任意選択で、第1のノードのペアリング能力は、第1のノードのI/O能力をさらに含む。
【0396】
例えば、図3に示されているように、ペアリング要求メッセージ301中のIOCフィールドは、第1のノードがPSKペアリング能力を有することを示す情報を含む。
【0397】
別の例では、図4に示されているように、ペアリング要求メッセージ401中のIOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。IOCフィールド中のビットの別の部分は、第1のノードのI/O能力を含む。
【0398】
さらに別の例では、図5に示されているように、ペアリング要求メッセージ501中のPSK能力フィールドは、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。ペアリング要求メッセージ401中のIOCフィールドは、第1のノードのI/O能力を含む。
【0399】
第1のノードは、第2のノードにペアリング要求メッセージを送信し、相応して、第2のノードは、第1のノードからペアリング要求メッセージを受信して、ペアリング要求メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0400】
ステップS702:第2のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定する。
【0401】
特に、ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEなどのモードを含みうる。第2のノードが、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、少なくとも以下のいくつかの事例を含みうる。
【0402】
事例1:ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示す情報を含む。第2のノードが第1のノードと第1のPSKを共有することを決定する場合、第2のノードは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する。特に、第1のノードは、PSKペアリング能力を有する。第2のノードが第1のノードと共有される第1のPSKを有する場合、ペアリングモードがPSKベースのペアリングであることが決定される。
【0403】
第2のノードは、第1のノードのデバイス識別子を取得しうる。第1のノードのデバイス識別子に対応する第1のPSKが第2のノード上に存在する場合、第1のノードと共有される第1のPSKが第2のノード上に存在することを示し、第2のノードはPSKペアリング能力を有する。
【0404】
この場合、PSKベースのペアリングが好適であることが理解されうる。第1のノードと第2のノードとの両方がPSKペアリング能力を有する場合、ペアリングは、共有された第1のPSKを利用することによって実施される。
【0405】
事例2:ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有しないこと又は第2のノードがPSKペアリング能力を有しないこと(又は第1のノードと共有される第1のPSKが第2のノード上に存在しないこと)を示す情報を含み、ペアリング要求メッセージは、第1のノードのI/O能力をさらに含む。この場合、第2のノードは、第1のノードのI/O能力と第2のノードのI/O能力とに基づいてペアリングモードを決定する。例えば、図6に示されているように、第1のノードのI/O能力が、表示可否(DisplayYesNo)であり、第2のノードのI/O能力が、表示可否(DisplayYesNo)である場合、対応するペアリングモードは数値比較モードである。
【0406】
事例3:ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示す情報を含み、第1のノードと共有される第1のPSKは、第2のノード上に存在する。ペアリング要求メッセージは、第1のノードのI/O能力をさらに含む。第2のノードは、第1のノードのI/O能力と第2のノードのI/O能力とに基づいて第1のペアリングモードを決定し、第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する。例えば、PSKベースのペアリングの優先度が2であり、数値比較モードの優先度が3であり、パスキー入力モードの優先度が1である。第1のノードと第2のノードとの両方がPSKペアリング能力を有するとき、第1のノードのI/O能力と第2のノードのI/O能力とに対応するペアリングモードがパスキー入力モードである場合、パスキー入力モードの優先度がPSKベースのペアリングの優先度より高いので、第2のノードは、ペアリングのためにパスキー入力モードを選択しうる。相応して、第1のノードのI/O能力と第2のノードのI/O能力とに対応するペアリングモードが数値比較モードである場合、PSKベースのペアリングの優先度が数値比較モードの優先度より高いので、第2のノードはPSKベースのペアリングを選択しうる。
【0407】
任意選択で、第2のノードは、比較的高いセキュリティをもつペアリングモードをサポートすることを選択しうる。例えば、第2のノードは、PSKベースのペアリングモードと、数値比較モードと、パスキー入力モードのみをサポートする。I/O能力に基づいてジャストワークモードとして決定されるノードの場合、第2のノードはペアリング失敗メッセージを送って、第2のノードがジャストワークモードで信用できないノードとペアリングするのを防ぎうる。
【0408】
ステップS703:第2のノードは、第1のノードにペアリング応答メッセージを送信する。
【0409】
特に、ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含む。第2のノードのペアリング能力は、第2のノードがPSKペアリング能力を有するかどうかを含み、第2のノードのPSKペアリング能力は、第2のノードのI/O能力をさらに含む。
【0410】
例えば、ペアリング応答メッセージ中のIOCフィールドは、第2のノードがPSKペアリング能力を有することを示す情報を含む。
【0411】
別の例では、ペアリング応答メッセージ中のIOCフィールド中のビットの1つの部分は、第2のノードのPSK能力値を含み、PSK能力値は、第2のノードがPSKペアリング能力を有するかどうかを示すために利用される。IOCフィールド中のビットの別の部分は、第2のノードのI/O能力を含む。
【0412】
さらに別の例では、ペアリング応答メッセージ中のPSK能力フィールドは、第2のノードのPSK能力値を含み、PSK能力値は、第2のノードがPSKペアリング能力を有するかどうかを示すために利用される。ペアリング応答メッセージ中のIOCフィールドは、第1のノードのI/O能力を含む。
【0413】
第2のノードのペアリング能力は、第2のノードによって選択されるペアリングモードに関連付けられることが理解されうる。第2のノードによって決定されるペアリングモードがPSKベースのペアリングである場合、ペアリング応答メッセージは、第2のノードがPSK能力を有することを示す情報を含む。相応して、第2のノードによって決定されるペアリングモードが第1のノードのI/O能力と第2のノードのI/O能力とに基づいて決定される場合、ペアリング応答メッセージは第2のノードのI/O能力を含む。
【0414】
第2のノードは、第1のノードにペアリング応答メッセージを送信し、相応して、第1のノードは、第2のノードによってフィードバックされたペアリング応答メッセージを受信して、ペアリング応答メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0415】
ステップS704:第2のノードは、ペアリングモードに基づいて第1のノードとのペアリングを実施する。
【0416】
特に、ペアリングモードがPSKベースのペアリングであると第2のノードが決定する場合、第2のノードは、第1のノードと共有される第1のPSKを利用することによって第1のノードを認証する。詳細な処理については、ステップS203の具体的な説明を参照されたい。ここでは、詳細を再び説明しない。
【0417】
ペアリングモードが、第1のノードのI/O能力と第2のノードのI/O能力とに基づいて決定された第1のペアリングモードであると第2のノードが決定する場合、ペアリングは、対応するペアリング手順に従って実施される。
【0418】
ステップS705:第1のノードは、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定する。
【0419】
特に、ペアリングモードは、PSKベースのペアリング、数値比較、ジャストワーク、又はパスキー入力などのモードを含みうる。第1のノードが、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することは、少なくとも以下のいくつかの事例を含みうる。
【0420】
事例1:ペアリング応答メッセージは、第2のノードがPSKペアリング能力を有することを示す情報を含む。第1のノードがまたPSKペアリング能力を有する(又は第2のノードと共有されるPSKが第1のノード上に存在する)場合、第1のノードは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する。
【0421】
この場合、PSKベースのペアリングが好適であることが理解されうる。第1のノードと第2のノードとの両方がPSKペアリング能力を有する場合、ペアリングは、共有された第1のPSKを利用することによって実施される。
【0422】
事例2:ペアリング応答メッセージは、第2のノードがPSKペアリング能力を有しないこと又は第1のノードがPSKペアリング能力を有しないこと(又は第2のノードと共有される第1のPSKが第1のノード上に存在しないこと)を示す情報を含み、ペアリング応答メッセージは、第2のノードのI/O能力をさらに含む。この場合、第1のノードは、第1のノードのI/O能力と第2のノードのI/O能力とに基づいてペアリングモードを決定する。例えば、図6に示されているように、第1のノードのI/O能力が、表示可否(DisplayYesNo)であり、第2のノードのI/O能力が、表示可否(DisplayYesNo)である場合、対応するペアリングモードは数値比較モードである。
【0423】
事例3:ペアリング応答メッセージは、第2のノードがPSKペアリング能力を有することを示す情報を含み、第2のノードと共有される第1のPSKは、第1のノード上に存在する。ペアリング応答メッセージは、第2のノードのI/O能力をさらに含む。第1のノードは、第1のノードのI/O能力と第2のノードのI/O能力とに基づいて第1のペアリングモードを決定し、第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する。
【0424】
任意選択で、第1のノードは、比較的高いセキュリティをもつペアリングモードをサポートすることを選択しうる。例えば、第1のノードは、PSKベースのペアリングモードと、数値比較モードと、パスキー入力モードのみをサポートする。I/O能力に基づいてジャストワークモードとして決定されるノードの場合、第1のノードはペアリング失敗メッセージを送って、第1のノードがジャストワークモードで信用できないノードとペアリングするのを防ぎうる。
【0425】
可能な解決策では、プロトコルの規定によれば、ペアリングモードを決定するために第2のノードによって利用される方式は、ペアリングモードを決定するために第1のノードによっても利用され、従って、第1のノードと第2のノードとによってペアリングモードを決定する方式は同じである。
【0426】
ステップS706:第1のノードは、ペアリングモードに基づいて第2のノードとのペアリングを実施する。
【0427】
特に、ペアリングモードがPSKベースのペアリングであると第1のノードが決定する場合、第1のノードは、第2のノードと共有される第1のPSKを利用することによって第2のノードを認証する。詳細な処理については、ステップS204の具体的な説明を参照されたい。ここでは、詳細を再び説明しない。
【0428】
ペアリングモードが、第1のノードのI/O能力と第2のノードのI/O能力とに基づいて決定された第1のペアリングモードであると第2のノードが決定する場合、ペアリングは、対応するペアリング手順に従って実施される。
【0429】
図7に示されている実施形態では、ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、ペアリング応答メッセージは、第2のノードのペアリング能力に関する情報を含む。第1のノードと第2のノードとは、要件に基づいて、及び第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいて対応するペアリングモードを決定しうる。例えば、第2のノードは、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、第2のノードの要件を満たすペアリングモードを決定しうる。
【0430】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0431】
図2に示されている上記の方法実施形態は、多くの可能な実装解決策を含む。以下は、図8図9A及び図9B、並びに図10A及び図10Bを参照して、実装解決策のうちのいくつかを別個に示す。図8図9A及び図9B、並びに図10A及び図10Bにおいて説明されない関連する概念、動作、又は論理関係の説明については、図2に示されている実施形態における対応する説明を参照されたいことに留意されたい。従って、詳細を再び説明しない。
【0432】
図8は、本出願の実施形態による、Bluetoothペアリング方法の概略フローチャートである。本方法は以下のステップを含むが、それらに限定されない。
【0433】
ステップS801:第1のノードは、第2のノードと共有される第1のPSKが存在することを決定する。
【0434】
特に、第1のノードは、第2のノードの第2のデバイス識別子を取得する。第2のデバイス識別子に基づいて、第2のデバイス識別子に対応する第1のPSKが第1のノード上に存在することが決定される場合、第2のノードと共有される第1のPSKが第1のノード上に存在することを示す。
【0435】
さらに、第2のデバイス識別子に対応する第1のPSKが第1のノード上に存在する場合、第1のノードがPSKペアリング能力を有することを示す。
【0436】
ステップS802:第1のノードは、第2のノードにペアリング要求メッセージを送信する。
【0437】
特に、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有することを示すために利用される情報を含む。
【0438】
第1のノードは、第2のノードにペアリング要求メッセージを送信し、相応して、第2のノードは、第1のノードからペアリング要求メッセージを受信して、ペアリング要求メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0439】
ステップS803:第2のノードは、第1のノードと共有される第1のPSKが存在することを決定する。
【0440】
特に、第2のノードは、第1のノードの第1のデバイス識別子を取得する。第1のデバイス識別子に基づいて、第1のデバイス識別子に対応する第1のPSKが第2のノード上に存在することが決定される場合、第1のノードと共有される第1のPSKが第2のノード上に存在することを示す。第1のノードと第2のノードとの両方がPSKペアリング能力を有する。従って、ペアリングは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによって実施されうる。
【0441】
任意選択で、第1のノードと共有される第1のPSKが第2のノード上に存在しない場合、第2のノードは、第1のノードにペアリング失敗メッセージを送信しうる。
【0442】
ステップS804:第2のノードは、第1のノードにペアリング応答メッセージを送信する。
【0443】
特に、ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。
【0444】
第2のノードは、第1のノードにペアリング応答メッセージを送信し、相応して、第1のノードは、第2のノードによってフィードバックされたペアリング応答メッセージを受信して、ペアリング応答メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0445】
ステップS805:第1のノードは、第2のノードに第1のフレッシュネスパラメータを送信する。
【0446】
特に、第1のフレッシュネスパラメータは、第1のノードによって取得される(又は生成される)NONCE、カウンタ、シーケンス番号などのうちの少なくとも1つでありうる。フレッシュネスパラメータは、第2の認証パラメータを生成するために第2のノードによって利用され、従って、第1のノードは、第2の認証パラメータに基づいて第2のノードを認証する。
【0447】
第1のノードは、第2のノードに第1のフレッシュネスパラメータを送信し、相応して、第2のノードは、第1のノードから第1のフレッシュネスパラメータを受信することが理解されうる。
【0448】
ステップS806:第2のノードは、第1のノードに第2のフレッシュネスパラメータを送信する。
【0449】
特に、第2のフレッシュネスパラメータは、第2のノードによって取得される(又は生成される)NONCE、カウンタ、シーケンス番号などのうちの少なくとも1つでありうる。フレッシュネスパラメータは、第1の認証パラメータを生成するために第1のノードによって利用され、従って、第2のノードは、第1の認証パラメータに基づいて第1のノードを認証する。
【0450】
第2のノードは、第1のノードに第2のフレッシュネスパラメータを送信し、相応して、第1のノードは、第2のノードから第2のフレッシュネスパラメータを受信することが理解されうる。
【0451】
ステップS807:第1のノードは、第1のPSKと、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵とに基づいて第1の認証パラメータを生成する。
【0452】
特に、共有鍵は、第2のノードと第1のノードとの間で事前に生成される(又は取得される)。共有鍵は、第1の公開鍵と第2の公開鍵とを交換することによって第1のノードと第2のノードとの間でのネゴシエーションを通して生成される。
【0453】
第1のノードは、第2のフレッシュネスパラメータN2と、第1のPSKと、第1の公開鍵PK1と、第2の公開鍵PK2とに基づいて第1の認証パラメータC1を生成し、例えば、C1=KDF(N2,第1のPSK,PK1,PK2)である。KDFは、事前にネゴシエートされる又はプロトコル中に指定される鍵導出アルゴリズムである。
【0454】
ステップS808:第2のノードは、第1のPSKと、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵とに基づいて第1の認証パラメータを生成する。
【0455】
特に、第2のノードは、第1のフレッシュネスパラメータN1と、第1のPSKと、第1の公開鍵PK1と、第2の公開鍵PK2とに基づいて第1の認証パラメータC2を生成し、例えば、C2=KDF(N1,第1のPSK,PK1,PK2)である。
【0456】
ステップS809:第2のノードは、第1のノードに第2の認証パラメータを送信する。
【0457】
第2のノードは、第1のノードに第2の認証パラメータを送信し、相応して、第1のノードは、第2のノードから第2の認証パラメータを受信することが理解されうる。
【0458】
ステップS810:第1のノードは、第2のノードに第1の認証パラメータを送信する。
【0459】
第1のノードは、第2のノードに第1の認証パラメータを送信し、相応して、第2のノードは、第1のノードから第1の認証パラメータを受信することが理解されうる。
【0460】
ステップS811:第1のノードは、第1のPSKと、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第2の認証パラメータとに基づいて、第2のノードに対する認証が成功することを決定する。
【0461】
特に、第1のノードは、第2のノードから第2の認証パラメータC2を受信し、同じ方法を利用することによって第1のチェックパラメータcheck1を生成し、例えば、check1=KDF1(N1,第1のPSK,PK1,PK2)である。第1のチェックパラメータが第2の認証パラメータと同じである場合、第2のノード上の第1のPSKが第1のノード上の第1のPSKに一致し、従って、第2のノードの識別が認証されることができる。
【0462】
ステップS812:第2のノードは、第1のPSKと、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1の認証パラメータとに基づいて、第1のノードに対する認証が成功することを決定する。
【0463】
特に、第2のノードは、第1のノードから第1の認証パラメータC1を受信し、同じ方法を利用することによって第2のチェックパラメータcheck2を生成し、例えば、check2=KDF(N2,第1のPSK,PK1,PK2)である。第2のチェックパラメータが第1の認証パラメータと同じである場合、第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致し、従って、第1のノードの識別が認証されることができる。
【0464】
図9A及び図9Bは、本出願の実施形態による、Bluetoothペアリング方法の概略フローチャートである。本方法は以下のステップを含むが、それらに限定されない。
【0465】
ステップS901:第1のノードは、第2のノードにペアリング要求メッセージを送信する。
【0466】
特に、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。さらに、任意選択で、ペアリング要求メッセージは、第1のノードのI/O能力をさらに含む。
【0467】
例えば、図4に示されているように、ペアリング要求メッセージ401中のIOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。IOCフィールド中のビットの別の部分は、第1のノードのI/O能力を含む。
【0468】
別の例では、図5に示されているように、ペアリング要求メッセージ501中のPSK能力フィールドは、第1のノードのPSK能力値を含み、PSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。ペアリング要求メッセージ501中のIOCフィールドは、第1のノードのI/O能力を含む。
【0469】
第1のノードは、第2のノードにペアリング要求メッセージを送信し、相応して、第2のノードは、第1のノードからペアリング要求メッセージを受信して、ペアリング要求メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0470】
ステップS902:第1のノードがPSKペアリング能力を有しないか、又は第1のノードと共有される第1のPSKが第2のノード上に存在しない場合、第2のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいてペアリングモードを決定する。
【0471】
特に、ペアリング要求メッセージは、第1のノードがPSKペアリング能力を有するかどうかに関する情報を含む。第1のノードがPSKペアリング能力を有しない場合、第2のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいてペアリングモードを決定する。
【0472】
第2のノードは、第1のノードの第1のデバイス識別子を取得しうる。第1のデバイス識別子に基づいて、第1のデバイス識別子に対応する第1のPSKが第2のノード上に存在しないことが決定される場合、第1のノードと共有される第1のPSKが第2のノード上に存在しないことを示す。この場合、第2のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいてペアリングモードを決定する。
【0473】
ステップS903:第1のノードがPSKペアリング能力を有し、第1のノードと共有される第1のPSKが第2のノード上に存在する場合、第2のノードは、第1のノードにペアリング応答メッセージを送信する。
【0474】
特に、ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。
【0475】
この場合、PSKベースのペアリングが好適であることを理解することができる。第1のノードと第2のノードとの両方がPSKペアリング能力を有する場合、ペアリングは、共有された第1のPSKを利用することによって実施される。
【0476】
第2のノードは、第1のノードにペアリング応答メッセージを送信し、相応して、第1のノードは、第2のノードによってフィードバックされたペアリング応答メッセージを受信して、ペアリング応答メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0477】
ステップS904:第1のノードは、第2のノードに第1のフレッシュネスパラメータを送信する。
【0478】
特に、第1のフレッシュネスパラメータは、第1のノードによって取得される(又は生成される)NONCE、カウンタ、シーケンス番号などのうちの少なくとも1つでありうる。フレッシュネスパラメータは、第2の認証パラメータを生成するために第2のノードによって利用され、従って、第1のノードは、第2の認証パラメータに基づいて第2のノードを認証する。
【0479】
第1のノードは、第2のノードに第1のフレッシュネスパラメータを送信し、相応して、第2のノードは、第1のノードから第1のフレッシュネスパラメータを受信することが理解されうる。
【0480】
ステップS905:第2のノードは、第1のノードに第2のフレッシュネスパラメータを送信する。
【0481】
特に、第2のフレッシュネスパラメータは、第2のノードによって取得される(又は生成される)NONCE、カウンタ、シーケンス番号などのうちの少なくとも1つでありうる。フレッシュネスパラメータは、第1の認証パラメータを生成するために第1のノードによって利用され、従って、第2のノードは、第1の認証パラメータに基づいて第1のノードを認証する。
【0482】
第2のノードは、第1のノードに第2のフレッシュネスパラメータを送信し、相応して、第1のノードは、第2のノードから第2のフレッシュネスパラメータを受信することが理解されうる。
【0483】
ステップS906:第1のノードは、第1のPSKと、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵とに基づいて第1の認証パラメータを生成する。
【0484】
特に、共有鍵は、第2のノードと第1のノードとの間で事前に生成される(又は取得される)。共有鍵は、第1の公開鍵と第2の公開鍵とを交換することによって第1のノードと第2のノードとの間でのネゴシエーションを通して生成される。
【0485】
第1のノードは、第2のフレッシュネスパラメータN2と、第1のPSKと、第1の公開鍵PK1と、第2の公開鍵PK2とに基づいて第1の認証パラメータC1を生成し、例えば、C1=KDF(N2,第1のPSK,PK1,PK2)である。KDFは、事前にネゴシエートされる又はプロトコル中に指定される鍵導出アルゴリズムである。
【0486】
ステップS907:第2のノードは、第1のPSKと、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵とに基づいて第1の認証パラメータを生成する。
【0487】
特に、共有鍵は、第2のノードと第1のノードとの間で事前に生成される(又は取得される)。共有鍵は、第1の公開鍵と第2の公開鍵とを交換することによって第1のノードと第2のノードとの間でのネゴシエーションを通して生成される。
【0488】
第2のノードは、第1のフレッシュネスパラメータN1と、第1のPSKと、第1の公開鍵PK1と、第2の公開鍵PK2とに基づいて第1の認証パラメータC2を生成し、例えば、C2=KDF(N1,第1のPSK,PK1,PK2)である。KDFは、事前にネゴシエートされる又はプロトコル中に指定される鍵導出アルゴリズムである。
【0489】
ステップS908:第2のノードは、第1のノードに第2の認証パラメータを送信する。
【0490】
第2のノードは、第1のノードに第2の認証パラメータを送信し、相応して、第1のノードは、第2のノードから第2の認証パラメータを受信することが理解されうる。
【0491】
ステップS909:第1のノードは、第2のノードに第1の認証パラメータを送信する。
【0492】
第1のノードは、第2のノードに第1の認証パラメータを送信し、相応して、第2のノードは、第1のノードから第1の認証パラメータを受信することが理解されうる。
【0493】
ステップS910:第1のノードは、第1のPSKと、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第2の認証パラメータとに基づいて、第2のノードに対する認証が成功することを決定する。
【0494】
特に、第1のノードは、第2のノードから第2の認証パラメータC2を受信し、同じ方法を利用することによって第1のチェックパラメータcheck1を生成し、例えば、check1=KDF1(N1,第1のPSK,PK1,PK2)である。第1のチェックパラメータが第2の認証パラメータと同じである場合、第2のノード上の第1のPSKが第1のノード上の第1のPSKに一致し、従って、第2のノードの識別が認証されることができる。
【0495】
ステップS911:第2のノードは、第1のPSKと、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1の認証パラメータとに基づいて、第1のノードに対する認証が成功することを決定する。
【0496】
特に、第2のノードは、第1のノードから第1の認証パラメータC1を受信し、同じ方法を利用することによって第2のチェックパラメータcheck2を生成し、例えば、check2=KDF(N2,第1のPSK,PK1,PK2)である。第2のチェックパラメータが第1の認証パラメータと同じである場合、第1のノード上の第1のPSKが第2のノード上の第1のPSKに一致し、従って、第1のノードの識別が認証されることができる。
【0497】
ステップS912:第1のノードは、第1のノードのPSK能力値に基づいて第3の認証パラメータを生成する。
【0498】
例えば、第1のペアリング要求メッセージでは、第1のノードのPSK能力値が「01」である場合、第1のノードは、KDFを利用することによって第3の認証パラメータC3を生成し、例えば、C3=KDF(「01」)である。
【0499】
任意選択で、第3の認証パラメータC3の生成に参加するパラメータは、別のパラメータ、例えば、共有鍵Kdh、第1の乱数、第2の乱数、第1の公開鍵、及び第2の公開鍵のうちの1つ又は複数をさらに含みうる。例えば、第3の認証パラメータC3は、暗号アルゴリズムf3を利用することによって共有鍵Kdh、第1の乱数N1、第2の乱数N2、第1のノードのPSK能力値「01」、第1の公開鍵PK1、及び第2の公開鍵PK2に基づいて生成され、例えば、C3=f3(Kdh,N1,N2,「01」,PK1,PK2)でありうる。さらに、任意選択で、ステップS1212は、Bluetoothペアリング処理における認証フェーズ2に対応しうる。この場合、第3の認証パラメータは、認証フェーズ2における検証パラメータ検証E1である。
【0500】
ステップS913:第2のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成する。
【0501】
例えば、第1のペアリング応答メッセージでは、第2のノードのPSK能力値が「01」である場合、第2のノードは、KDFを利用することによって第4の認証パラメータC4を生成し、例えば、C4=KDF(「01」)である。
【0502】
任意選択で、第4の認証パラメータC4の生成に参加するパラメータは、別のパラメータ、例えば、共有鍵Kdh、第1の乱数、第2の乱数、第1の公開鍵、及び第2の公開鍵のうちの1つ又は複数をさらに含みうる。例えば、第4の認証パラメータは、暗号アルゴリズムf3を利用することによって共有鍵Kdh、第1の乱数N1、第2の乱数N2、第2のノードのPSK能力値「01」、第1の公開鍵PK1、及び第2の公開鍵PK2に基づいて生成され、例えば、C4=f3(Kdh,N1,N2,「01」,PK1,PK2)でありうる。さらに、任意選択で、ステップS1213は、Bluetoothペアリング処理における認証フェーズ2に対応しうる。この場合、第4の認証パラメータは、認証フェーズ2における検証パラメータ検証E2である。
【0503】
ステップS914:第2のノードは、第1のノードに第3の認証パラメータを送信する。
【0504】
第2のノードは、第1のノードに第3の認証パラメータを送信し、相応して、第1のノードは、第2のノードから第3の認証パラメータを受信することが理解されうる。
【0505】
ステップS915:第1のノードは、第2のノードに第4の認証パラメータを送信する。
【0506】
第1のノードは、第2のノードに第4の認証パラメータを送信し、相応して、第2のノードは、第1のノードから第4の認証パラメータを受信することが理解されうる。
【0507】
ステップS916:第1のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを検証する。
【0508】
特に、第1のノードは、第3のチェックパラメータcheck3=KDF(第2のノードのPSK能力値)を生成しうる。第4の認証パラメータC4が第3のチェックパラメータcheck3に等しくなる場合、第2のノードのPSK能力値に対する正当性認証が成功する。
【0509】
任意選択で、第4の認証パラメータC4が、式C4=f3(Kdh、N1、N2、第2のノードのPSK能力値、PK1、PK2)を満たす場合、第1のノードは、同じパラメータ、例えば、check3=f3(Kdh、N1、N2、第2のノードのPSK能力値、PK1、PK2)を利用することによって対応する第3のチェックパラメータcheck3を生成しうる。第4の認証パラメータC4が第3のチェックパラメータcheck3に等しくなる場合、第2のノードのPSK能力値に対する正当性認証が成功する。
【0510】
ステップS917:第2のノードは、第1のノードのPSK能力値に基づいて第3の認証パラメータを検証する。
【0511】
特に、第2のノードは、第4のチェックパラメータcheck4=KDF(第1のノードのPSK能力値)を生成しうる。第3の認証パラメータC3が第4のチェックパラメータcheck4に等しくなる場合、第1のノードのPSK能力値に対する正当性認証が成功する。
【0512】
任意選択で、第3の認証パラメータC3が、式C3=f3(Kdh、N1、N2、第1のノードのPSK能力値、PK1、PK2)を満たす場合、第2のノードは、同じパラメータ、例えば、check4=f3(Kdh、N1、N2、第1のノードのPSK能力値、PK1、PK2)を利用することによって対応するチェックパラメータcheck4を生成しうる。第3の認証パラメータC3が第4のチェックパラメータcheck4に等しくなる場合、第1のノードのPSK能力値に対する正当性認証が成功する。
【0513】
図10A及び図10Bは、本出願の実施形態による、Bluetoothペアリング方法の概略フローチャートである。本方法は以下のステップを含むが、それらに限定されない。
【0514】
ステップS1001:第1のノードは、第2のノードと共有される第1のPSKが存在することを決定する。
【0515】
具体的な説明については、ステップS1201の説明を参照されたい。
【0516】
ステップS1002:第1のノードは、第2のノードにペアリング要求メッセージを送信する。
【0517】
具体的な説明については、ステップS1202の説明を参照されたい。
【0518】
ステップS1003:第2のノードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定する。
【0519】
例えば、図6を参照されたい。図6は、本出願のこの実施形態による、第1のペアリングモードを決定する可能な方式である。エリア601は、第1のノードのI/O能力であり、エリア902は、第2のノードのI/O能力である。第1のペアリングモードは、第1のノードの入出力能力と第2のノードの入出力能力とに基づいて決定され、第1のペアリングモードは、数値比較(Numeric comparison,NC)、ジャストワーク(Just work,JW)、又はパスキー入力(Passkey entry,PE)でありうることを理解することができる。例えば、第1のノードのI/O能力が、表示可否(DisplayYesNo)であり、第2のノードのI/O能力が、表示可否(DisplayYesNo)である場合、対応するペアリングモードは数値比較である。
【0520】
ステップS1004:第2のノードは、第1のノードと共有される第1のPSKが第2のノード上に存在することを決定する。
【0521】
特に、第2のノードは、第1のノードの第1のデバイス識別子を取得する。第1のデバイス識別子に基づいて、第1のデバイス識別子に対応する第1のPSKが第2のノード上に存在することが決定される場合、第1のノードと共有される第1のPSKが第2のノード上に存在することを示す。第1のノードと第2のノードとの両方がPSKペアリング能力を有する。従って、ペアリングは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによって実施されうる。
【0522】
ステップS1005:第2のノードは、第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてPSKベースのペアリングを決定する。
【0523】
例えば、PSKベースのペアリングの優先度が2であり、数値比較モードの優先度が3である。第1のノードと第2のノードとの両方がPSKペアリング能力を有するとき、第1のノードのI/O能力と第2のノードのI/O能力とに対応するペアリングモードが数値比較モードである場合、PSKベースのペアリングの優先度が数値比較モードの優先度より高いので、第2のノードは、PSKベースのペアリングを選択しうる。
【0524】
ステップS1006:第2のノードは、第1のノードにペアリング応答メッセージを送信する。
【0525】
特に、ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。
【0526】
第2のノードは、第1のノードにペアリング応答メッセージを送信し、相応して、第1のノードは、第2のノードによってフィードバックされたペアリング応答メッセージを受信して、ペアリング応答メッセージ中のメッセージコンテンツを取得することが理解されうる。
【0527】
ステップS1007:第1のノードは、第2のノードに第1のフレッシュネスパラメータを送信する。
【0528】
具体的な説明については、ステップS904の説明を参照されたい。
【0529】
ステップS1008:第2のノードは、第1のノードに第2のフレッシュネスパラメータを送信する。
【0530】
具体的な説明については、ステップS905の説明を参照されたい。
【0531】
ステップS1009:第1のノードは、第1のPSKと、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵とに基づいて第1の認証パラメータを生成する。
【0532】
具体的な説明については、ステップS906の説明を参照されたい。
【0533】
ステップS1010:第2のノードは、第1のPSKと、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵とに基づいて第1の認証パラメータを生成する。
【0534】
具体的な説明については、ステップS907の説明を参照されたい。
【0535】
ステップS1011:第2のノードは、第1のノードに第2の認証パラメータを送信する。
【0536】
第2のノードは、第1のノードに第2の認証パラメータを送信し、相応して、第1のノードは、第2のノードから第2の認証パラメータを受信することが理解されうる。
【0537】
ステップS1012:第1のノードは、第2のノードに第1の認証パラメータを送信する。
【0538】
第1のノードは、第2のノードに第1の認証パラメータを送信し、相応して、第2のノードは、第1のノードから第1の認証パラメータを受信することが理解されうる。
【0539】
ステップS1013:第1のノードは、第1のPSKと、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第2の認証パラメータとに基づいて、第2のノードに対する認証が成功することを決定する。
【0540】
具体的な説明については、ステップS910の説明を参照されたい。
【0541】
ステップS1014:第2のノードは、第1のPSKと、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1の認証パラメータとに基づいて、第1のノードに対する認証が成功することを決定する。
【0542】
具体的な説明については、ステップS911の説明を参照されたい。
【0543】
ステップS1015:第1のノードは、第1のノードのPSK能力値に基づいて第3の認証パラメータを生成する。
【0544】
具体的な説明については、ステップS912の説明を参照されたい。
【0545】
ステップS1016:第2のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成する。
【0546】
具体的な説明については、ステップS913の説明を参照されたい。
【0547】
ステップS1017:第2のノードは、第1のノードに第3の認証パラメータを送信する。
【0548】
第2のノードは、第1のノードに第3の認証パラメータを送信し、相応して、第1のノードは、第2のノードから第3の認証パラメータを受信することが理解されうる。
【0549】
ステップS1018:第1のノードは、第2のノードに第4の認証パラメータを送信する。
【0550】
第1のノードは、第2のノードに第4の認証パラメータを送信し、相応して、第2のノードは、第1のノードから第4の認証パラメータを受信することが理解されうる。
【0551】
ステップS1019:第1のノードは、第2のノードのPSK能力値に基づいて第4の認証パラメータを検証する。
【0552】
具体的な説明については、ステップS916の説明を参照されたい。
【0553】
ステップS1020:第2のノードは、第1のノードのPSK能力値に基づいて第3の認証パラメータを検証する。
【0554】
具体的な説明については、ステップS917の説明を参照されたい。
【0555】
本出願の実施形態における方法について詳細に上記で説明し、本出願の実施形態における装置は、以下に提供する。
【0556】
図11は、本出願の実施形態による、Bluetoothペアリング装置110の構造の概略図である。装置110は、ノードでありうるか、又はノード中の構成要素、例えば、チップ又は集積回路でありうる。装置110は、受信ユニット1101と、送信ユニット1102と、処理ユニット1103とを含みうる。Bluetoothペアリング装置110は、上記のBluetoothペアリング方法、例えば、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態におけるBluetoothペアリング方法を実装するように構成される。
【0557】
本出願の装置実施形態では、複数のユニット又はモジュールの分割は、機能に基づく論理分割にすぎず、装置の特定の構造を限定するものではないことが理解されうる。特定の実装では、いくつかの機能モジュールは、より小さい機能モジュールに再分割されうるし、いくつかの機能モジュールはまた、1つの機能モジュールに組み合わされうる。しかし、これらの機能モジュールが再分割されるのか又は組み合わされるのかにかかわらず、Bluetoothペアリング処理において装置110によって実施される一般的な手順は同じである。例えば、装置110中の受信ユニット1101と送信ユニット1102とはまた、通信ユニットに組み合わされうる。通常、各ユニットは、それぞれのプログラムコード(又はプログラム命令)に対応する。ユニットに対応するプログラムコードがプロセッサ上で実行されるとき、ユニットは、対応する機能を実装するために対応する手順を実行する。
【0558】
いくつかの可能な実装では、Bluetoothペアリング装置110は、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における第2のノードでありうる。ユニットについて、以下のように説明する。
【0559】
受信ユニット1101は、第1のノードからペアリング要求メッセージを受信するように構成される。ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0560】
送信ユニット1102は、第2のノードは、第1のノードがPSKペアリング能力を有することを示すために利用される情報をペアリング要求メッセージが含むことに応答して第1のノードにペアリング応答メッセージを送信するように構成される。ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。
【0561】
処理ユニット1103は、第1のPSKに基づいて第1のノードを認証するように構成される。
【0562】
PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成されることを理解することができる。従って、装置110は、ペアリング要求メッセージ中に、第1のノードがPSKペアリング能力を有することを示す情報を含みうる。相応して、第1のノードと共有される第1のPSKはまた、第2のノード上に予め定義されるか又は事前構成される。装置110は、第1のPSKに基づいて第1のノードを認証して、第1のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、装置110と信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0563】
可能な実装では、処理ユニット1103は、
第2のノードが第1のノードと第1のPSKを共有することを決定する
ようにさらに構成される。
【0564】
別の可能な実装では、処理ユニットは、特に、
第1のノードの第1のデバイス識別子を取得し、
第1のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0565】
さらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0566】
さらに別の可能な実装では、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0567】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0568】
さらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0569】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0570】
さらに別の可能な実装では、処理ユニット1103は、ペアリング要求メッセージと予め設定されたペアリングモード優先度情報とに基づいてペアリング応答メッセージを決定するようにさらに構成される。ペアリングモード優先度情報は、第1のノードと第2のノードとがPSKを共有するとき、第1のノードと第2のノードとによって共有されるPSKを利用することによって実施されるペアリングが、複数のペアリングモード中の最高の優先度を有することを示す。
【0571】
さらに別の可能な実装では、受信ユニット1101は、第1のノードから第1の認証パラメータを受信するようにさらに構成される。
【0572】
処理ユニット1103は、第1のPSKに基づいて第1の認証パラメータを検証するようにさらに構成される。
【0573】
さらに別の可能な実装では、処理ユニット1103は、第1のPSKに基づいて第2の認証パラメータを生成するようにさらに構成される。
【0574】
送信ユニットは、第1のノードに第2の認証パラメータを送信するようにさらに構成される。
【0575】
さらに別の可能な実装では、受信ユニット1101は、第1のノードから第3の認証パラメータを受信するようにさらに構成される。
【0576】
処理ユニット1103は、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成するようにさらに構成される。
【0577】
処理ユニット1103は、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0578】
処理ユニット1103は、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成するようにさらに構成される。
【0579】
送信ユニット1102は、第1のノードに第4の認証パラメータを送信するようにさらに構成される。
【0580】
各ユニットの実装については、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における対応する説明を参照されたいことに留意されたい。
【0581】
いくつかの可能な実装では、Bluetoothペアリング装置110は、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における第1のノードでありうる。ユニットについて、以下のように説明する。
【0582】
送信ユニット1102は、第2のノードにペアリング要求メッセージを送信するように構成される。ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有することを示すために利用される情報を含む。
【0583】
受信ユニット1101は、第2のノードによってフィードバックされたペアリング応答メッセージを受信するように構成される。ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される。
【0584】
処理ユニット1103は、第1のPSKに基づいて第2のノードを認証するように構成される。
【0585】
PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成されることを理解することができる。従って、第2のノードは、ペアリング要求メッセージ中に、第1のノードがPSKペアリング能力を有することを示しうる。相応して、第1のノードと共有される(説明を容易にするために第1のPSKと呼ばれる)PSKはまた、第2のノード上に予め定義されるか又は事前構成される。装置110は、第1のPSKに基づいて第2のノードを認証して、第2のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、装置110と信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0586】
可能な実装では、処理ユニット1103は、第2のノードが第1のノードと第1のPSKを共有することを決定するようにさらに構成される。
【0587】
別の可能な実装では、処理ユニット1103は、特に、
第2のノードの第2のデバイス識別子を取得し、
第2のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0588】
さらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0589】
さらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0590】
IOCフィールド中のビットの別の部分は、第1のノードの出力能力を示すために利用される。
【0591】
さらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0592】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0593】
さらに別の可能な実装では、受信ユニット1101は、第2のノードから第2の認証パラメータを受信するようにさらに構成される。
【0594】
処理ユニット1103は、第1のPSKに基づいて第2の認証パラメータを検証するようにさらに構成される。
【0595】
さらに別の可能な実装では、処理ユニット1103は、第1のPSKに基づいて第1の認証パラメータを生成するようにさらに構成される。
【0596】
送信ユニット1102は、第2のノードに第1の認証パラメータを送信するようにさらに構成される。
【0597】
さらに別の可能な実装では、ペアリング応答メッセージは、第2のノードのPSK能力値を含み、第2のノードのPSK能力値は、第2のノードがPSKペアリング能力を有することを示すために利用される。
【0598】
受信ユニット1101は、第2のノードから第4の認証パラメータを受信するようにさらに構成される。
【0599】
処理ユニット1103は、第2のノードのPSK能力値に基づいて第3のチェックパラメータを生成するようにさらに構成される。
【0600】
処理ユニット1103は、第3のチェックパラメータと第4の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0601】
処理ユニット1103は、第1のノードのPSK能力値に基づいて第3の認証パラメータを生成するようにさらに構成される。
【0602】
送信ユニット1102は、第2のノードに第3の認証パラメータを送信するようにさらに構成される。
【0603】
各ユニットの実装については、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における対応する説明を参照されたいことに留意されたい。
【0604】
いくつかの可能な実装では、Bluetoothペアリング装置110は、図7に示されている実施形態における第2のノードでありうる。ユニットについて、以下のように説明する。
【0605】
受信ユニット1101は、第1のノードからペアリング要求メッセージを受信するように構成される。ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含み、第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む。
【0606】
処理ユニット1103は、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定するように構成される。第2のノードのペアリング能力は、第2のノードが第2のノードのPSKペアリング能力と入出力能力とを有するかどうかを含み、ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む。
【0607】
送信ユニット1102は、第1のノードにペアリング応答メッセージを送信するように構成される。ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含む。
【0608】
処理ユニット1103は、ペアリングモードに基づいて第1のノードとのペアリングを実施するようにさらに構成される。
【0609】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、装置110は、要件に基づいて及び第1のノードが第1のノードのPSKペアリング能力と入出力能力とを有するかどうかに基づいて対応するペアリングモードを決定しうることを理解することができる。例えば、装置110は、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、第2のノードの要件を満たすペアリングモードを決定しうる。
【0610】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0611】
可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0612】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0613】
別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0614】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0615】
さらに別の可能な実装では、処理ユニット1103は、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する
ように構成される。
【0616】
さらに別の可能な実装では、処理ユニット1103は、特に、
第1のノードの第1のデバイス識別子を取得し、
第1のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0617】
さらに別の可能な実装では、処理ユニット1103は、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0618】
さらに別の可能な実装では、処理ユニット1103は、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0619】
さらに別の可能な実装では、受信ユニット1101は、第1のノードから第1の認証パラメータを受信するようにさらに構成される。
【0620】
処理ユニットは、第1のPSKに基づいて第1の認証パラメータを検証するようにさらに構成される。
【0621】
さらに別の可能な実装では、処理ユニットは、第1のPSKに基づいて第2の認証パラメータを生成するようにさらに構成される。
【0622】
送信ユニットは、第1のノードに第2の認証パラメータを送信するようにさらに構成される。
【0623】
さらに別の可能な実装では、受信ユニット1101は、第1のノードによって送られた第1のフレッシュネスパラメータを受信するようにさらに構成される。
【0624】
処理ユニット1103は、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2の認証パラメータを生成するようにさらに構成される。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0625】
さらに別の可能な実装では、送信ユニット1102は、第1のノードに第2のフレッシュネスパラメータを送信するようにさらに構成される。
【0626】
処理ユニット1103は、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2のチェックパラメータを生成するようにさらに構成される。
【0627】
処理ユニット1103は、第2のノードは、第2のチェックパラメータと第1の認証パラメータとに基づいて、第1の認証パラメータが正常に検証されたと決定するようにさらに構成される。
【0628】
さらに別の可能な実装では、受信ユニット1101は、第1のノードから第3の認証パラメータを受信するようにさらに構成される。
【0629】
処理ユニット1103は、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成するようにさらに構成される。
【0630】
処理ユニット1103は、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0631】
処理ユニット1103は、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成するようにさらに構成される。
【0632】
送信ユニット1102は、第1のノードに第4の認証パラメータを送信するようにさらに構成される。
【0633】
各ユニットの実装については、図7に示されている実施形態の対応する説明を参照されたいことに留意されたい。
【0634】
いくつかの可能な実装では、Bluetoothペアリング装置110は、図7に示されている実施形態における第1のノードでありうる。ユニットについて、以下のように説明する。
【0635】
送信ユニット1102は、第2のノードにペアリング要求メッセージを送信するように構成される。ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含み、第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む。
【0636】
受信ユニット1101は、第2のノードからペアリング応答メッセージを受信するように構成される。ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含み、第2のノードのペアリング能力は、第2のノードが第2のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む。
【0637】
処理ユニット1103は、第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定するように構成される。ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む。
【0638】
処理ユニット1103は、ペアリングモードに基づいて第2のノードとのペアリングを実施するようにさらに構成される。
【0639】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、ペアリング応答メッセージは、第2のノードのペアリング能力に関する情報を含むことを理解することができる。装置110は、要件に基づいて、及び第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいて対応するペアリングモードを決定しうる。例えば、装置110は、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、要件を満たすペアリングモードを決定しうる。
【0640】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0641】
可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0642】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0643】
別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0644】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0645】
さらに別の可能な実装では、処理ユニット1103は、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する
ようにさらに構成される。
【0646】
さらに別の可能な実装では、処理ユニットは、第2のノードの第2のデバイス識別子を取得し、
第2のデバイス識別子に対応する第1のPSKが存在することを決定する
ようにさらに構成される。
【0647】
さらに別の可能な実装では、処理ユニット1103は、特に、
第2のノードのペアリング能力に関する情報に基づいて、第2のノードがPSKペアリング能力を有しないことを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいてペアリングモードを決定することであって、ペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行う
ように構成される。
【0648】
さらに別の可能な実装では、処理ユニット1103は、特に、
第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0649】
さらに別の可能な実装では、受信ユニット1101は、第2のノードから第2の認証パラメータを受信するようにさらに構成される。
【0650】
処理ユニット1103は、第1のPSKに基づいて第2の認証パラメータを検証するようにさらに構成される。
【0651】
さらに別の可能な実装では、処理ユニット1103は、第1のPSKに基づいて第1の認証パラメータを生成するようにさらに構成される。
【0652】
送信ユニットは、第2のノードに第1の認証パラメータを送信するようにさらに構成される。
【0653】
さらに別の可能な実装では、受信ユニット1101は、第2のノードによって送られた第2のフレッシュネスパラメータを受信するようにさらに構成される。
【0654】
処理ユニット1103は、第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1の認証パラメータを生成するようにさらに構成される。第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである。
【0655】
さらに別の可能な実装では、送信ユニット1102は、第2のノードに第1のフレッシュネスパラメータを送信するようにさらに構成される。
【0656】
処理ユニット1103は、第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1のチェックパラメータを生成するようにさらに構成される。
【0657】
処理ユニット1103は、第2のノードは、第1のチェックパラメータと第2の認証パラメータとに基づいて、第2の認証パラメータが正常に検証されたと決定するようにさらに構成される。
【0658】
さらに別の可能な実装では、受信ユニット1101は、第1のノードから第3の認証パラメータを受信するようにさらに構成される。
【0659】
処理ユニット1103は、第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成するようにさらに構成される。
【0660】
処理ユニット1103は、第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定するようにさらに構成される。
【0661】
処理ユニット1103は、第2のノードのPSK能力値に基づいて第4の認証パラメータを生成するようにさらに構成される。
【0662】
送信ユニット1102は、第1のノードに第4の認証パラメータを送信するようにさらに構成される。
【0663】
各ユニットの実装については、図7に示されている実施形態の対応する説明を参照されたいことに留意されたい。
【0664】
図12は、本出願の実施形態による、通信装置120の構造の概略図である。通信装置120は、ノードでありうるか、又はノード中の構成要素、例えば、チップ又は集積回路でありうる。装置120は、少なくとも1つのメモリ1201と少なくとも1つのプロセッサ1202とを含みうるし、任意選択で、バス1203をさらに含みうる。さらに、任意選択で、通信インターフェース1204がさらに含まれうる。メモリ1201と、プロセッサ1202と、通信インターフェース1204とは、バス1203を通して接続される。
【0665】
メモリ1201は、ストレージスペースを与えるように構成され、ストレージスペースは、オペレーティングシステム及びコンピュータプログラムなどのデータを記憶しうる。メモリ1201は、ランダムアクセスメモリ(random access memory,RAM)、読取り専用メモリ(read-only memory,ROM)、消去可能プログラマブル読取り専用メモリ(erasable programmable read-only memory,EPROM)、コンパクトディスク読取り専用メモリ(compact disc read-only memory,CD-ROM)などのうちの1つ又は組合せでありうる。
【0666】
プロセッサ1202は、算術演算及び/又は論理演算を実施するモジュールであり、特に、中央処理装置(central processing unit,CPU)、グラフィックス処理ユニット(graphics processing unit,GPU)、マイクロプロセッサユニット(microprocessor unit,MPU)、特定用途向け集積回路(Application-Specific Integrated Circuit,ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array,FPGA)、及び複合プログラマブル論理デバイス(Complex programmable logic device,CPLD)などの処理モジュールのうちの1つ又は組合せでありうる。
【0667】
通信インターフェース1204は、外部デバイスによって送られたデータを受信する及び/又は外部デバイスにデータを送信するように構成され、イーサネットケーブルなどのワイヤードリンクインターフェースでありうるか、又はワイヤレス(例えば、Wi-Fi、Bluetooth、若しくは一般的なワイヤレス送信)リンクインターフェースでありうる。任意選択で、通信インターフェース1204は、インターフェースに結合された送信機(例えば、無線周波数送信機又はアンテナ)、受信機などをさらに含みうる。
【0668】
装置120中のプロセッサ1202は、メモリ1201中に記憶されたコンピュータプログラムを読み取るように構成され、上記のBluetoothペアリング方法、例えば、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態において説明されたBluetoothペアリング方法を実施するように構成される。
【0669】
いくつかの可能な実装では、Bluetoothペアリング装置110は、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における第1のノードでありうる。装置120中のプロセッサ1202は、
通信インターフェース1204を通して第1のノードからペアリング要求メッセージを受信することであって、ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有するかどうかを示すために利用される情報を含む、ことと、
第1のノードがPSKペアリング能力を有することを示すために利用される情報をペアリング要求メッセージが含むことに応答して、通信インターフェース1204を通して、第1のノードにペアリング応答メッセージを送信することであって、ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される、ことと、
第1のPSKに基づいて第1のノードを認証することと
の動作を実施するためにメモリ1201中に記憶されたコンピュータプログラムを読み取るように構成される。
【0670】
PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成されることを理解することができる。従って、装置120は、ペアリング要求メッセージ中に、第1のノードがPSKペアリング能力を有することを示す情報を含みうる。相応して、第1のノードと共有される第1のPSKはまた、第2のノード上に予め定義されるか又は事前構成される。装置120は、第1のPSKに基づいて第1のノードを認証して、第1のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、本装置と信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0671】
可能な実装では、プロセッサ1202は、
第2のノードが第1のノードと第1のPSKを共有することを決定する
ようにさらに構成される。
【0672】
別の可能な実装では、プロセッサ1202は、特に、
第1のノードの第1のデバイス識別子を取得し、
第1のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0673】
さらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0674】
さらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0675】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0676】
さらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0677】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0678】
さらに別の可能な実装では、プロセッサ1202は、ペアリング要求メッセージと予め設定されたペアリングモード優先度情報とに基づいてペアリング応答メッセージを決定するようにさらに構成される。ペアリングモード優先度情報は、第1のノードと第2のノードとがPSKを共有するとき、第1のノードと第2のノードとによって共有されるPSKを利用することによって実施されるペアリングが、複数のペアリングモード中の最高の優先度を有することを示す。
【0679】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第1のノードから第1の認証パラメータを受信し、
第1のPSKに基づいて第1の認証パラメータを検証する
ようにさらに構成される。
【0680】
さらに別の可能な実装では、プロセッサ1202は、
第1のPSKに基づいて第2の認証パラメータを生成し、
通信インターフェース1204を通して第1のノードに第2の認証パラメータを送信する
ようにさらに構成される。
【0681】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第1のノードから第3の認証パラメータを受信し、
第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成し、
第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定し、
第2のノードのPSK能力値に基づいて第4の認証パラメータを生成し、
通信インターフェース1204を通して第1のノードに第4の認証パラメータを送信する
ようにさらに構成される。
【0682】
各ユニットの実装については、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における対応する説明を参照されたいことに留意されたい。
【0683】
いくつかの可能な実装では、Bluetoothペアリング装置120は、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における第1のノードでありうる。装置120中のプロセッサ1202は、
通信インターフェース1204を通して第2のノードにペアリング要求メッセージを送信することであって、ペアリング要求メッセージは、第1のノードが事前共有鍵PSKペアリング能力を有することを示すために利用される情報を含む、ことと、
通信インターフェース1204を通して第2のノードによってフィードバックされたペアリング応答メッセージを受信することであって、ペアリング応答メッセージは、第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施することを示すために利用される、ことと、
第1のPSKに基づいて第2のノードを認証することと
の動作を実施するためにメモリ1201中に記憶されたコンピュータプログラムを読み取るように構成される。
【0684】
PSKは第1のノードと第2のノードとによって共有される秘密値であり、第2のノードと共有されるPSKは、第1のノード上で予め定義されるか又は構成されることを理解することができる。従って、第2のノードは、ペアリング要求メッセージ中に、第1のノードがPSKペアリング能力を有することを示しうる。相応して、第1のノードと共有される(説明を容易にするために第1のPSKと呼ばれる)PSKはまた、第2のノード上に予め定義されるか又は事前構成される。装置120は、第1のPSKに基づいて第2のノードを認証して、第2のノードの識別が信頼できると決定してよく、従って、後続のペアリングが成功することができる。このようにして、PSKが事前構成又は定義されるノードの識別は、通常信頼できる。これは、装置120と信用できないノードとの間の成功したペアリングを回避し、ノードペアリング処理のセキュリティを改善する。
【0685】
可能な実装では、プロセッサ1202は、第2のノードが第1のノードと第1のPSKを共有することを決定するようにさらに構成される。
【0686】
別の可能な実装では、プロセッサ1202は、特に、
第2のノードの第2のデバイス識別子を取得し、
第2のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0687】
さらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールドは、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される情報を含む。
【0688】
さらに別の可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0689】
IOCフィールド中のビットの別の部分は、第1のノードの出力能力を示すために利用される。
【0690】
さらに別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0691】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0692】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第2のノードから第2の認証パラメータを受信し、
第1のPSKに基づいて第2の認証パラメータを検証する
ようにさらに構成される。
【0693】
さらに別の可能な実装では、プロセッサ1202は、
第1のPSKに基づいて第1の認証パラメータを生成し、
通信インターフェース1204を通して第2のノードに第1の認証パラメータを送信する
ようにさらに構成される。
【0694】
さらに別の可能な実装では、ペアリング応答メッセージは、第2のノードのPSK能力値を含み、第2のノードのPSK能力値は、第2のノードがPSKペアリング能力を有することを示すために利用される。プロセッサ1202は、
通信インターフェース1204を通して第2のノードから第4の認証パラメータを受信することと、
第2のノードのPSK能力値に基づいて第3のチェックパラメータを生成することと、
第3のチェックパラメータと第4の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定し、
第1のノードのPSK能力値に基づいて第3の認証パラメータを生成し、
通信インターフェース1204を通して第2のノードに第3の認証パラメータを送信する
ようにさらに構成される。
【0695】
各モジュールの実装については、図2図8図9A及び図9B、又は図10A及び図10Bに示されている実施形態における対応する説明を参照されたいことに留意されたい。
【0696】
いくつかの可能な実装では、Bluetoothペアリング装置120は、図7に示されている実施形態における第2のノードでありうる。装置120中のプロセッサ1202は、
通信インターフェース1204を通して第1のノードからペアリング要求メッセージを受信することであって、ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含み、第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む、ことと、
第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することであって、第2のノードのペアリング能力は、第2のノードが第2のノードのPSKペアリング能力と入出力能力とを有するかどうかを含み、ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む、ことと、
通信インターフェース1204を通して第1のノードにペアリング応答メッセージを送信することであって、ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含む、ことと、
ペアリングモードに基づいて第1のノードとのペアリングを実施することと
の動作を実施するためにメモリ1201中に記憶されたコンピュータプログラムを読み取るように構成される。
【0697】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、装置120は、要件に基づいて及び第1のノードが第1のノードのPSKペアリング能力と入出力能力とを有するかどうかに基づいて対応するペアリングモードを決定しうることを理解することができる。例えば、装置120は、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、第2のノードの要件を満たすペアリングモードを決定しうる。
【0698】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0699】
可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0700】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0701】
別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0702】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0703】
さらに別の可能な実装では、プロセッサ1202は、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する
ように構成される。
【0704】
さらに別の可能な実装では、プロセッサ1202は、特に、
第1のノードの第1のデバイス識別子を取得し、
第1のデバイス識別子に対応する第1のPSKが存在することを決定する
ように構成される。
【0705】
さらに別の可能な実装では、プロセッサ1202は、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0706】
さらに別の可能な実装では、プロセッサ1202は、特に、
第1のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0707】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第1のノードから第1の認証パラメータを受信し、
第1のPSKに基づいて第1の認証パラメータを検証する
ようにさらに構成される。
【0708】
さらに別の可能な実装では、プロセッサ1202は、
第1のPSKに基づいて第2の認証パラメータを生成し、
通信インターフェース1204を通して第1のノードに第2の認証パラメータを送信する
ようにさらに構成される。
【0709】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して、第1のノードによって送られた第1のフレッシュネスパラメータを受信し、
第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2の認証パラメータを生成することであって、第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである、ことを行う
ようにさらに構成される。
【0710】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第1のノードに第2のフレッシュネスパラメータを送信し、
第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第2のチェックパラメータを生成し、
第2のチェックパラメータと第1の認証パラメータとに基づいて、第1の認証パラメータが正常に検証されたと決定する
ようにさらに構成される。
【0711】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第1のノードから第3の認証パラメータを受信し、
第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成し、
第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定し、
第2のノードのPSK能力値に基づいて第4の認証パラメータを生成し、
通信インターフェース1204を通して第1のノードに第4の認証パラメータを送信する
ようにさらに構成される。
【0712】
各モジュールの実装については、図7に示されている実施形態の対応する説明を参照されたいことに留意されたい。
【0713】
いくつかの可能な実装では、Bluetoothペアリング装置120は、図7に示されている実施形態における第1のノードでありうる。装置120中のプロセッサ1202は、
通信インターフェース1204を通して第2のノードにペアリング要求メッセージを送信することであって、ペアリング要求メッセージは、第1のノードのペアリング能力を示すために利用される情報を含み、第1のノードのペアリング能力は、第1のノードが第1のノードの事前共有鍵PSKペアリング能力と入出力能力とを有するかどうかを含む、ことと、
通信インターフェース1204を通して第2のノードからペアリング応答メッセージを受信することであって、ペアリング応答メッセージは、第2のノードのペアリング能力を示すために利用される情報を含み、第2のノードのペアリング能力は、第2のノードが第2のノードのPSKペアリング能力と入出力能力とを有するかどうかを含む、ことと、
第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいてペアリングモードを決定することであって、ペアリングモードは、PSKベースのペアリング、数値比較NC、ジャストワークJW、又はパスキー入力PEを含む、ことと、
ペアリングモードに基づいて第2のノードとのペアリングを実施することと
の動作を実施するためにメモリ1201中に記憶されたコンピュータプログラムを読み取るように構成される。
【0714】
ペアリング要求メッセージは、第1のノードのペアリング能力に関する情報を含み、ペアリング応答メッセージは、第2のノードのペアリング能力に関する情報を含むことを理解することができる。装置120は、要件に基づいて、及び第1のノードのペアリング能力に関する情報と第2のノードのペアリング能力に関する情報とに基づいて対応するペアリングモードを決定しうる。例えば、装置120は、PSKベースのペアリングを優先的に選択すること又は各モードの優先度に基づいてペアリングモードを選択することなどの方法を利用することによって、要件を満たすペアリングモードを決定しうる。
【0715】
特に、入出力不可(NoInputNoOutput)Bluetoothノード、表示のみ(DisplayOnly)Bluetoothノード、又は表示可否(DisplayYesNo)Bluetoothノードの場合、PSKベースのペアリングが優先的に選択され、従って、信用できないノードとのペアリングが回避されることができ、ノードの通信セキュリティが改善される。
【0716】
可能な実装では、ペアリング要求メッセージは、入出力能力IOCフィールドを含み、IOCフィールド中のビットの1つの部分は、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0717】
IOCフィールド中のビットの別の部分は、第1のノードの入出力能力を示すために利用される。
【0718】
別の可能な実装では、ペアリング要求メッセージは、PSK能力フィールドを含み、PSK能力フィールドは、第1のノードのPSK能力値を含み、第1のノードのPSK能力値は、第1のノードがPSKペアリング能力を有するかどうかを示すために利用される。
【0719】
ペアリング要求メッセージは、入出力能力IOCフィールドをさらに含み、IOCフィールドは、第1のノードの入出力能力を示すために利用される。
【0720】
さらに別の可能な実装では、プロセッサ1202は、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第1のノードと第2のノードとによって共有される第1のPSKを利用することによってペアリングを実施する
ようにさらに構成される。
【0721】
さらに別の可能な実装では、プロセッサ1202は、
第2のノードの第2のデバイス識別子を取得し、
第2のデバイス識別子に対応する第1のPSKが存在することを決定する
ようにさらに構成される。
【0722】
さらに別の可能な実装では、プロセッサ1202は、特に、
第2のノードのペアリング能力に関する情報に基づいて、第2のノードがPSKペアリング能力を有しないことを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいてペアリングモードを決定することであって、ペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行う
ように構成される。
【0723】
さらに別の可能な実装では、プロセッサ1202は、特に、
第2のノードのペアリング能力に関する情報に基づいて、第1のノードがPSKペアリング能力を有することを決定し、
第2のノードが第1のノードと第1のPSKを共有することを決定し、
第1のノードの入出力能力と第2のノードの入出力能力とに基づいて第1のペアリングモードを決定することであって、第1のペアリングモードは、数値比較NC、ジャストワークJW、又はパスキー入力PEである、ことを行い、
第1のペアリングモードの優先度とPSKベースのペアリングの優先度とに基づいてペアリングモードを決定する
ように構成される。
【0724】
さらに別の可能な実装では、プロセッサ1202は、特に、
通信インターフェース1204を通して第2のノードから第2の認証パラメータを受信し、
第1のPSKに基づいて第2の認証パラメータを検証する
ように構成される。
【0725】
さらに別の可能な実装では、プロセッサ1202は、特に、
第1のPSKに基づいて第1の認証パラメータを生成し、
通信インターフェース1204を通して第2のノードに第1の認証パラメータを送信する
ように構成される。
【0726】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して、第2のノードによって送られた第2のフレッシュネスパラメータを受信し、
第2のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1の認証パラメータを生成することであって、第1の公開鍵と第2の公開鍵とは、第1のノードと第2のノードとの間の共有鍵を生成するためのパラメータである、ことを行う
ようにさらに構成される。
【0727】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第2のノードに第1のフレッシュネスパラメータを送信し、
第1のフレッシュネスパラメータと、第1の公開鍵と、第2の公開鍵と、第1のPSKとに基づいて第1のチェックパラメータを生成し、
第1のチェックパラメータと第2の認証パラメータとに基づいて、第2の認証パラメータが正常に検証されたと決定する
ようにさらに構成される。
【0728】
さらに別の可能な実装では、プロセッサ1202は、
通信インターフェース1204を通して第1のノードから第3の認証パラメータを受信し、
第1のノードのPSK能力値に基づいて第4のチェックパラメータを生成し、
第4のチェックパラメータと第3の認証パラメータとに基づいて、第1のノードのPSK能力値に対する正当性認証が成功することを決定し、
第2のノードのPSK能力値に基づいて第4の認証パラメータを生成し、
通信インターフェース1204を通して第1のノードに第4の認証パラメータを送信する
ようにさらに構成される。
【0729】
各モジュールの実装については、図7に示されている実施形態の対応する説明を参照されたいことに留意されたい。
【0730】
本出願の実施形態は、コンピュータ可読記憶媒体をさらに提供する。コンピュータ可読記憶媒体は、コンピュータプログラムを記憶する。コンピュータプログラムが1つ又は複数のプロセッサ上で実行されるとき、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態における方法が実施される。
【0731】
本出願の実施形態は、チップシステムをさらに提供する。チップシステムは、少なくとも1つのプロセッサと、メモリと、インターフェース回路とを含む。インターフェース回路は、少なくとも1つのプロセッサに情報入出力を与えるように構成され、少なくとも1つのメモリは、コンピュータプログラムを記憶し、コンピュータプログラムが1つ又は複数のプロセッサ上で実行されるとき、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態における方法が実施される。
【0732】
本出願の実施形態は、インテリジェントコックピット製品をさらに提供する。インテリジェントコックピット製品は、第1のノード(例えば、自動車のコックピットドメインコントローラCDC)を含む。第1のノードは、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態における第1のノードである。さらに、インテリジェントコックピット製品は、第2のノード(例えば、カメラ、画面、マイクロフォン、スピーカ、レーダー、電子鍵、及びパッシブエントリパッシブスタートシステムコントローラなどのモジュールのうちの少なくとも1つ)を含む。第2のノードは、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態における第2のノードである。
【0733】
本出願の実施形態は、ビークルをさらに提供する。ビークルは、第1のノード(例えば、自動車のコックピットドメインコントローラCDC)を含む。さらに、ビークルは、第2のノード(例えば、カメラ、画面、マイクロフォン、スピーカ、レーダー、電子鍵、及びパッシブエントリパッシブスタートシステムコントローラなどのモジュールのうちの少なくとも1つ)をさらに含む。第1のノードは、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態における第1のノードであり、第2のノードは、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態における第2のノードである。
【0734】
本出願の実施形態は、コンピュータプログラム製品をさらに提供する。コンピュータプログラム製品が1つ又は複数のプロセッサ上で実行されるとき、図2図7図8図9A及び図9B、又は図10A及び図10Bに示されている任意の実施形態において説明されたBluetoothペアリング方法が実施されうる。代替として、ビークルは、インテリジェント端末又は無人航空ビークル若しくはロボットなどの交通ビークルと置き換えられうる。
【0735】
上記の実施形態の全部又は一部は、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組合せを利用することによって実装されうる。ソフトウェアが実施形態を実装するために利用されるとき、実施形態の全部又は一部はコンピュータ命令製品の形態で実装されうる。コンピュータ命令がコンピュータ上にロードされ、実行されるとき、本出願の実施形態による手順又は機能が全て又は部分的に実装される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又は別のプログラマブル装置でありうる。コンピュータ命令は、コンピュータ可読記憶媒体中に記憶されうるか、又はコンピュータ可読記憶媒体を利用することによって送信されうる。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の利用可能な媒体又は1つ若しくは複数の利用可能な媒体を統合するサーバ又はデータセンターなどのデータストレージデバイスでありうる。利用可能な媒体は、磁気媒体(例えば、フロッピーディスク、ハードディスクドライブ、又は磁気テープ)、光媒体(例えば、DVD)、半導体媒体(例えば、ソリッドステートディスク(solid state disk,SSD))などでありうる。
【0736】
シーケンスの調整、組合せ、又は削除は、実際の要件に基づいて本出願の方法実施形態におけるステップに対して実施されうる。
【0737】
本出願の装置実施形態におけるモジュールは、実際の要件に基づいて組み合わされるか、分割されるか、又は、削除されうる。
図1
図2
図3
図4
図5
図6
図7
図8
図9A
図9B
図10A
図10B
図11
図12